Models

v1alpha1ApplicationSetGenerator

object

ApplicationSetGenerator represents a generator at the top level of an ApplicationSet.

clusterDecisionResourcev1alpha1DuckTypeGenerator

DuckType defines a generator to match against clusters registered with ArgoCD.

Show child attributes
configMapRefstring
labelSelectorv1LabelSelector

Same fields as selector

namestring
requeueAfterSecondsinteger<int64>
Show child attributes
Show child attributes
annotationsobject
Show child attributes
[key: string]string
finalizersArray<string>
labelsobject
Show child attributes
[key: string]string
namestring
namespacestring

ApplicationSpec represents desired application state. Contains link to repository with application definition and additional parameters link definition revision.

Show child attributes
Show child attributes
namestring

Name is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set.

namespacestring
serverstring

Server specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set.

Show child attributes

ResourceIgnoreDifferences contains resource filter and list of json paths which should be ignored during comparison with live state.

groupstring
jqPathExpressionsArray<string>
jsonPointersArray<string>
kindstring
managedFieldsManagersArray<string>
namestring
namespacestring
Show child attributes
namestring
valuestring
projectstring

Project 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
chartstring

Chart is a Helm chart name, and must be specified for applications sourced from a Helm repo.

Show child attributes
disableExtensionFilterboolean

DisableExtensionFilter 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.

excludestring
includestring
Show child attributes
Show child attributes
codeboolean
namestring
valuestring
libsArray<string>
recurseboolean
Show 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.

Show child attributes
namestring
pathstring
ignoreMissingValueFilesboolean
kubeVersionstring

KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD uses the Kubernetes version of the target cluster.

namespacestring

Namespace is an optional namespace to template with. If left empty, defaults to the app's destination namespace.

Show child attributes
forceStringboolean
namestring
valuestring
passCredentialsboolean
releaseNamestring
skipCrdsboolean
skipSchemaValidationboolean
skipTestsboolean

SkipTests skips test manifest installation step (Helm's --skip-tests).

valueFilesArray<string>
valuesstring

RawExtension 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.

versionstring
Show 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.

commonAnnotationsobject
Show child attributes
[key: string]string
commonAnnotationsEnvsubstboolean
commonLabelsobject
Show child attributes
[key: string]string
componentsArray<string>
forceCommonAnnotationsboolean
forceCommonLabelsboolean
ignoreMissingComponentsboolean
imagesArray<string>
kubeVersionstring

KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD uses the Kubernetes version of the target cluster.

labelIncludeTemplatesboolean
labelWithoutSelectorboolean
namePrefixstring
nameSuffixstring
namespacestring
Show child attributes
optionsobject
Show child attributes
[key: string]boolean
patchstring
pathstring
Show child attributes
annotationSelectorstring
labelSelectorstring
Show child attributes
Show child attributes
groupstring
kindstring
versionstring
namestring
namespacestring
Show child attributes

+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>
strValstring
typeinteger<int64>
namestring
versionstring
namestring

Name is used to refer to a source and is displayed in the UI. It is used in multi-source Applications.

pathstring

Path is a directory path within the Git repository, and is only valid for applications sourced from Git.

Show child attributes
Show child attributes
namestring
valuestring
namestring
Show child attributes
arrayArray<string>

Array is the value of an array type parameter.

mapobject

Map is the value of a map type parameter.

Show child attributes
[key: string]string
namestring

Name is the name identifying a parameter.

stringstring

String_ is the value of a string type parameter.

refstring

Ref is reference to another source within sources field. This field will not be used if used with a source tag.

repoURLstring
tagPrefixstring

TagPrefix 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".

targetRevisionstring

TargetRevision 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.

SourceHydrator 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

DrySource specifies a location for dry "don't repeat yourself" manifest source information.

Show child attributes

HydrateTo 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
targetBranchstring

SyncSource 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
pathstring

Path 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,}|[^./]$

repoURLstring

RepoURL is the URL to the git repository that contains the hydrated manifests. If not set, defaults to the DrySource.RepoURL.

targetBranchstring

TargetBranch 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.

Show child attributes
Show child attributes
allowEmptyboolean
enabledboolean
pruneboolean
selfHealboolean
managedNamespaceMetadatav1alpha1ManagedNamespaceMetadata
Show child attributes
annotationsobject
Show child attributes
[key: string]string
labelsobject
Show child attributes
[key: string]string
Show child attributes
Show child attributes
durationstring
factorinteger<int64>
maxDurationstring
limitinteger<int64>

Limit is the maximum number of attempts for retrying a failed sync. If set to 0, no retries will be performed.

refreshboolean
syncOptionsArray<string>
valuesobject
Show child attributes
[key: string]string

ClusterGenerator defines a generator to match against clusters registered with ArgoCD.

Show child attributes
flatListboolean

Same fields as selector

valuesobject
Show child attributes
[key: string]string
Show child attributes
Show child attributes
excludeboolean
pathstring
Show child attributes
excludeboolean
pathstring
pathParamPrefixstring
repoURLstring
requeueAfterSecondsinteger<int64>
revisionstring
valuesobject
Show child attributes
[key: string]string
Show child attributes
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>
elementsYamlstring

MatrixGenerator 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).

clusterDecisionResourcev1alpha1DuckTypeGenerator

DuckType defines a generator to match against clusters registered with ArgoCD.

Same fields as clusterDecisionResource

ClusterGenerator defines a generator to match against clusters registered with ArgoCD.

Same fields as clusters

Same fields as git

Same fields as list

matrixv1JSON

JSON represents any valid JSON value. These types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil.

Same fields as list.elements

mergev1JSON

JSON 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

PluginGenerator defines connection info specific to Plugin.

Same fields as plugin

PullRequestGenerator defines a generator that scrapes a PullRequest API to find candidate pull requests.

Same fields as pullRequest

SCMProviderGenerator defines a generator that scrapes a SCMaaS API to find candidate repos.

Same fields as scmProvider

Same fields as selector

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
Show child attributes
Show child attributes
excludeboolean
pathstring
Show child attributes
excludeboolean
pathstring
pathParamPrefixstring
repoURLstring
requeueAfterSecondsinteger<int64>
revisionstring
valuesobject
Show child attributes
[key: string]string

PluginGenerator defines connection info specific to Plugin.

Show child attributes
Show child attributes
namestring
Show child attributes
parametersobject

Parameters 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]v1JSON

JSON 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.

valuesobject

Values 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]string

PullRequestGenerator defines a generator that scrapes a PullRequest API to find candidate pull requests.

Show child attributes

PullRequestGeneratorAzureDevOps defines connection info specific to AzureDevOps.

Show child attributes
apistring

The Azure DevOps API URL to talk to. If blank, use https://dev.azure.com/.

labelsArray<string>
organizationstring

Azure DevOps org to scan. Required.

projectstring

Azure DevOps project name to scan. Required.

repostring

Azure DevOps repo name to scan. Required.

SecretRef struct for a reference to a secret key.

Show child attributes
keystring
secretNamestring

PullRequestGeneratorBitbucket defines connection info specific to Bitbucket.

Show child attributes
apistring

The Bitbucket REST API URL to talk to. If blank, uses https://api.bitbucket.org/2.0.

BasicAuthBitbucketServer defines the username/(password or personal access token) for Basic auth.

Show child attributes

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

usernamestring

BearerTokenBitbucketCloud defines the Bearer token for BitBucket AppToken auth.

Show child attributes

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

ownerstring

Workspace to scan. Required.

repostring

Repo name to scan. Required.

PullRequestGeneratorBitbucketServer defines connection info specific to BitbucketServer.

Show child attributes
apistring

The Bitbucket REST API URL to talk to e.g. https://bitbucket.org/rest Required.

BasicAuthBitbucketServer defines the username/(password or personal access token) for Basic auth.

Same fields as pullRequest.bitbucket.basicAuth

BearerTokenBitbucket defines the Bearer token for BitBucket AppToken auth.

Show child attributes

SecretRef 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
configMapNamestring
keystring
insecureboolean
projectstring

Project to scan. Required.

repostring

Repo name to scan. Required.

continueOnRepoNotFoundErrorboolean

ContinueOnRepoNotFoundError 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.

branchMatchstring
targetBranchMatchstring
titleMatchstring

PullRequestGeneratorGitea defines connection info specific to Gitea.

Show child attributes
apistring
insecureboolean

Allow insecure tls, for self-signed certificates; default: false.

labelsArray<string>
ownerstring

Gitea org or user to scan. Required.

repostring

Gitea repo name to scan. Required.

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

PullRequestGeneratorGithub defines connection info specific to GitHub.

Show child attributes
apistring

The GitHub API URL to talk to. If blank, use https://api.github.com/.

appSecretNamestring

AppSecretName is a reference to a GitHub App repo-creds secret with permission to access pull requests.

labelsArray<string>
ownerstring

GitHub org or user to scan. Required.

repostring

GitHub repo name to scan. Required.

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

PullRequestGeneratorGitLab defines connection info specific to GitLab.

Show child attributes
apistring

The 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

insecureboolean
labelsArray<string>
projectstring

GitLab project to scan. Required.

pullRequestStatestring

PullRequestState is an additional MRs filter to get only those with a certain state. Default: "" (all states). Valid values: opened, closed, merged, locked".

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

requeueAfterSecondsinteger<int64>

Standard parameters.

valuesobject
Show child attributes
[key: string]string

SCMProviderGenerator defines a generator that scrapes a SCMaaS API to find candidate repos.

Show child attributes

SCMProviderGeneratorAWSCodeCommit defines connection info specific to AWS CodeCommit.

Show child attributes
allBranchesboolean

Scan all branches instead of just the default branch.

regionstring

Region provides the AWS region to discover repos. if not provided, AppSet controller will infer the current region from environment.

rolestring

Role 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.

Show child attributes
keystring
valuestring

SCMProviderGeneratorAzureDevOps defines connection info specific to Azure DevOps.

Show child attributes
accessTokenRefv1alpha1SecretRef

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

allBranchesboolean

Scan all branches instead of just the default branch.

apistring

The URL to Azure DevOps. If blank, use https://dev.azure.com.

organizationstring

Azure Devops organization. Required. E.g. "my-organization".

teamProjectstring

Azure Devops team project. Required. E.g. "my-team".

SCMProviderGeneratorBitbucket defines connection info specific to Bitbucket Cloud (API version 2).

Show child attributes
allBranchesboolean

Scan all branches instead of just the main branch.

appPasswordRefv1alpha1SecretRef

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

ownerstring

Bitbucket workspace to scan. Required.

userstring

SCMProviderGeneratorBitbucketServer defines connection info specific to Bitbucket Server.

Show child attributes
allBranchesboolean

Scan all branches instead of just the default branch.

apistring

The Bitbucket Server REST API URL to talk to. Required.

BasicAuthBitbucketServer defines the username/(password or personal access token) for Basic auth.

Same fields as pullRequest.bitbucket.basicAuth

BearerTokenBitbucket 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

insecureboolean
projectstring

Project to scan. Required.

cloneProtocolstring

Which 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.

branchMatchstring

A regex which must match the branch name.

labelMatchstring

A 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.

repositoryMatchstring

A regex for repo names.

SCMProviderGeneratorGitea defines a connection info specific to Gitea.

Show child attributes
allBranchesboolean

Scan all branches instead of just the default branch.

apistring

The Gitea URL to talk to. For example https://gitea.mydomain.com/.

excludeArchivedReposboolean

Exclude repositories that are archived.

insecureboolean
ownerstring

Gitea organization or user to scan. Required.

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

SCMProviderGeneratorGithub defines connection info specific to GitHub.

Show child attributes
allBranchesboolean

Scan all branches instead of just the default branch.

apistring

The GitHub API URL to talk to. If blank, use https://api.github.com/.

appSecretNamestring

AppSecretName is a reference to a GitHub App repo-creds secret.

excludeArchivedReposboolean

Exclude repositories that are archived.

organizationstring

GitHub org to scan. Required.

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

SCMProviderGeneratorGitlab defines connection info specific to Gitlab.

Show child attributes
allBranchesboolean

Scan all branches instead of just the default branch.

apistring

The Gitlab API URL to talk to.

ConfigMapKeyRef struct for a reference to a configmap key.

Same fields as pullRequest.bitbucketServer.caRef

groupstring

Gitlab group to scan. Required. You can use either the project id (recommended) or the full namespaced path.

includeArchivedReposboolean

Include repositories that are archived.

includeSharedProjectsboolean
includeSubgroupsboolean
insecureboolean

SecretRef struct for a reference to a secret key.

Same fields as pullRequest.azuredevops.tokenRef

topicstring

Filter repos list based on Gitlab Topic.

requeueAfterSecondsinteger<int64>

Standard parameters.

valuesobject
Show child attributes
[key: string]string
Show child attributes
Show child attributes

A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.

keystring

key is the label key that the selector applies to.

operatorstring

operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.

valuesArray<string>
matchLabelsobject
Show child attributes
[key: string]string