v1alpha1ApplicationSetGenerator
objectApplicationSetGenerator represents a generator at the top level of an ApplicationSet.
clusterDecisionResourcev1alpha1DuckTypeGeneratorDuckType defines a generator to match against clusters registered with ArgoCD.
Show child attributes
configMapRefstringlabelSelectorv1LabelSelectorSame fields as selector
namestringrequeueAfterSecondsinteger<int64>templatev1alpha1ApplicationSetTemplateShow child attributes
Show child attributes
annotationsobjectShow child attributes
[key: string]stringfinalizersArray<string>labelsobjectShow child attributes
[key: string]stringnamestringnamespacestringApplicationSpec represents desired application state. Contains link to repository with application definition and additional parameters link definition revision.
Show child attributes
destinationv1alpha1ApplicationDestinationShow child attributes
namestringName is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set.
namespacestringserverstringServer specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set.
ignoreDifferencesArray<v1alpha1ResourceIgnoreDifferences>Show child attributes
ResourceIgnoreDifferences contains resource filter and list of json paths which should be ignored during comparison with live state.
groupstringjqPathExpressionsArray<string>jsonPointersArray<string>kindstringmanagedFieldsManagersArray<string>namestringnamespacestringShow child attributes
namestringvaluestringprojectstringProject is a reference to the project this application belongs to. The empty string means that application belongs to the 'default' project.
revisionHistoryLimitinteger<int64>RevisionHistoryLimit limits the number of items kept in the application's revision history, which is used for informational purposes as well as for rollbacks to previous versions. This should only be changed in exceptional circumstances. Setting to zero will store no history. This will reduce storage used. Increasing will increase the space used to store the history, so we do not recommend increasing it. Default is 10.
Show child attributes
chartstringChart is a Helm chart name, and must be specified for applications sourced from a Helm repo.
directoryv1alpha1ApplicationSourceDirectoryShow child attributes
disableExtensionFilterbooleanDisableExtensionFilter controls whether the built-in file-extension filter is skipped during manifest generation. When false (the default), only files with a .yaml, .yml, .json, or .jsonnet extension are considered as potential manifests. Set it to true to disable the filter so that files with custom extensions (e.g. *.yaml.sealed) can be matched by the include/exclude glob patterns instead.
excludestringincludestringShow child attributes
extVarsArray<v1alpha1JsonnetVar>Show child attributes
codebooleannamestringvaluestringlibsArray<string>recursebooleanShow child attributes
apiVersionsArray<string>APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, Argo CD uses the API versions of the target cluster. The format is [group/]version/kind.
fileParametersArray<v1alpha1HelmFileParameter>Show child attributes
namestringpathstringignoreMissingValueFilesbooleankubeVersionstringKubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD uses the Kubernetes version of the target cluster.
namespacestringNamespace is an optional namespace to template with. If left empty, defaults to the app's destination namespace.
parametersArray<v1alpha1HelmParameter>Show child attributes
forceStringbooleannamestringvaluestringpassCredentialsbooleanreleaseNamestringskipCrdsbooleanskipSchemaValidationbooleanskipTestsbooleanSkipTests skips test manifest installation step (Helm's --skip-tests).
valueFilesArray<string>valuesstringvaluesObjectruntimeRawExtensionRawExtension is used to hold extensions in external versions.
To use this, make a field which has RawExtension as its type in your external, versioned struct, and Object in your internal struct. You also need to register your various plugin types.
// Internal package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.Object `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// External package:
type MyAPIObject struct {
runtime.TypeMeta `json:""`
MyPlugin runtime.RawExtension `json:"myPlugin"`
}
type PluginA struct {
AOption string `json:"aOption"`
}// On the wire, the JSON will look something like this:
{
"kind":"MyAPIObject",
"apiVersion":"v1",
"myPlugin": {
"kind":"PluginA",
"aOption":"foo",
},
}So what happens? Decode first uses json or yaml to unmarshal the serialized data into your external MyAPIObject. That causes the raw JSON to be stored, but not unpacked. The next step is to copy (using pkg/conversion) into the internal struct. The runtime package's DefaultScheme has conversion functions installed which will unpack the JSON stored in RawExtension, turning it into the correct object type, and storing it in the Object. (TODO: In the case where the object is of an unknown type, a runtime.Unknown object will be created and stored.)
+k8s:deepcopy-gen=true +protobuf=true +k8s:openapi-gen=true
Show child attributes
rawstring<byte>Raw is the underlying serialization of this object.
TODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.
versionstringkustomizev1alpha1ApplicationSourceKustomizeShow child attributes
apiVersionsArray<string>APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, Argo CD uses the API versions of the target cluster. The format is [group/]version/kind.
commonAnnotationsobjectShow child attributes
[key: string]stringcommonAnnotationsEnvsubstbooleancommonLabelsobjectShow child attributes
[key: string]stringcomponentsArray<string>forceCommonAnnotationsbooleanforceCommonLabelsbooleanignoreMissingComponentsbooleanimagesArray<string>kubeVersionstringKubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD uses the Kubernetes version of the target cluster.
labelIncludeTemplatesbooleanlabelWithoutSelectorbooleannamePrefixstringnameSuffixstringnamespacestringShow child attributes
optionsobjectShow child attributes
[key: string]booleanpatchstringpathstringShow child attributes
annotationSelectorstringlabelSelectorstringShow child attributes
Show child attributes
groupstringkindstringversionstringnamestringnamespacestringreplicasArray<v1alpha1KustomizeReplica>Show child attributes
countintstrIntOrString+protobuf=true +protobuf.options.(gogoproto.goproto_stringer)=false +k8s:openapi-gen=true +k8s:openapi-model-package=io.k8s.apimachinery.pkg.util.intstr
Show child attributes
intValinteger<int32>strValstringtypeinteger<int64>namestringversionstringnamestringName is used to refer to a source and is displayed in the UI. It is used in multi-source Applications.
pathstringPath is a directory path within the Git repository, and is only valid for applications sourced from Git.
Show child attributes
Show child attributes
namestringvaluestringnamestringShow child attributes
arrayArray<string>Array is the value of an array type parameter.
mapobjectMap is the value of a map type parameter.
Show child attributes
[key: string]stringnamestringName is the name identifying a parameter.
stringstringString_ is the value of a string type parameter.
refstringRef is reference to another source within sources field. This field will not be used if used with a source tag.
repoURLstringtagPrefixstringTagPrefix filters git tags to only those with this prefix before evaluating targetRevision as a semver constraint. The prefix is stripped from tag names before comparison and re-added to the resolved version. For example, with tagPrefix "component-b/" and targetRevision "1.0.*", tags like "component-b/1.0.0" and "component-b/1.0.1" are candidates, and the constraint resolves to "component-b/1.0.1".
targetRevisionstringTargetRevision defines the revision of the source to sync the application to. In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. In case of Helm, this is a semver tag for the Chart's version.
sourceHydratorv1alpha1SourceHydratorSourceHydrator specifies a dry "don't repeat yourself" source for manifests, a sync source from which to sync hydrated manifests, and an optional hydrateTo location to act as a "staging" aread for hydrated manifests.
Show child attributes
drySourcev1alpha1DrySourceDrySource specifies a location for dry "don't repeat yourself" manifest source information.
Show child attributes
directoryv1alpha1ApplicationSourceDirectorySame fields as clusterDecisionResource.template.spec.source.directory
kustomizev1alpha1ApplicationSourceKustomizeSame fields as clusterDecisionResource.template.spec.source.kustomize
pathstringSame fields as clusterDecisionResource.template.spec.source.plugin
repoURLstringtargetRevisionstringhydrateTov1alpha1HydrateToHydrateTo specifies a branch to which hydrated manifests should be pushed as a "staging area" before being moved to the SyncSource. The repository and path are inherited from SyncSource.
Show child attributes
targetBranchstringsyncSourcev1alpha1SyncSourceSyncSource specifies a location from which hydrated manifests may be synced. If RepoURL is not set, it is assumed to be the same as the associated DrySource config in the SourceHydrator.
Show child attributes
pathstringPath is a directory path within the git repository where hydrated manifests should be committed to and synced from. The Path should never point to the root of the repo. If hydrateTo is set, this is just the path from which hydrated manifests will be synced.
+kubebuilder:validation:Required
+kubebuilder:validation:MinLength=1
+kubebuilder:validation:Pattern=^.{2,}|[^./]$
repoURLstringRepoURL is the URL to the git repository that contains the hydrated manifests. If not set, defaults to the DrySource.RepoURL.
targetBranchstringTargetBranch is the branch from which hydrated manifests will be synced. If HydrateTo is not set, this is also the branch to which hydrated manifests are committed.
Same fields as clusterDecisionResource.template.spec.source
syncPolicyv1alpha1SyncPolicyShow child attributes
automatedv1alpha1SyncPolicyAutomatedShow child attributes
allowEmptybooleanenabledbooleanprunebooleanselfHealbooleanmanagedNamespaceMetadatav1alpha1ManagedNamespaceMetadataShow child attributes
annotationsobjectShow child attributes
[key: string]stringlabelsobjectShow child attributes
[key: string]stringShow child attributes
backoffv1alpha1BackoffShow child attributes
durationstringfactorinteger<int64>maxDurationstringlimitinteger<int64>Limit is the maximum number of attempts for retrying a failed sync. If set to 0, no retries will be performed.
refreshbooleansyncOptionsArray<string>valuesobjectShow child attributes
[key: string]stringclustersv1alpha1ClusterGeneratorClusterGenerator defines a generator to match against clusters registered with ArgoCD.
Show child attributes
flatListbooleanselectorv1LabelSelectorSame fields as selector
templatev1alpha1ApplicationSetTemplateSame fields as clusterDecisionResource.template
valuesobjectShow child attributes
[key: string]stringShow child attributes
directoriesArray<v1alpha1GitDirectoryGeneratorItem>Show child attributes
excludebooleanpathstringShow child attributes
excludebooleanpathstringpathParamPrefixstringrepoURLstringrequeueAfterSecondsinteger<int64>revisionstringtemplatev1alpha1ApplicationSetTemplateSame fields as clusterDecisionResource.template
valuesobjectShow child attributes
[key: string]stringShow child attributes
elementsArray<v1JSON>Show child attributes
JSON represents any valid JSON value. These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil.
rawstring<byte>elementsYamlstringtemplatev1alpha1ApplicationSetTemplateSame fields as clusterDecisionResource.template
matrixv1alpha1MatrixGeneratorMatrixGenerator generates the cartesian product of two sets of parameters. The parameters are defined by two nested generators.
Show child attributes
Show child attributes
ApplicationSetNestedGenerator represents a generator nested within a combination-type generator (MatrixGenerator or MergeGenerator).
clusterDecisionResourcev1alpha1DuckTypeGeneratorDuckType defines a generator to match against clusters registered with ArgoCD.
Same fields as clusterDecisionResource
clustersv1alpha1ClusterGeneratorClusterGenerator defines a generator to match against clusters registered with ArgoCD.
Same fields as clusters
Same fields as git
Same fields as list
matrixv1JSONJSON represents any valid JSON value. These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil.
Same fields as list.elements
mergev1JSONJSON represents any valid JSON value. These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil.
Same fields as list.elements
Same fields as oci
pluginv1alpha1PluginGeneratorPluginGenerator defines connection info specific to Plugin.
Same fields as plugin
pullRequestv1alpha1PullRequestGeneratorPullRequestGenerator defines a generator that scrapes a PullRequest API to find candidate pull requests.
Same fields as pullRequest
scmProviderv1alpha1SCMProviderGeneratorSCMProviderGenerator defines a generator that scrapes a SCMaaS API to find candidate repos.
Same fields as scmProvider
selectorv1LabelSelectorSame fields as selector
templatev1alpha1ApplicationSetTemplateSame fields as clusterDecisionResource.template
MergeGenerator merges the output of two or more generators. Where the values for all specified merge keys are equal between two sets of generated parameters, the parameter sets will be merged with the parameters from the latter generator taking precedence. Parameter sets with merge keys not present in the base generator's params will be ignored. For example, if the first generator produced [{a: '1', b: '2'}, {c: '1', d: '1'}] and the second generator produced [{'a': 'override'}], the united parameters for merge keys = ['a'] would be [{a: 'override', b: '1'}, {c: '1', d: '1'}].
MergeGenerator supports template overriding. If a MergeGenerator is one of multiple top-level generators, its template will be merged with the top-level generator before the parameters are applied.
Show child attributes
Same fields as matrix.generators
mergeKeysArray<string>templatev1alpha1ApplicationSetTemplateSame fields as clusterDecisionResource.template
Show child attributes
directoriesArray<v1alpha1OciDirectoryGeneratorItem>Show child attributes
excludebooleanpathstringShow child attributes
excludebooleanpathstringpathParamPrefixstringrepoURLstringrequeueAfterSecondsinteger<int64>revisionstringtemplatev1alpha1ApplicationSetTemplateSame fields as clusterDecisionResource.template
valuesobjectShow child attributes
[key: string]stringpluginv1alpha1PluginGeneratorPluginGenerator defines connection info specific to Plugin.
Show child attributes
configMapRefv1alpha1PluginConfigMapRefShow child attributes
namestringinputv1alpha1PluginInputShow child attributes
parametersobjectParameters contains the information to pass to the plugin. It is a map. The keys must be strings, and the values can be any type.
Show child attributes
[key: string]v1JSONJSON represents any valid JSON value. These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil.
Same fields as list.elements
requeueAfterSecondsinteger<int64>RequeueAfterSeconds determines how long the ApplicationSet controller will wait before reconciling the ApplicationSet again.
templatev1alpha1ApplicationSetTemplateSame fields as clusterDecisionResource.template
valuesobjectValues contains key/value pairs which are passed directly as parameters to the template. These values will not be sent as parameters to the plugin.
Show child attributes
[key: string]stringpullRequestv1alpha1PullRequestGeneratorPullRequestGenerator defines a generator that scrapes a PullRequest API to find candidate pull requests.
Show child attributes
azuredevopsv1alpha1PullRequestGeneratorAzureDevOpsPullRequestGeneratorAzureDevOps defines connection info specific to AzureDevOps.
Show child attributes
apistringThe Azure DevOps API URL to talk to. If blank, use https://dev.azure.com/.
labelsArray<string>organizationstringAzure DevOps org to scan. Required.
projectstringAzure DevOps project name to scan. Required.
repostringAzure DevOps repo name to scan. Required.
tokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Show child attributes
keystringsecretNamestringPullRequestGeneratorBitbucket defines connection info specific to Bitbucket.
Show child attributes
apistringThe Bitbucket REST API URL to talk to. If blank, uses https://api.bitbucket.org/2.0.
basicAuthv1alpha1BasicAuthBitbucketServerBasicAuthBitbucketServer defines the username/(password or personal access token) for Basic auth.
Show child attributes
passwordRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
usernamestringbearerTokenv1alpha1BearerTokenBitbucketCloudBearerTokenBitbucketCloud defines the Bearer token for BitBucket AppToken auth.
Show child attributes
tokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
ownerstringWorkspace to scan. Required.
repostringRepo name to scan. Required.
bitbucketServerv1alpha1PullRequestGeneratorBitbucketServerPullRequestGeneratorBitbucketServer defines connection info specific to BitbucketServer.
Show child attributes
apistringThe Bitbucket REST API URL to talk to e.g. https://bitbucket.org/rest Required.
basicAuthv1alpha1BasicAuthBitbucketServerBasicAuthBitbucketServer defines the username/(password or personal access token) for Basic auth.
Same fields as pullRequest.bitbucket.basicAuth
bearerTokenv1alpha1BearerTokenBitbucketBearerTokenBitbucket defines the Bearer token for BitBucket AppToken auth.
Show child attributes
tokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
ConfigMapKeyRef struct for a reference to a configmap key.
Show child attributes
configMapNamestringkeystringinsecurebooleanprojectstringProject to scan. Required.
repostringRepo name to scan. Required.
continueOnRepoNotFoundErrorbooleanContinueOnRepoNotFoundError is a flag to continue the ApplicationSet Pull Request generator parameters generation even if the repository is not found.
Filters for which pull requests should be considered.
Show child attributes
PullRequestGeneratorFilter is a single pull request filter. If multiple filter types are set on a single struct, they will be AND'd together. All filters must pass for a pull request to be included.
branchMatchstringtargetBranchMatchstringtitleMatchstringPullRequestGeneratorGitea defines connection info specific to Gitea.
Show child attributes
apistringinsecurebooleanAllow insecure tls, for self-signed certificates; default: false.
labelsArray<string>ownerstringGitea org or user to scan. Required.
repostringGitea repo name to scan. Required.
tokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
PullRequestGeneratorGithub defines connection info specific to GitHub.
Show child attributes
apistringThe GitHub API URL to talk to. If blank, use https://api.github.com/.
appSecretNamestringAppSecretName is a reference to a GitHub App repo-creds secret with permission to access pull requests.
labelsArray<string>ownerstringGitHub org or user to scan. Required.
repostringGitHub repo name to scan. Required.
tokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
PullRequestGeneratorGitLab defines connection info specific to GitLab.
Show child attributes
apistringThe GitLab API URL to talk to. If blank, uses https://gitlab.com/.
ConfigMapKeyRef struct for a reference to a configmap key.
Same fields as pullRequest.bitbucketServer.caRef
insecurebooleanlabelsArray<string>projectstringGitLab project to scan. Required.
pullRequestStatestringPullRequestState is an additional MRs filter to get only those with a certain state. Default: "" (all states). Valid values: opened, closed, merged, locked".
tokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
requeueAfterSecondsinteger<int64>Standard parameters.
templatev1alpha1ApplicationSetTemplateSame fields as clusterDecisionResource.template
valuesobjectShow child attributes
[key: string]stringscmProviderv1alpha1SCMProviderGeneratorSCMProviderGenerator defines a generator that scrapes a SCMaaS API to find candidate repos.
Show child attributes
awsCodeCommitv1alpha1SCMProviderGeneratorAWSCodeCommitSCMProviderGeneratorAWSCodeCommit defines connection info specific to AWS CodeCommit.
Show child attributes
allBranchesbooleanScan all branches instead of just the default branch.
regionstringRegion provides the AWS region to discover repos. if not provided, AppSet controller will infer the current region from environment.
rolestringRole provides the AWS IAM role to assume, for cross-account repo discovery if not provided, AppSet controller will use its pod/node identity to discover.
tagFiltersArray<v1alpha1TagFilter>Show child attributes
keystringvaluestringazureDevOpsv1alpha1SCMProviderGeneratorAzureDevOpsSCMProviderGeneratorAzureDevOps defines connection info specific to Azure DevOps.
Show child attributes
accessTokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
allBranchesbooleanScan all branches instead of just the default branch.
apistringThe URL to Azure DevOps. If blank, use https://dev.azure.com.
organizationstringAzure Devops organization. Required. E.g. "my-organization".
teamProjectstringAzure Devops team project. Required. E.g. "my-team".
SCMProviderGeneratorBitbucket defines connection info specific to Bitbucket Cloud (API version 2).
Show child attributes
allBranchesbooleanScan all branches instead of just the main branch.
appPasswordRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
ownerstringBitbucket workspace to scan. Required.
userstringbitbucketServerv1alpha1SCMProviderGeneratorBitbucketServerSCMProviderGeneratorBitbucketServer defines connection info specific to Bitbucket Server.
Show child attributes
allBranchesbooleanScan all branches instead of just the default branch.
apistringThe Bitbucket Server REST API URL to talk to. Required.
basicAuthv1alpha1BasicAuthBitbucketServerBasicAuthBitbucketServer defines the username/(password or personal access token) for Basic auth.
Same fields as pullRequest.bitbucket.basicAuth
bearerTokenv1alpha1BearerTokenBitbucketBearerTokenBitbucket defines the Bearer token for BitBucket AppToken auth.
Same fields as pullRequest.bitbucketServer.bearerToken
ConfigMapKeyRef struct for a reference to a configmap key.
Same fields as pullRequest.bitbucketServer.caRef
insecurebooleanprojectstringProject to scan. Required.
cloneProtocolstringWhich protocol to use for the SCM URL. Default is provider-specific but ssh if possible. Not all providers necessarily support all protocols.
Filters for which repos should be considered.
Show child attributes
SCMProviderGeneratorFilter is a single repository filter. If multiple filter types are set on a single struct, they will be AND'd together. All filters must pass for a repo to be included.
branchMatchstringA regex which must match the branch name.
labelMatchstringA regex which must match at least one label.
pathsDoNotExistArray<string>An array of paths, all of which must not exist.
pathsExistArray<string>An array of paths, all of which must exist.
repositoryMatchstringA regex for repo names.
SCMProviderGeneratorGitea defines a connection info specific to Gitea.
Show child attributes
allBranchesbooleanScan all branches instead of just the default branch.
apistringThe Gitea URL to talk to. For example https://gitea.mydomain.com/.
excludeArchivedReposbooleanExclude repositories that are archived.
insecurebooleanownerstringGitea organization or user to scan. Required.
tokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
SCMProviderGeneratorGithub defines connection info specific to GitHub.
Show child attributes
allBranchesbooleanScan all branches instead of just the default branch.
apistringThe GitHub API URL to talk to. If blank, use https://api.github.com/.
appSecretNamestringAppSecretName is a reference to a GitHub App repo-creds secret.
excludeArchivedReposbooleanExclude repositories that are archived.
organizationstringGitHub org to scan. Required.
tokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
SCMProviderGeneratorGitlab defines connection info specific to Gitlab.
Show child attributes
allBranchesbooleanScan all branches instead of just the default branch.
apistringThe Gitlab API URL to talk to.
ConfigMapKeyRef struct for a reference to a configmap key.
Same fields as pullRequest.bitbucketServer.caRef
groupstringGitlab group to scan. Required. You can use either the project id (recommended) or the full namespaced path.
includeArchivedReposbooleanInclude repositories that are archived.
includeSharedProjectsbooleanincludeSubgroupsbooleaninsecurebooleantokenRefv1alpha1SecretRefSecretRef struct for a reference to a secret key.
Same fields as pullRequest.azuredevops.tokenRef
topicstringFilter repos list based on Gitlab Topic.
requeueAfterSecondsinteger<int64>Standard parameters.
templatev1alpha1ApplicationSetTemplateSame fields as clusterDecisionResource.template
valuesobjectShow child attributes
[key: string]stringselectorv1LabelSelectorShow child attributes
matchExpressionsArray<v1LabelSelectorRequirement>Show child attributes
A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
keystringkey is the label key that the selector applies to.
operatorstringoperator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
valuesArray<string>matchLabelsobjectShow child attributes
[key: string]string