2713 lines
112 KiB
YAML
2713 lines
112 KiB
YAML
# This is an auto-generated file. DO NOT EDIT
|
|
apiVersion: apiextensions.k8s.io/v1beta1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: applications.argoproj.io
|
|
app.kubernetes.io/part-of: argocd
|
|
name: applications.argoproj.io
|
|
spec:
|
|
additionalPrinterColumns:
|
|
- JSONPath: .status.sync.status
|
|
name: Sync Status
|
|
type: string
|
|
- JSONPath: .status.health.status
|
|
name: Health Status
|
|
type: string
|
|
- JSONPath: .status.sync.revision
|
|
name: Revision
|
|
priority: 10
|
|
type: string
|
|
group: argoproj.io
|
|
names:
|
|
kind: Application
|
|
listKind: ApplicationList
|
|
plural: applications
|
|
shortNames:
|
|
- app
|
|
- apps
|
|
singular: application
|
|
scope: Namespaced
|
|
subresources: {}
|
|
validation:
|
|
openAPIV3Schema:
|
|
description: Application is a definition of Application resource.
|
|
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'
|
|
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'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
operation:
|
|
description: Operation contains requested operation parameters.
|
|
properties:
|
|
info:
|
|
items:
|
|
properties:
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
initiatedBy:
|
|
description: OperationInitiator holds information about the operation initiator
|
|
properties:
|
|
automated:
|
|
description: Automated is set to true if operation was initiated automatically by the application controller.
|
|
type: boolean
|
|
username:
|
|
description: Name of a user who started operation.
|
|
type: string
|
|
type: object
|
|
retry:
|
|
description: Retry controls failed sync retry behavior
|
|
properties:
|
|
backoff:
|
|
description: Backoff is a backoff strategy
|
|
properties:
|
|
duration:
|
|
description: Duration is the amount to back off. Default unit is seconds, but could also be a duration (e.g. "2m", "1h")
|
|
type: string
|
|
factor:
|
|
description: Factor is a factor to multiply the base duration after each failed retry
|
|
format: int64
|
|
type: integer
|
|
maxDuration:
|
|
description: MaxDuration is the maximum amount of time allowed for the backoff strategy
|
|
type: string
|
|
type: object
|
|
limit:
|
|
description: Limit is the maximum number of attempts when retrying a container
|
|
format: int64
|
|
type: integer
|
|
type: object
|
|
sync:
|
|
description: SyncOperation contains sync operation details.
|
|
properties:
|
|
dryRun:
|
|
description: DryRun will perform a `kubectl apply --dry-run` without actually performing the sync
|
|
type: boolean
|
|
manifests:
|
|
description: Manifests is an optional field that overrides sync source with a local directory for development
|
|
items:
|
|
type: string
|
|
type: array
|
|
prune:
|
|
description: Prune deletes resources that are no longer tracked in git
|
|
type: boolean
|
|
resources:
|
|
description: Resources describes which resources to sync
|
|
items:
|
|
description: SyncOperationResource contains resources to sync.
|
|
properties:
|
|
group:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
name:
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
required:
|
|
- kind
|
|
- name
|
|
type: object
|
|
type: array
|
|
revision:
|
|
description: Revision is the revision in which to sync the application to. If omitted, will use the revision specified in app spec.
|
|
type: string
|
|
source:
|
|
description: Source overrides the source definition set in the application. This is typically set in a Rollback operation and nil during a Sync operation
|
|
properties:
|
|
chart:
|
|
description: Chart is a Helm chart name
|
|
type: string
|
|
directory:
|
|
description: Directory holds path/directory specific options
|
|
properties:
|
|
exclude:
|
|
type: string
|
|
jsonnet:
|
|
description: ApplicationSourceJsonnet holds jsonnet specific options
|
|
properties:
|
|
extVars:
|
|
description: ExtVars is a list of Jsonnet External Variables
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
libs:
|
|
description: Additional library search dirs
|
|
items:
|
|
type: string
|
|
type: array
|
|
tlas:
|
|
description: TLAS is a list of Jsonnet Top-level Arguments
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
recurse:
|
|
type: boolean
|
|
type: object
|
|
helm:
|
|
description: Helm holds helm specific options
|
|
properties:
|
|
fileParameters:
|
|
description: FileParameters are file parameters to the helm template
|
|
items:
|
|
description: HelmFileParameter is a file parameter to a helm template
|
|
properties:
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
path:
|
|
description: Path is the path value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
parameters:
|
|
description: Parameters are parameters to the helm template
|
|
items:
|
|
description: HelmParameter is a parameter to a helm template
|
|
properties:
|
|
forceString:
|
|
description: ForceString determines whether to tell Helm to interpret booleans and numbers as strings
|
|
type: boolean
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
value:
|
|
description: Value is the value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
releaseName:
|
|
description: The Helm release name. If omitted it will use the application name
|
|
type: string
|
|
valueFiles:
|
|
description: ValuesFiles is a list of Helm value files to use when generating a template
|
|
items:
|
|
type: string
|
|
type: array
|
|
values:
|
|
description: Values is Helm values, typically defined as a block
|
|
type: string
|
|
version:
|
|
description: Version is the Helm version to use for templating with
|
|
type: string
|
|
type: object
|
|
ksonnet:
|
|
description: Ksonnet holds ksonnet specific options
|
|
properties:
|
|
environment:
|
|
description: Environment is a ksonnet application environment name
|
|
type: string
|
|
parameters:
|
|
description: Parameters are a list of ksonnet component parameter override values
|
|
items:
|
|
description: KsonnetParameter is a ksonnet component parameter
|
|
properties:
|
|
component:
|
|
type: string
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
kustomize:
|
|
description: Kustomize holds kustomize specific options
|
|
properties:
|
|
commonAnnotations:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonAnnotations adds additional kustomize commonAnnotations
|
|
type: object
|
|
commonLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonLabels adds additional kustomize commonLabels
|
|
type: object
|
|
images:
|
|
description: Images are kustomize image overrides
|
|
items:
|
|
type: string
|
|
type: array
|
|
namePrefix:
|
|
description: NamePrefix is a prefix appended to resources for kustomize apps
|
|
type: string
|
|
nameSuffix:
|
|
description: NameSuffix is a suffix appended to resources for kustomize apps
|
|
type: string
|
|
version:
|
|
description: Version contains optional Kustomize version
|
|
type: string
|
|
type: object
|
|
path:
|
|
description: Path is a directory path within the Git repository
|
|
type: string
|
|
plugin:
|
|
description: ConfigManagementPlugin holds config management plugin specific options
|
|
properties:
|
|
env:
|
|
items:
|
|
properties:
|
|
name:
|
|
description: the name, usually uppercase
|
|
type: string
|
|
value:
|
|
description: the value
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
name:
|
|
type: string
|
|
type: object
|
|
repoURL:
|
|
description: RepoURL is the repository URL of the application manifests
|
|
type: string
|
|
targetRevision:
|
|
description: TargetRevision defines the commit, tag, or branch in which to sync the application to. If omitted, will sync to HEAD
|
|
type: string
|
|
required:
|
|
- repoURL
|
|
type: object
|
|
syncOptions:
|
|
description: SyncOptions provide per-sync sync-options, e.g. Validate=false
|
|
items:
|
|
type: string
|
|
type: array
|
|
syncStrategy:
|
|
description: SyncStrategy describes how to perform the sync
|
|
properties:
|
|
apply:
|
|
description: Apply will perform a `kubectl apply` to perform the sync.
|
|
properties:
|
|
force:
|
|
description: Force indicates whether or not to supply the --force flag to `kubectl apply`. The --force flag deletes and re-create the resource, when PATCH encounters conflict and has retried for 5 times.
|
|
type: boolean
|
|
type: object
|
|
hook:
|
|
description: Hook will submit any referenced resources to perform the sync. This is the default strategy
|
|
properties:
|
|
force:
|
|
description: Force indicates whether or not to supply the --force flag to `kubectl apply`. The --force flag deletes and re-create the resource, when PATCH encounters conflict and has retried for 5 times.
|
|
type: boolean
|
|
type: object
|
|
type: object
|
|
type: object
|
|
type: object
|
|
spec:
|
|
description: ApplicationSpec represents desired application state. Contains link to repository with application definition and additional parameters link definition revision.
|
|
properties:
|
|
destination:
|
|
description: Destination overrides the kubernetes server and namespace defined in the environment ksonnet app.yaml
|
|
properties:
|
|
name:
|
|
description: Name of the destination cluster which can be used instead of server (url) field
|
|
type: string
|
|
namespace:
|
|
description: Namespace overrides the environment namespace value in the ksonnet app.yaml
|
|
type: string
|
|
server:
|
|
description: Server overrides the environment server value in the ksonnet app.yaml
|
|
type: string
|
|
type: object
|
|
ignoreDifferences:
|
|
description: IgnoreDifferences controls resources fields which should be ignored during comparison
|
|
items:
|
|
description: ResourceIgnoreDifferences contains resource filter and list of json paths which should be ignored during comparison with live state.
|
|
properties:
|
|
group:
|
|
type: string
|
|
jsonPointers:
|
|
items:
|
|
type: string
|
|
type: array
|
|
kind:
|
|
type: string
|
|
name:
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
required:
|
|
- jsonPointers
|
|
- kind
|
|
type: object
|
|
type: array
|
|
info:
|
|
description: Infos contains a list of useful information (URLs, email addresses, and plain text) that relates to the application
|
|
items:
|
|
properties:
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
project:
|
|
description: Project is a application project name. Empty name means that application belongs to 'default' project.
|
|
type: string
|
|
revisionHistoryLimit:
|
|
description: This limits this number of items kept in the apps revision history. 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.
|
|
format: int64
|
|
type: integer
|
|
source:
|
|
description: Source is a reference to the location ksonnet application definition
|
|
properties:
|
|
chart:
|
|
description: Chart is a Helm chart name
|
|
type: string
|
|
directory:
|
|
description: Directory holds path/directory specific options
|
|
properties:
|
|
exclude:
|
|
type: string
|
|
jsonnet:
|
|
description: ApplicationSourceJsonnet holds jsonnet specific options
|
|
properties:
|
|
extVars:
|
|
description: ExtVars is a list of Jsonnet External Variables
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
libs:
|
|
description: Additional library search dirs
|
|
items:
|
|
type: string
|
|
type: array
|
|
tlas:
|
|
description: TLAS is a list of Jsonnet Top-level Arguments
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
recurse:
|
|
type: boolean
|
|
type: object
|
|
helm:
|
|
description: Helm holds helm specific options
|
|
properties:
|
|
fileParameters:
|
|
description: FileParameters are file parameters to the helm template
|
|
items:
|
|
description: HelmFileParameter is a file parameter to a helm template
|
|
properties:
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
path:
|
|
description: Path is the path value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
parameters:
|
|
description: Parameters are parameters to the helm template
|
|
items:
|
|
description: HelmParameter is a parameter to a helm template
|
|
properties:
|
|
forceString:
|
|
description: ForceString determines whether to tell Helm to interpret booleans and numbers as strings
|
|
type: boolean
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
value:
|
|
description: Value is the value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
releaseName:
|
|
description: The Helm release name. If omitted it will use the application name
|
|
type: string
|
|
valueFiles:
|
|
description: ValuesFiles is a list of Helm value files to use when generating a template
|
|
items:
|
|
type: string
|
|
type: array
|
|
values:
|
|
description: Values is Helm values, typically defined as a block
|
|
type: string
|
|
version:
|
|
description: Version is the Helm version to use for templating with
|
|
type: string
|
|
type: object
|
|
ksonnet:
|
|
description: Ksonnet holds ksonnet specific options
|
|
properties:
|
|
environment:
|
|
description: Environment is a ksonnet application environment name
|
|
type: string
|
|
parameters:
|
|
description: Parameters are a list of ksonnet component parameter override values
|
|
items:
|
|
description: KsonnetParameter is a ksonnet component parameter
|
|
properties:
|
|
component:
|
|
type: string
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
kustomize:
|
|
description: Kustomize holds kustomize specific options
|
|
properties:
|
|
commonAnnotations:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonAnnotations adds additional kustomize commonAnnotations
|
|
type: object
|
|
commonLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonLabels adds additional kustomize commonLabels
|
|
type: object
|
|
images:
|
|
description: Images are kustomize image overrides
|
|
items:
|
|
type: string
|
|
type: array
|
|
namePrefix:
|
|
description: NamePrefix is a prefix appended to resources for kustomize apps
|
|
type: string
|
|
nameSuffix:
|
|
description: NameSuffix is a suffix appended to resources for kustomize apps
|
|
type: string
|
|
version:
|
|
description: Version contains optional Kustomize version
|
|
type: string
|
|
type: object
|
|
path:
|
|
description: Path is a directory path within the Git repository
|
|
type: string
|
|
plugin:
|
|
description: ConfigManagementPlugin holds config management plugin specific options
|
|
properties:
|
|
env:
|
|
items:
|
|
properties:
|
|
name:
|
|
description: the name, usually uppercase
|
|
type: string
|
|
value:
|
|
description: the value
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
name:
|
|
type: string
|
|
type: object
|
|
repoURL:
|
|
description: RepoURL is the repository URL of the application manifests
|
|
type: string
|
|
targetRevision:
|
|
description: TargetRevision defines the commit, tag, or branch in which to sync the application to. If omitted, will sync to HEAD
|
|
type: string
|
|
required:
|
|
- repoURL
|
|
type: object
|
|
syncPolicy:
|
|
description: SyncPolicy controls when a sync will be performed
|
|
properties:
|
|
automated:
|
|
description: Automated will keep an application synced to the target revision
|
|
properties:
|
|
allowEmpty:
|
|
description: 'AllowEmpty allows apps have zero live resources (default: false)'
|
|
type: boolean
|
|
prune:
|
|
description: 'Prune will prune resources automatically as part of automated sync (default: false)'
|
|
type: boolean
|
|
selfHeal:
|
|
description: 'SelfHeal enables auto-syncing if (default: false)'
|
|
type: boolean
|
|
type: object
|
|
retry:
|
|
description: Retry controls failed sync retry behavior
|
|
properties:
|
|
backoff:
|
|
description: Backoff is a backoff strategy
|
|
properties:
|
|
duration:
|
|
description: Duration is the amount to back off. Default unit is seconds, but could also be a duration (e.g. "2m", "1h")
|
|
type: string
|
|
factor:
|
|
description: Factor is a factor to multiply the base duration after each failed retry
|
|
format: int64
|
|
type: integer
|
|
maxDuration:
|
|
description: MaxDuration is the maximum amount of time allowed for the backoff strategy
|
|
type: string
|
|
type: object
|
|
limit:
|
|
description: Limit is the maximum number of attempts when retrying a container
|
|
format: int64
|
|
type: integer
|
|
type: object
|
|
syncOptions:
|
|
description: Options allow you to specify whole app sync-options
|
|
items:
|
|
type: string
|
|
type: array
|
|
type: object
|
|
required:
|
|
- destination
|
|
- project
|
|
- source
|
|
type: object
|
|
status:
|
|
description: ApplicationStatus contains information about application sync, health status
|
|
properties:
|
|
conditions:
|
|
items:
|
|
description: ApplicationCondition contains details about current application condition
|
|
properties:
|
|
lastTransitionTime:
|
|
description: LastTransitionTime is the time the condition was first observed.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: Message contains human-readable message indicating details about condition
|
|
type: string
|
|
type:
|
|
description: Type is an application condition type
|
|
type: string
|
|
required:
|
|
- message
|
|
- type
|
|
type: object
|
|
type: array
|
|
health:
|
|
properties:
|
|
message:
|
|
type: string
|
|
status:
|
|
description: Represents resource health status
|
|
type: string
|
|
type: object
|
|
history:
|
|
description: RevisionHistories is a array of history, oldest first and newest last
|
|
items:
|
|
description: RevisionHistory contains information relevant to an application deployment
|
|
properties:
|
|
deployStartedAt:
|
|
description: DeployStartedAt holds the time the deployment started
|
|
format: date-time
|
|
type: string
|
|
deployedAt:
|
|
description: DeployedAt holds the time the deployment completed
|
|
format: date-time
|
|
type: string
|
|
id:
|
|
description: ID is an auto incrementing identifier of the RevisionHistory
|
|
format: int64
|
|
type: integer
|
|
revision:
|
|
description: Revision holds the revision of the sync
|
|
type: string
|
|
source:
|
|
description: ApplicationSource contains information about github repository, path within repository and target application environment.
|
|
properties:
|
|
chart:
|
|
description: Chart is a Helm chart name
|
|
type: string
|
|
directory:
|
|
description: Directory holds path/directory specific options
|
|
properties:
|
|
exclude:
|
|
type: string
|
|
jsonnet:
|
|
description: ApplicationSourceJsonnet holds jsonnet specific options
|
|
properties:
|
|
extVars:
|
|
description: ExtVars is a list of Jsonnet External Variables
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
libs:
|
|
description: Additional library search dirs
|
|
items:
|
|
type: string
|
|
type: array
|
|
tlas:
|
|
description: TLAS is a list of Jsonnet Top-level Arguments
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
recurse:
|
|
type: boolean
|
|
type: object
|
|
helm:
|
|
description: Helm holds helm specific options
|
|
properties:
|
|
fileParameters:
|
|
description: FileParameters are file parameters to the helm template
|
|
items:
|
|
description: HelmFileParameter is a file parameter to a helm template
|
|
properties:
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
path:
|
|
description: Path is the path value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
parameters:
|
|
description: Parameters are parameters to the helm template
|
|
items:
|
|
description: HelmParameter is a parameter to a helm template
|
|
properties:
|
|
forceString:
|
|
description: ForceString determines whether to tell Helm to interpret booleans and numbers as strings
|
|
type: boolean
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
value:
|
|
description: Value is the value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
releaseName:
|
|
description: The Helm release name. If omitted it will use the application name
|
|
type: string
|
|
valueFiles:
|
|
description: ValuesFiles is a list of Helm value files to use when generating a template
|
|
items:
|
|
type: string
|
|
type: array
|
|
values:
|
|
description: Values is Helm values, typically defined as a block
|
|
type: string
|
|
version:
|
|
description: Version is the Helm version to use for templating with
|
|
type: string
|
|
type: object
|
|
ksonnet:
|
|
description: Ksonnet holds ksonnet specific options
|
|
properties:
|
|
environment:
|
|
description: Environment is a ksonnet application environment name
|
|
type: string
|
|
parameters:
|
|
description: Parameters are a list of ksonnet component parameter override values
|
|
items:
|
|
description: KsonnetParameter is a ksonnet component parameter
|
|
properties:
|
|
component:
|
|
type: string
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
kustomize:
|
|
description: Kustomize holds kustomize specific options
|
|
properties:
|
|
commonAnnotations:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonAnnotations adds additional kustomize commonAnnotations
|
|
type: object
|
|
commonLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonLabels adds additional kustomize commonLabels
|
|
type: object
|
|
images:
|
|
description: Images are kustomize image overrides
|
|
items:
|
|
type: string
|
|
type: array
|
|
namePrefix:
|
|
description: NamePrefix is a prefix appended to resources for kustomize apps
|
|
type: string
|
|
nameSuffix:
|
|
description: NameSuffix is a suffix appended to resources for kustomize apps
|
|
type: string
|
|
version:
|
|
description: Version contains optional Kustomize version
|
|
type: string
|
|
type: object
|
|
path:
|
|
description: Path is a directory path within the Git repository
|
|
type: string
|
|
plugin:
|
|
description: ConfigManagementPlugin holds config management plugin specific options
|
|
properties:
|
|
env:
|
|
items:
|
|
properties:
|
|
name:
|
|
description: the name, usually uppercase
|
|
type: string
|
|
value:
|
|
description: the value
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
name:
|
|
type: string
|
|
type: object
|
|
repoURL:
|
|
description: RepoURL is the repository URL of the application manifests
|
|
type: string
|
|
targetRevision:
|
|
description: TargetRevision defines the commit, tag, or branch in which to sync the application to. If omitted, will sync to HEAD
|
|
type: string
|
|
required:
|
|
- repoURL
|
|
type: object
|
|
required:
|
|
- deployedAt
|
|
- id
|
|
- revision
|
|
type: object
|
|
type: array
|
|
observedAt:
|
|
description: 'ObservedAt indicates when the application state was updated without querying latest git state Deprecated: controller no longer updates ObservedAt field'
|
|
format: date-time
|
|
type: string
|
|
operationState:
|
|
description: OperationState contains information about state of currently performing operation on application.
|
|
properties:
|
|
finishedAt:
|
|
description: FinishedAt contains time of operation completion
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: Message hold any pertinent messages when attempting to perform operation (typically errors).
|
|
type: string
|
|
operation:
|
|
description: Operation is the original requested operation
|
|
properties:
|
|
info:
|
|
items:
|
|
properties:
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
initiatedBy:
|
|
description: OperationInitiator holds information about the operation initiator
|
|
properties:
|
|
automated:
|
|
description: Automated is set to true if operation was initiated automatically by the application controller.
|
|
type: boolean
|
|
username:
|
|
description: Name of a user who started operation.
|
|
type: string
|
|
type: object
|
|
retry:
|
|
description: Retry controls failed sync retry behavior
|
|
properties:
|
|
backoff:
|
|
description: Backoff is a backoff strategy
|
|
properties:
|
|
duration:
|
|
description: Duration is the amount to back off. Default unit is seconds, but could also be a duration (e.g. "2m", "1h")
|
|
type: string
|
|
factor:
|
|
description: Factor is a factor to multiply the base duration after each failed retry
|
|
format: int64
|
|
type: integer
|
|
maxDuration:
|
|
description: MaxDuration is the maximum amount of time allowed for the backoff strategy
|
|
type: string
|
|
type: object
|
|
limit:
|
|
description: Limit is the maximum number of attempts when retrying a container
|
|
format: int64
|
|
type: integer
|
|
type: object
|
|
sync:
|
|
description: SyncOperation contains sync operation details.
|
|
properties:
|
|
dryRun:
|
|
description: DryRun will perform a `kubectl apply --dry-run` without actually performing the sync
|
|
type: boolean
|
|
manifests:
|
|
description: Manifests is an optional field that overrides sync source with a local directory for development
|
|
items:
|
|
type: string
|
|
type: array
|
|
prune:
|
|
description: Prune deletes resources that are no longer tracked in git
|
|
type: boolean
|
|
resources:
|
|
description: Resources describes which resources to sync
|
|
items:
|
|
description: SyncOperationResource contains resources to sync.
|
|
properties:
|
|
group:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
name:
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
required:
|
|
- kind
|
|
- name
|
|
type: object
|
|
type: array
|
|
revision:
|
|
description: Revision is the revision in which to sync the application to. If omitted, will use the revision specified in app spec.
|
|
type: string
|
|
source:
|
|
description: Source overrides the source definition set in the application. This is typically set in a Rollback operation and nil during a Sync operation
|
|
properties:
|
|
chart:
|
|
description: Chart is a Helm chart name
|
|
type: string
|
|
directory:
|
|
description: Directory holds path/directory specific options
|
|
properties:
|
|
exclude:
|
|
type: string
|
|
jsonnet:
|
|
description: ApplicationSourceJsonnet holds jsonnet specific options
|
|
properties:
|
|
extVars:
|
|
description: ExtVars is a list of Jsonnet External Variables
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
libs:
|
|
description: Additional library search dirs
|
|
items:
|
|
type: string
|
|
type: array
|
|
tlas:
|
|
description: TLAS is a list of Jsonnet Top-level Arguments
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
recurse:
|
|
type: boolean
|
|
type: object
|
|
helm:
|
|
description: Helm holds helm specific options
|
|
properties:
|
|
fileParameters:
|
|
description: FileParameters are file parameters to the helm template
|
|
items:
|
|
description: HelmFileParameter is a file parameter to a helm template
|
|
properties:
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
path:
|
|
description: Path is the path value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
parameters:
|
|
description: Parameters are parameters to the helm template
|
|
items:
|
|
description: HelmParameter is a parameter to a helm template
|
|
properties:
|
|
forceString:
|
|
description: ForceString determines whether to tell Helm to interpret booleans and numbers as strings
|
|
type: boolean
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
value:
|
|
description: Value is the value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
releaseName:
|
|
description: The Helm release name. If omitted it will use the application name
|
|
type: string
|
|
valueFiles:
|
|
description: ValuesFiles is a list of Helm value files to use when generating a template
|
|
items:
|
|
type: string
|
|
type: array
|
|
values:
|
|
description: Values is Helm values, typically defined as a block
|
|
type: string
|
|
version:
|
|
description: Version is the Helm version to use for templating with
|
|
type: string
|
|
type: object
|
|
ksonnet:
|
|
description: Ksonnet holds ksonnet specific options
|
|
properties:
|
|
environment:
|
|
description: Environment is a ksonnet application environment name
|
|
type: string
|
|
parameters:
|
|
description: Parameters are a list of ksonnet component parameter override values
|
|
items:
|
|
description: KsonnetParameter is a ksonnet component parameter
|
|
properties:
|
|
component:
|
|
type: string
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
kustomize:
|
|
description: Kustomize holds kustomize specific options
|
|
properties:
|
|
commonAnnotations:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonAnnotations adds additional kustomize commonAnnotations
|
|
type: object
|
|
commonLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonLabels adds additional kustomize commonLabels
|
|
type: object
|
|
images:
|
|
description: Images are kustomize image overrides
|
|
items:
|
|
type: string
|
|
type: array
|
|
namePrefix:
|
|
description: NamePrefix is a prefix appended to resources for kustomize apps
|
|
type: string
|
|
nameSuffix:
|
|
description: NameSuffix is a suffix appended to resources for kustomize apps
|
|
type: string
|
|
version:
|
|
description: Version contains optional Kustomize version
|
|
type: string
|
|
type: object
|
|
path:
|
|
description: Path is a directory path within the Git repository
|
|
type: string
|
|
plugin:
|
|
description: ConfigManagementPlugin holds config management plugin specific options
|
|
properties:
|
|
env:
|
|
items:
|
|
properties:
|
|
name:
|
|
description: the name, usually uppercase
|
|
type: string
|
|
value:
|
|
description: the value
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
name:
|
|
type: string
|
|
type: object
|
|
repoURL:
|
|
description: RepoURL is the repository URL of the application manifests
|
|
type: string
|
|
targetRevision:
|
|
description: TargetRevision defines the commit, tag, or branch in which to sync the application to. If omitted, will sync to HEAD
|
|
type: string
|
|
required:
|
|
- repoURL
|
|
type: object
|
|
syncOptions:
|
|
description: SyncOptions provide per-sync sync-options, e.g. Validate=false
|
|
items:
|
|
type: string
|
|
type: array
|
|
syncStrategy:
|
|
description: SyncStrategy describes how to perform the sync
|
|
properties:
|
|
apply:
|
|
description: Apply will perform a `kubectl apply` to perform the sync.
|
|
properties:
|
|
force:
|
|
description: Force indicates whether or not to supply the --force flag to `kubectl apply`. The --force flag deletes and re-create the resource, when PATCH encounters conflict and has retried for 5 times.
|
|
type: boolean
|
|
type: object
|
|
hook:
|
|
description: Hook will submit any referenced resources to perform the sync. This is the default strategy
|
|
properties:
|
|
force:
|
|
description: Force indicates whether or not to supply the --force flag to `kubectl apply`. The --force flag deletes and re-create the resource, when PATCH encounters conflict and has retried for 5 times.
|
|
type: boolean
|
|
type: object
|
|
type: object
|
|
type: object
|
|
type: object
|
|
phase:
|
|
description: Phase is the current phase of the operation
|
|
type: string
|
|
retryCount:
|
|
description: RetryCount contains time of operation retries
|
|
format: int64
|
|
type: integer
|
|
startedAt:
|
|
description: StartedAt contains time of operation start
|
|
format: date-time
|
|
type: string
|
|
syncResult:
|
|
description: SyncResult is the result of a Sync operation
|
|
properties:
|
|
resources:
|
|
description: Resources holds the sync result of each individual resource
|
|
items:
|
|
description: ResourceResult holds the operation result details of a specific resource
|
|
properties:
|
|
group:
|
|
type: string
|
|
hookPhase:
|
|
description: 'the state of any operation associated with this resource OR hook note: can contain values for non-hook resources'
|
|
type: string
|
|
hookType:
|
|
description: the type of the hook, empty for non-hook resources
|
|
type: string
|
|
kind:
|
|
type: string
|
|
message:
|
|
description: message for the last sync OR operation
|
|
type: string
|
|
name:
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
status:
|
|
description: the final result of the sync, this is be empty if the resources is yet to be applied/pruned and is always zero-value for hooks
|
|
type: string
|
|
syncPhase:
|
|
description: indicates the particular phase of the sync that this is for
|
|
type: string
|
|
version:
|
|
type: string
|
|
required:
|
|
- group
|
|
- kind
|
|
- name
|
|
- namespace
|
|
- version
|
|
type: object
|
|
type: array
|
|
revision:
|
|
description: Revision holds the revision of the sync
|
|
type: string
|
|
source:
|
|
description: Source records the application source information of the sync, used for comparing auto-sync
|
|
properties:
|
|
chart:
|
|
description: Chart is a Helm chart name
|
|
type: string
|
|
directory:
|
|
description: Directory holds path/directory specific options
|
|
properties:
|
|
exclude:
|
|
type: string
|
|
jsonnet:
|
|
description: ApplicationSourceJsonnet holds jsonnet specific options
|
|
properties:
|
|
extVars:
|
|
description: ExtVars is a list of Jsonnet External Variables
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
libs:
|
|
description: Additional library search dirs
|
|
items:
|
|
type: string
|
|
type: array
|
|
tlas:
|
|
description: TLAS is a list of Jsonnet Top-level Arguments
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
recurse:
|
|
type: boolean
|
|
type: object
|
|
helm:
|
|
description: Helm holds helm specific options
|
|
properties:
|
|
fileParameters:
|
|
description: FileParameters are file parameters to the helm template
|
|
items:
|
|
description: HelmFileParameter is a file parameter to a helm template
|
|
properties:
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
path:
|
|
description: Path is the path value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
parameters:
|
|
description: Parameters are parameters to the helm template
|
|
items:
|
|
description: HelmParameter is a parameter to a helm template
|
|
properties:
|
|
forceString:
|
|
description: ForceString determines whether to tell Helm to interpret booleans and numbers as strings
|
|
type: boolean
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
value:
|
|
description: Value is the value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
releaseName:
|
|
description: The Helm release name. If omitted it will use the application name
|
|
type: string
|
|
valueFiles:
|
|
description: ValuesFiles is a list of Helm value files to use when generating a template
|
|
items:
|
|
type: string
|
|
type: array
|
|
values:
|
|
description: Values is Helm values, typically defined as a block
|
|
type: string
|
|
version:
|
|
description: Version is the Helm version to use for templating with
|
|
type: string
|
|
type: object
|
|
ksonnet:
|
|
description: Ksonnet holds ksonnet specific options
|
|
properties:
|
|
environment:
|
|
description: Environment is a ksonnet application environment name
|
|
type: string
|
|
parameters:
|
|
description: Parameters are a list of ksonnet component parameter override values
|
|
items:
|
|
description: KsonnetParameter is a ksonnet component parameter
|
|
properties:
|
|
component:
|
|
type: string
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
kustomize:
|
|
description: Kustomize holds kustomize specific options
|
|
properties:
|
|
commonAnnotations:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonAnnotations adds additional kustomize commonAnnotations
|
|
type: object
|
|
commonLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonLabels adds additional kustomize commonLabels
|
|
type: object
|
|
images:
|
|
description: Images are kustomize image overrides
|
|
items:
|
|
type: string
|
|
type: array
|
|
namePrefix:
|
|
description: NamePrefix is a prefix appended to resources for kustomize apps
|
|
type: string
|
|
nameSuffix:
|
|
description: NameSuffix is a suffix appended to resources for kustomize apps
|
|
type: string
|
|
version:
|
|
description: Version contains optional Kustomize version
|
|
type: string
|
|
type: object
|
|
path:
|
|
description: Path is a directory path within the Git repository
|
|
type: string
|
|
plugin:
|
|
description: ConfigManagementPlugin holds config management plugin specific options
|
|
properties:
|
|
env:
|
|
items:
|
|
properties:
|
|
name:
|
|
description: the name, usually uppercase
|
|
type: string
|
|
value:
|
|
description: the value
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
name:
|
|
type: string
|
|
type: object
|
|
repoURL:
|
|
description: RepoURL is the repository URL of the application manifests
|
|
type: string
|
|
targetRevision:
|
|
description: TargetRevision defines the commit, tag, or branch in which to sync the application to. If omitted, will sync to HEAD
|
|
type: string
|
|
required:
|
|
- repoURL
|
|
type: object
|
|
required:
|
|
- revision
|
|
type: object
|
|
required:
|
|
- operation
|
|
- phase
|
|
- startedAt
|
|
type: object
|
|
reconciledAt:
|
|
description: ReconciledAt indicates when the application state was reconciled using the latest git version
|
|
format: date-time
|
|
type: string
|
|
resources:
|
|
items:
|
|
description: ResourceStatus holds the current sync and health status of a resource
|
|
properties:
|
|
group:
|
|
type: string
|
|
health:
|
|
properties:
|
|
message:
|
|
type: string
|
|
status:
|
|
description: Represents resource health status
|
|
type: string
|
|
type: object
|
|
hook:
|
|
type: boolean
|
|
kind:
|
|
type: string
|
|
name:
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
requiresPruning:
|
|
type: boolean
|
|
status:
|
|
description: SyncStatusCode is a type which represents possible comparison results
|
|
type: string
|
|
version:
|
|
type: string
|
|
type: object
|
|
type: array
|
|
sourceType:
|
|
type: string
|
|
summary:
|
|
properties:
|
|
externalURLs:
|
|
description: ExternalURLs holds all external URLs of application child resources.
|
|
items:
|
|
type: string
|
|
type: array
|
|
images:
|
|
description: Images holds all images of application child resources.
|
|
items:
|
|
type: string
|
|
type: array
|
|
type: object
|
|
sync:
|
|
description: SyncStatus is a comparison result of application spec and deployed application.
|
|
properties:
|
|
comparedTo:
|
|
description: ComparedTo contains application source and target which was used for resources comparison
|
|
properties:
|
|
destination:
|
|
description: ApplicationDestination contains deployment destination information
|
|
properties:
|
|
name:
|
|
description: Name of the destination cluster which can be used instead of server (url) field
|
|
type: string
|
|
namespace:
|
|
description: Namespace overrides the environment namespace value in the ksonnet app.yaml
|
|
type: string
|
|
server:
|
|
description: Server overrides the environment server value in the ksonnet app.yaml
|
|
type: string
|
|
type: object
|
|
source:
|
|
description: ApplicationSource contains information about github repository, path within repository and target application environment.
|
|
properties:
|
|
chart:
|
|
description: Chart is a Helm chart name
|
|
type: string
|
|
directory:
|
|
description: Directory holds path/directory specific options
|
|
properties:
|
|
exclude:
|
|
type: string
|
|
jsonnet:
|
|
description: ApplicationSourceJsonnet holds jsonnet specific options
|
|
properties:
|
|
extVars:
|
|
description: ExtVars is a list of Jsonnet External Variables
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
libs:
|
|
description: Additional library search dirs
|
|
items:
|
|
type: string
|
|
type: array
|
|
tlas:
|
|
description: TLAS is a list of Jsonnet Top-level Arguments
|
|
items:
|
|
description: JsonnetVar is a jsonnet variable
|
|
properties:
|
|
code:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
recurse:
|
|
type: boolean
|
|
type: object
|
|
helm:
|
|
description: Helm holds helm specific options
|
|
properties:
|
|
fileParameters:
|
|
description: FileParameters are file parameters to the helm template
|
|
items:
|
|
description: HelmFileParameter is a file parameter to a helm template
|
|
properties:
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
path:
|
|
description: Path is the path value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
parameters:
|
|
description: Parameters are parameters to the helm template
|
|
items:
|
|
description: HelmParameter is a parameter to a helm template
|
|
properties:
|
|
forceString:
|
|
description: ForceString determines whether to tell Helm to interpret booleans and numbers as strings
|
|
type: boolean
|
|
name:
|
|
description: Name is the name of the helm parameter
|
|
type: string
|
|
value:
|
|
description: Value is the value for the helm parameter
|
|
type: string
|
|
type: object
|
|
type: array
|
|
releaseName:
|
|
description: The Helm release name. If omitted it will use the application name
|
|
type: string
|
|
valueFiles:
|
|
description: ValuesFiles is a list of Helm value files to use when generating a template
|
|
items:
|
|
type: string
|
|
type: array
|
|
values:
|
|
description: Values is Helm values, typically defined as a block
|
|
type: string
|
|
version:
|
|
description: Version is the Helm version to use for templating with
|
|
type: string
|
|
type: object
|
|
ksonnet:
|
|
description: Ksonnet holds ksonnet specific options
|
|
properties:
|
|
environment:
|
|
description: Environment is a ksonnet application environment name
|
|
type: string
|
|
parameters:
|
|
description: Parameters are a list of ksonnet component parameter override values
|
|
items:
|
|
description: KsonnetParameter is a ksonnet component parameter
|
|
properties:
|
|
component:
|
|
type: string
|
|
name:
|
|
type: string
|
|
value:
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
type: object
|
|
kustomize:
|
|
description: Kustomize holds kustomize specific options
|
|
properties:
|
|
commonAnnotations:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonAnnotations adds additional kustomize commonAnnotations
|
|
type: object
|
|
commonLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: CommonLabels adds additional kustomize commonLabels
|
|
type: object
|
|
images:
|
|
description: Images are kustomize image overrides
|
|
items:
|
|
type: string
|
|
type: array
|
|
namePrefix:
|
|
description: NamePrefix is a prefix appended to resources for kustomize apps
|
|
type: string
|
|
nameSuffix:
|
|
description: NameSuffix is a suffix appended to resources for kustomize apps
|
|
type: string
|
|
version:
|
|
description: Version contains optional Kustomize version
|
|
type: string
|
|
type: object
|
|
path:
|
|
description: Path is a directory path within the Git repository
|
|
type: string
|
|
plugin:
|
|
description: ConfigManagementPlugin holds config management plugin specific options
|
|
properties:
|
|
env:
|
|
items:
|
|
properties:
|
|
name:
|
|
description: the name, usually uppercase
|
|
type: string
|
|
value:
|
|
description: the value
|
|
type: string
|
|
required:
|
|
- name
|
|
- value
|
|
type: object
|
|
type: array
|
|
name:
|
|
type: string
|
|
type: object
|
|
repoURL:
|
|
description: RepoURL is the repository URL of the application manifests
|
|
type: string
|
|
targetRevision:
|
|
description: TargetRevision defines the commit, tag, or branch in which to sync the application to. If omitted, will sync to HEAD
|
|
type: string
|
|
required:
|
|
- repoURL
|
|
type: object
|
|
required:
|
|
- destination
|
|
- source
|
|
type: object
|
|
revision:
|
|
type: string
|
|
status:
|
|
description: SyncStatusCode is a type which represents possible comparison results
|
|
type: string
|
|
required:
|
|
- status
|
|
type: object
|
|
type: object
|
|
required:
|
|
- metadata
|
|
- spec
|
|
type: object
|
|
version: v1alpha1
|
|
versions:
|
|
- name: v1alpha1
|
|
served: true
|
|
storage: true
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1beta1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: appprojects.argoproj.io
|
|
app.kubernetes.io/part-of: argocd
|
|
name: appprojects.argoproj.io
|
|
spec:
|
|
group: argoproj.io
|
|
names:
|
|
kind: AppProject
|
|
listKind: AppProjectList
|
|
plural: appprojects
|
|
shortNames:
|
|
- appproj
|
|
- appprojs
|
|
singular: appproject
|
|
scope: Namespaced
|
|
validation:
|
|
openAPIV3Schema:
|
|
description: 'AppProject provides a logical grouping of applications, providing controls for: * where the apps may deploy to (cluster whitelist) * what may be deployed (repository whitelist, resource whitelist/blacklist) * who can access these applications (roles, OIDC group claims bindings) * and what they can do (RBAC policies) * automation access to these roles (JWT tokens)'
|
|
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'
|
|
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'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: AppProjectSpec is the specification of an AppProject
|
|
properties:
|
|
clusterResourceBlacklist:
|
|
description: ClusterResourceBlacklist contains list of blacklisted cluster level resources
|
|
items:
|
|
description: GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
|
|
properties:
|
|
group:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
required:
|
|
- group
|
|
- kind
|
|
type: object
|
|
type: array
|
|
clusterResourceWhitelist:
|
|
description: ClusterResourceWhitelist contains list of whitelisted cluster level resources
|
|
items:
|
|
description: GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
|
|
properties:
|
|
group:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
required:
|
|
- group
|
|
- kind
|
|
type: object
|
|
type: array
|
|
description:
|
|
description: Description contains optional project description
|
|
type: string
|
|
destinations:
|
|
description: Destinations contains list of destinations available for deployment
|
|
items:
|
|
description: ApplicationDestination contains deployment destination information
|
|
properties:
|
|
name:
|
|
description: Name of the destination cluster which can be used instead of server (url) field
|
|
type: string
|
|
namespace:
|
|
description: Namespace overrides the environment namespace value in the ksonnet app.yaml
|
|
type: string
|
|
server:
|
|
description: Server overrides the environment server value in the ksonnet app.yaml
|
|
type: string
|
|
type: object
|
|
type: array
|
|
namespaceResourceBlacklist:
|
|
description: NamespaceResourceBlacklist contains list of blacklisted namespace level resources
|
|
items:
|
|
description: GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
|
|
properties:
|
|
group:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
required:
|
|
- group
|
|
- kind
|
|
type: object
|
|
type: array
|
|
namespaceResourceWhitelist:
|
|
description: NamespaceResourceWhitelist contains list of whitelisted namespace level resources
|
|
items:
|
|
description: GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
|
|
properties:
|
|
group:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
required:
|
|
- group
|
|
- kind
|
|
type: object
|
|
type: array
|
|
orphanedResources:
|
|
description: OrphanedResources specifies if controller should monitor orphaned resources of apps in this project
|
|
properties:
|
|
ignore:
|
|
items:
|
|
properties:
|
|
group:
|
|
type: string
|
|
kind:
|
|
type: string
|
|
name:
|
|
type: string
|
|
type: object
|
|
type: array
|
|
warn:
|
|
description: Warn indicates if warning condition should be created for apps which have orphaned resources
|
|
type: boolean
|
|
type: object
|
|
roles:
|
|
description: Roles are user defined RBAC roles associated with this project
|
|
items:
|
|
description: ProjectRole represents a role that has access to a project
|
|
properties:
|
|
description:
|
|
description: Description is a description of the role
|
|
type: string
|
|
groups:
|
|
description: Groups are a list of OIDC group claims bound to this role
|
|
items:
|
|
type: string
|
|
type: array
|
|
jwtTokens:
|
|
description: JWTTokens are a list of generated JWT tokens bound to this role
|
|
items:
|
|
description: JWTToken holds the issuedAt and expiresAt values of a token
|
|
properties:
|
|
exp:
|
|
format: int64
|
|
type: integer
|
|
iat:
|
|
format: int64
|
|
type: integer
|
|
id:
|
|
type: string
|
|
required:
|
|
- iat
|
|
type: object
|
|
type: array
|
|
name:
|
|
description: Name is a name for this role
|
|
type: string
|
|
policies:
|
|
description: Policies Stores a list of casbin formated strings that define access policies for the role in the project
|
|
items:
|
|
type: string
|
|
type: array
|
|
required:
|
|
- name
|
|
type: object
|
|
type: array
|
|
signatureKeys:
|
|
description: List of PGP key IDs that commits to be synced to must be signed with
|
|
items:
|
|
description: SignatureKey is the specification of a key required to verify commit signatures with
|
|
properties:
|
|
keyID:
|
|
description: The ID of the key in hexadecimal notation
|
|
type: string
|
|
required:
|
|
- keyID
|
|
type: object
|
|
type: array
|
|
sourceRepos:
|
|
description: SourceRepos contains list of repository URLs which can be used for deployment
|
|
items:
|
|
type: string
|
|
type: array
|
|
syncWindows:
|
|
description: SyncWindows controls when syncs can be run for apps in this project
|
|
items:
|
|
description: SyncWindow contains the kind, time, duration and attributes that are used to assign the syncWindows to apps
|
|
properties:
|
|
applications:
|
|
description: Applications contains a list of applications that the window will apply to
|
|
items:
|
|
type: string
|
|
type: array
|
|
clusters:
|
|
description: Clusters contains a list of clusters that the window will apply to
|
|
items:
|
|
type: string
|
|
type: array
|
|
duration:
|
|
description: Duration is the amount of time the sync window will be open
|
|
type: string
|
|
kind:
|
|
description: Kind defines if the window allows or blocks syncs
|
|
type: string
|
|
manualSync:
|
|
description: ManualSync enables manual syncs when they would otherwise be blocked
|
|
type: boolean
|
|
namespaces:
|
|
description: Namespaces contains a list of namespaces that the window will apply to
|
|
items:
|
|
type: string
|
|
type: array
|
|
schedule:
|
|
description: Schedule is the time the window will begin, specified in cron format
|
|
type: string
|
|
type: object
|
|
type: array
|
|
type: object
|
|
required:
|
|
- metadata
|
|
- spec
|
|
type: object
|
|
version: v1alpha1
|
|
versions:
|
|
- name: v1alpha1
|
|
served: true
|
|
storage: true
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: application-controller
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-application-controller
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: dex-server
|
|
app.kubernetes.io/name: argocd-dex-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-dex-server
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: redis
|
|
app.kubernetes.io/name: argocd-redis
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-redis
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-server
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: Role
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: application-controller
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-application-controller
|
|
rules:
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
- configmaps
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- applications
|
|
- appprojects
|
|
verbs:
|
|
- create
|
|
- get
|
|
- list
|
|
- watch
|
|
- update
|
|
- patch
|
|
- delete
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- events
|
|
verbs:
|
|
- create
|
|
- list
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: Role
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: dex-server
|
|
app.kubernetes.io/name: argocd-dex-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-dex-server
|
|
rules:
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
- configmaps
|
|
verbs:
|
|
- get
|
|
- list
|
|
- watch
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: Role
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: redis
|
|
app.kubernetes.io/name: argocd-redis
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-redis
|
|
rules:
|
|
- apiGroups:
|
|
- security.openshift.io
|
|
resourceNames:
|
|
- nonroot
|
|
resources:
|
|
- securitycontextconstraints
|
|
verbs:
|
|
- use
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: Role
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-server
|
|
rules:
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- secrets
|
|
- configmaps
|
|
verbs:
|
|
- create
|
|
- get
|
|
- list
|
|
- watch
|
|
- update
|
|
- patch
|
|
- delete
|
|
- apiGroups:
|
|
- argoproj.io
|
|
resources:
|
|
- applications
|
|
- appprojects
|
|
verbs:
|
|
- create
|
|
- get
|
|
- list
|
|
- watch
|
|
- update
|
|
- delete
|
|
- patch
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- events
|
|
verbs:
|
|
- create
|
|
- list
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: application-controller
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-application-controller
|
|
rules:
|
|
- apiGroups:
|
|
- '*'
|
|
resources:
|
|
- '*'
|
|
verbs:
|
|
- '*'
|
|
- nonResourceURLs:
|
|
- '*'
|
|
verbs:
|
|
- '*'
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-server
|
|
rules:
|
|
- apiGroups:
|
|
- '*'
|
|
resources:
|
|
- '*'
|
|
verbs:
|
|
- delete
|
|
- get
|
|
- patch
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- events
|
|
verbs:
|
|
- list
|
|
- apiGroups:
|
|
- ""
|
|
resources:
|
|
- pods
|
|
- pods/log
|
|
verbs:
|
|
- get
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: RoleBinding
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: application-controller
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-application-controller
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: Role
|
|
name: argocd-application-controller
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argocd-application-controller
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: RoleBinding
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: dex-server
|
|
app.kubernetes.io/name: argocd-dex-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-dex-server
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: Role
|
|
name: argocd-dex-server
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argocd-dex-server
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: RoleBinding
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: redis
|
|
app.kubernetes.io/name: argocd-redis
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-redis
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: Role
|
|
name: argocd-redis
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argocd-redis
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: RoleBinding
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-server
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: Role
|
|
name: argocd-server
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argocd-server
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: application-controller
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-application-controller
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: argocd-application-controller
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argocd-application-controller
|
|
namespace: argocd
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-server
|
|
roleRef:
|
|
apiGroup: rbac.authorization.k8s.io
|
|
kind: ClusterRole
|
|
name: argocd-server
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: argocd-server
|
|
namespace: argocd
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-cm
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-cm
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-gpg-keys-cm
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-gpg-keys-cm
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-rbac-cm
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-rbac-cm
|
|
---
|
|
apiVersion: v1
|
|
data:
|
|
ssh_known_hosts: |
|
|
bitbucket.org ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeLzaFPsw2kNvEcqTKl/VqLat/MaB33pZy0y3rJZtnqwR2qOOvbwKZYKiEO1O6VqNEBxKvJJelCq0dTXWT5pbO2gDXC6h6QDXCaHo6pOHGPUy+YBaGQRGuSusMEASYiWunYN0vCAI8QaXnWMXNMdFP3jHAJH0eDsoiGnLPBlBp4TNm6rYI74nMzgz3B9IikW4WVK+dc8KZJZWYjAuORU3jc1c/NPskD2ASinf8v3xnfXeukU0sJ5N6m5E8VLjObPEO+mN2t/FZTMZLiFqPWc/ALSqnMnnhwrNi2rbfg/rd/IpL8Le3pSBne8+seeFVBoGqzHM9yXw==
|
|
github.com ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
|
|
gitlab.com ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFSMqzJeV9rUzU4kWitGjeR4PWSa29SPqJ1fVkhtj3Hw9xjLVXVYrU9QlYWrOLXBpQ6KWjbjTDTdDkoohFzgbEY=
|
|
gitlab.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAfuCHKVTjquxvt6CM6tdG4SLp1Btn/nOeHHE5UOzRdf
|
|
gitlab.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCsj2bNKTBSpIYDEGk9KxsGh3mySTRgMtXL583qmBpzeQ+jqCMRgBqB98u3z++J1sKlXHWfM9dyhSevkMwSbhoR8XIq/U0tCNyokEi/ueaBMCvbcTHhO7FcwzY92WK4Yt0aGROY5qX2UKSeOvuP4D6TPqKF1onrSzH9bx9XUf2lEdWT/ia1NEKjunUqu1xOB/StKDHMoX4/OKyIzuS0q/T1zOATthvasJFoPrAjkohTyaDUz2LN5JoH839hViyEG82yB+MjcFV5MU3N1l1QL3cVUCh93xSaua1N85qivl+siMkPGbO5xR/En4iEY6K2XPASUEMaieWVNTRCtJ4S8H+9
|
|
ssh.dev.azure.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC7Hr1oTWqNqOlzGJOfGJ4NakVyIzf1rXYd4d7wo6jBlkLvCA4odBlL0mDUyZ0/QUfTTqeu+tm22gOsv+VrVTMk6vwRU75gY/y9ut5Mb3bR5BV58dKXyq9A9UeB5Cakehn5Zgm6x1mKoVyf+FFn26iYqXJRgzIZZcZ5V6hrE0Qg39kZm4az48o0AUbf6Sp4SLdvnuMa2sVNwHBboS7EJkm57XQPVU3/QpyNLHbWDdzwtrlS+ez30S3AdYhLKEOxAG8weOnyrtLJAUen9mTkol8oII1edf7mWWbWVf0nBmly21+nZcmCTISQBtdcyPaEno7fFQMDD26/s0lfKob4Kw8H
|
|
vs-ssh.visualstudio.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC7Hr1oTWqNqOlzGJOfGJ4NakVyIzf1rXYd4d7wo6jBlkLvCA4odBlL0mDUyZ0/QUfTTqeu+tm22gOsv+VrVTMk6vwRU75gY/y9ut5Mb3bR5BV58dKXyq9A9UeB5Cakehn5Zgm6x1mKoVyf+FFn26iYqXJRgzIZZcZ5V6hrE0Qg39kZm4az48o0AUbf6Sp4SLdvnuMa2sVNwHBboS7EJkm57XQPVU3/QpyNLHbWDdzwtrlS+ez30S3AdYhLKEOxAG8weOnyrtLJAUen9mTkol8oII1edf7mWWbWVf0nBmly21+nZcmCTISQBtdcyPaEno7fFQMDD26/s0lfKob4Kw8H
|
|
kind: ConfigMap
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-ssh-known-hosts-cm
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-ssh-known-hosts-cm
|
|
---
|
|
apiVersion: v1
|
|
data: null
|
|
kind: ConfigMap
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-tls-certs-cm
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-tls-certs-cm
|
|
---
|
|
apiVersion: v1
|
|
kind: Secret
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-secret
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-secret
|
|
type: Opaque
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: dex-server
|
|
app.kubernetes.io/name: argocd-dex-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-dex-server
|
|
spec:
|
|
ports:
|
|
- name: http
|
|
port: 5556
|
|
protocol: TCP
|
|
targetPort: 5556
|
|
- name: grpc
|
|
port: 5557
|
|
protocol: TCP
|
|
targetPort: 5557
|
|
- name: metrics
|
|
port: 5558
|
|
protocol: TCP
|
|
targetPort: 5558
|
|
selector:
|
|
app.kubernetes.io/name: argocd-dex-server
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: metrics
|
|
app.kubernetes.io/name: argocd-metrics
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-metrics
|
|
spec:
|
|
ports:
|
|
- name: metrics
|
|
port: 8082
|
|
protocol: TCP
|
|
targetPort: 8082
|
|
selector:
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: redis
|
|
app.kubernetes.io/name: argocd-redis
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-redis
|
|
spec:
|
|
ports:
|
|
- name: tcp-redis
|
|
port: 6379
|
|
targetPort: 6379
|
|
selector:
|
|
app.kubernetes.io/name: argocd-redis
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: repo-server
|
|
app.kubernetes.io/name: argocd-repo-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-repo-server
|
|
spec:
|
|
ports:
|
|
- name: server
|
|
port: 8081
|
|
protocol: TCP
|
|
targetPort: 8081
|
|
- name: metrics
|
|
port: 8084
|
|
protocol: TCP
|
|
targetPort: 8084
|
|
selector:
|
|
app.kubernetes.io/name: argocd-repo-server
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-server
|
|
spec:
|
|
ports:
|
|
- name: http
|
|
port: 80
|
|
protocol: TCP
|
|
targetPort: 8080
|
|
- name: https
|
|
port: 443
|
|
protocol: TCP
|
|
targetPort: 8080
|
|
selector:
|
|
app.kubernetes.io/name: argocd-server
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/name: argocd-server-metrics
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-server-metrics
|
|
spec:
|
|
ports:
|
|
- name: metrics
|
|
port: 8083
|
|
protocol: TCP
|
|
targetPort: 8083
|
|
selector:
|
|
app.kubernetes.io/name: argocd-server
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: dex-server
|
|
app.kubernetes.io/name: argocd-dex-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-dex-server
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-dex-server
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-dex-server
|
|
spec:
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/part-of: argocd
|
|
topologyKey: kubernetes.io/hostname
|
|
weight: 5
|
|
containers:
|
|
- command:
|
|
- /shared/argocd-util
|
|
- rundex
|
|
image: quay.io/dexidp/dex:v2.25.0
|
|
imagePullPolicy: Always
|
|
name: dex
|
|
ports:
|
|
- containerPort: 5556
|
|
- containerPort: 5557
|
|
- containerPort: 5558
|
|
volumeMounts:
|
|
- mountPath: /shared
|
|
name: static-files
|
|
initContainers:
|
|
- command:
|
|
- cp
|
|
- -n
|
|
- /usr/local/bin/argocd-util
|
|
- /shared
|
|
image: argoproj/argocd:v1.8.7
|
|
imagePullPolicy: Always
|
|
name: copyutil
|
|
volumeMounts:
|
|
- mountPath: /shared
|
|
name: static-files
|
|
serviceAccountName: argocd-dex-server
|
|
volumes:
|
|
- emptyDir: {}
|
|
name: static-files
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: redis
|
|
app.kubernetes.io/name: argocd-redis
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-redis
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-redis
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-redis
|
|
spec:
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-redis
|
|
topologyKey: kubernetes.io/hostname
|
|
weight: 100
|
|
- podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/part-of: argocd
|
|
topologyKey: kubernetes.io/hostname
|
|
weight: 5
|
|
containers:
|
|
- args:
|
|
- --save
|
|
- ""
|
|
- --appendonly
|
|
- "no"
|
|
image: redis:5.0.11-alpine
|
|
imagePullPolicy: Always
|
|
name: redis
|
|
ports:
|
|
- containerPort: 6379
|
|
securityContext:
|
|
fsGroup: 1000
|
|
runAsGroup: 1000
|
|
runAsNonRoot: true
|
|
runAsUser: 1000
|
|
serviceAccountName: argocd-redis
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: repo-server
|
|
app.kubernetes.io/name: argocd-repo-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-repo-server
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-repo-server
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-repo-server
|
|
spec:
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-repo-server
|
|
topologyKey: kubernetes.io/hostname
|
|
weight: 100
|
|
- podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/part-of: argocd
|
|
topologyKey: kubernetes.io/hostname
|
|
weight: 5
|
|
automountServiceAccountToken: false
|
|
containers:
|
|
- command:
|
|
- uid_entrypoint.sh
|
|
- argocd-repo-server
|
|
- --redis
|
|
- argocd-redis:6379
|
|
image: argoproj/argocd:v1.8.7
|
|
imagePullPolicy: Always
|
|
name: argocd-repo-server
|
|
ports:
|
|
- containerPort: 8081
|
|
- containerPort: 8084
|
|
readinessProbe:
|
|
initialDelaySeconds: 5
|
|
periodSeconds: 10
|
|
tcpSocket:
|
|
port: 8081
|
|
volumeMounts:
|
|
- mountPath: /app/config/ssh
|
|
name: ssh-known-hosts
|
|
- mountPath: /app/config/tls
|
|
name: tls-certs
|
|
- mountPath: /app/config/gpg/source
|
|
name: gpg-keys
|
|
- mountPath: /app/config/gpg/keys
|
|
name: gpg-keyring
|
|
volumes:
|
|
- configMap:
|
|
name: argocd-ssh-known-hosts-cm
|
|
name: ssh-known-hosts
|
|
- configMap:
|
|
name: argocd-tls-certs-cm
|
|
name: tls-certs
|
|
- configMap:
|
|
name: argocd-gpg-keys-cm
|
|
name: gpg-keys
|
|
- emptyDir: {}
|
|
name: gpg-keyring
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: server
|
|
app.kubernetes.io/name: argocd-server
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-server
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-server
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-server
|
|
spec:
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-server
|
|
topologyKey: kubernetes.io/hostname
|
|
weight: 100
|
|
- podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/part-of: argocd
|
|
topologyKey: kubernetes.io/hostname
|
|
weight: 5
|
|
containers:
|
|
- command:
|
|
- argocd-server
|
|
- --staticassets
|
|
- /shared/app
|
|
image: argoproj/argocd:v1.8.7
|
|
imagePullPolicy: Always
|
|
name: argocd-server
|
|
ports:
|
|
- containerPort: 8080
|
|
- containerPort: 8083
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /healthz
|
|
port: 8080
|
|
initialDelaySeconds: 3
|
|
periodSeconds: 30
|
|
volumeMounts:
|
|
- mountPath: /app/config/ssh
|
|
name: ssh-known-hosts
|
|
- mountPath: /app/config/tls
|
|
name: tls-certs
|
|
serviceAccountName: argocd-server
|
|
volumes:
|
|
- emptyDir: {}
|
|
name: static-files
|
|
- configMap:
|
|
name: argocd-ssh-known-hosts-cm
|
|
name: ssh-known-hosts
|
|
- configMap:
|
|
name: argocd-tls-certs-cm
|
|
name: tls-certs
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: StatefulSet
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/component: application-controller
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
app.kubernetes.io/part-of: argocd
|
|
name: argocd-application-controller
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
serviceName: argocd-application-controller
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
spec:
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: argocd-application-controller
|
|
topologyKey: kubernetes.io/hostname
|
|
weight: 100
|
|
- podAffinityTerm:
|
|
labelSelector:
|
|
matchLabels:
|
|
app.kubernetes.io/part-of: argocd
|
|
topologyKey: kubernetes.io/hostname
|
|
weight: 5
|
|
containers:
|
|
- command:
|
|
- argocd-application-controller
|
|
- --status-processors
|
|
- "20"
|
|
- --operation-processors
|
|
- "10"
|
|
image: argoproj/argocd:v1.8.7
|
|
imagePullPolicy: Always
|
|
livenessProbe:
|
|
httpGet:
|
|
path: /healthz
|
|
port: 8082
|
|
initialDelaySeconds: 5
|
|
periodSeconds: 10
|
|
name: argocd-application-controller
|
|
ports:
|
|
- containerPort: 8082
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /healthz
|
|
port: 8082
|
|
initialDelaySeconds: 5
|
|
periodSeconds: 10
|
|
serviceAccountName: argocd-application-controller
|