github.com/argoproj-labs/argocd-operator@v0.10.0/deploy/olm-catalog/argocd-operator/0.1.0/argoproj.io_argocds.yaml (about)

     1  apiVersion: apiextensions.k8s.io/v1
     2  kind: CustomResourceDefinition
     3  metadata:
     4    annotations:
     5      controller-gen.kubebuilder.io/version: v0.6.1
     6    creationTimestamp: null
     7    name: argocds.argoproj.io
     8  spec:
     9    group: argoproj.io
    10    names:
    11      kind: ArgoCD
    12      listKind: ArgoCDList
    13      plural: argocds
    14      singular: argocd
    15    scope: Namespaced
    16    versions:
    17    - name: v1alpha1
    18      schema:
    19        openAPIV3Schema:
    20          description: ArgoCD is the Schema for the argocds API
    21          properties:
    22            apiVersion:
    23              description: 'APIVersion defines the versioned schema of this representation
    24                of an object. Servers should convert recognized schemas to the latest
    25                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    26              type: string
    27            kind:
    28              description: 'Kind is a string value representing the REST resource this
    29                object represents. Servers may infer this from the endpoint the client
    30                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    31              type: string
    32            metadata:
    33              type: object
    34            spec:
    35              description: ArgoCDSpec defines the desired state of ArgoCD
    36              properties:
    37                applicationInstanceLabelKey:
    38                  description: ApplicationInstanceLabelKey is the key name where Argo
    39                    CD injects the app name as a tracking label.
    40                  type: string
    41                applicationSet:
    42                  description: ArgoCDApplicationSet defines whether the Argo CD ApplicationSet
    43                    controller should be installed.
    44                  properties:
    45                    image:
    46                      description: Image is the Argo CD ApplicationSet image (optional)
    47                      type: string
    48                    logLevel:
    49                      description: LogLevel describes the log level that should be used
    50                        by the ApplicationSet controller. Defaults to ArgoCDDefaultLogLevel
    51                        if not set.  Valid options are debug,info, error, and warn.
    52                      type: string
    53                    resources:
    54                      description: Resources defines the Compute Resources required
    55                        by the container for ApplicationSet.
    56                      properties:
    57                        limits:
    58                          additionalProperties:
    59                            anyOf:
    60                            - type: integer
    61                            - type: string
    62                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
    63                            x-kubernetes-int-or-string: true
    64                          description: 'Limits describes the maximum amount of compute
    65                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
    66                          type: object
    67                        requests:
    68                          additionalProperties:
    69                            anyOf:
    70                            - type: integer
    71                            - type: string
    72                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
    73                            x-kubernetes-int-or-string: true
    74                          description: 'Requests describes the minimum amount of compute
    75                            resources required. If Requests is omitted for a container,
    76                            it defaults to Limits if that is explicitly specified, otherwise
    77                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
    78                          type: object
    79                      type: object
    80                    version:
    81                      description: Version is the Argo CD ApplicationSet image tag.
    82                        (optional)
    83                      type: string
    84                  type: object
    85                configManagementPlugins:
    86                  description: ConfigManagementPlugins is used to specify additional
    87                    config management plugins.
    88                  type: string
    89                controller:
    90                  description: Controller defines the Application Controller options
    91                    for ArgoCD.
    92                  properties:
    93                    appSync:
    94                      description: "AppSync is used to control the sync frequency, by
    95                        default the ArgoCD controller polls Git every 3m by default.
    96                        \n Set this to a duration, e.g. 10m or 600s to control the synchronisation
    97                        frequency."
    98                      type: string
    99                    env:
   100                      description: Env lets you specify environment for application
   101                        controller pods
   102                      items:
   103                        description: EnvVar represents an environment variable present
   104                          in a Container.
   105                        properties:
   106                          name:
   107                            description: Name of the environment variable. Must be a
   108                              C_IDENTIFIER.
   109                            type: string
   110                          value:
   111                            description: 'Variable references $(VAR_NAME) are expanded
   112                              using the previous defined environment variables in the
   113                              container and any service environment variables. If a
   114                              variable cannot be resolved, the reference in the input
   115                              string will be unchanged. The $(VAR_NAME) syntax can be
   116                              escaped with a double $$, ie: $$(VAR_NAME). Escaped references
   117                              will never be expanded, regardless of whether the variable
   118                              exists or not. Defaults to "".'
   119                            type: string
   120                          valueFrom:
   121                            description: Source for the environment variable's value.
   122                              Cannot be used if value is not empty.
   123                            properties:
   124                              configMapKeyRef:
   125                                description: Selects a key of a ConfigMap.
   126                                properties:
   127                                  key:
   128                                    description: The key to select.
   129                                    type: string
   130                                  name:
   131                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   132                                      TODO: Add other useful fields. apiVersion, kind,
   133                                      uid?'
   134                                    type: string
   135                                  optional:
   136                                    description: Specify whether the ConfigMap or its
   137                                      key must be defined
   138                                    type: boolean
   139                                required:
   140                                - key
   141                                type: object
   142                              fieldRef:
   143                                description: 'Selects a field of the pod: supports metadata.name,
   144                                  metadata.namespace, `metadata.labels[''<KEY>'']`,
   145                                  `metadata.annotations[''<KEY>'']`, spec.nodeName,
   146                                  spec.serviceAccountName, status.hostIP, status.podIP,
   147                                  status.podIPs.'
   148                                properties:
   149                                  apiVersion:
   150                                    description: Version of the schema the FieldPath
   151                                      is written in terms of, defaults to "v1".
   152                                    type: string
   153                                  fieldPath:
   154                                    description: Path of the field to select in the
   155                                      specified API version.
   156                                    type: string
   157                                required:
   158                                - fieldPath
   159                                type: object
   160                              resourceFieldRef:
   161                                description: 'Selects a resource of the container: only
   162                                  resources limits and requests (limits.cpu, limits.memory,
   163                                  limits.ephemeral-storage, requests.cpu, requests.memory
   164                                  and requests.ephemeral-storage) are currently supported.'
   165                                properties:
   166                                  containerName:
   167                                    description: 'Container name: required for volumes,
   168                                      optional for env vars'
   169                                    type: string
   170                                  divisor:
   171                                    anyOf:
   172                                    - type: integer
   173                                    - type: string
   174                                    description: Specifies the output format of the
   175                                      exposed resources, defaults to "1"
   176                                    pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   177                                    x-kubernetes-int-or-string: true
   178                                  resource:
   179                                    description: 'Required: resource to select'
   180                                    type: string
   181                                required:
   182                                - resource
   183                                type: object
   184                              secretKeyRef:
   185                                description: Selects a key of a secret in the pod's
   186                                  namespace
   187                                properties:
   188                                  key:
   189                                    description: The key of the secret to select from.  Must
   190                                      be a valid secret key.
   191                                    type: string
   192                                  name:
   193                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   194                                      TODO: Add other useful fields. apiVersion, kind,
   195                                      uid?'
   196                                    type: string
   197                                  optional:
   198                                    description: Specify whether the Secret or its key
   199                                      must be defined
   200                                    type: boolean
   201                                required:
   202                                - key
   203                                type: object
   204                            type: object
   205                        required:
   206                        - name
   207                        type: object
   208                      type: array
   209                    logFormat:
   210                      description: LogFormat refers to the log format used by the Application
   211                        Controller component. Defaults to ArgoCDDefaultLogFormat if
   212                        not configured. Valid options are text or json.
   213                      type: string
   214                    logLevel:
   215                      description: LogLevel refers to the log level used by the Application
   216                        Controller component. Defaults to ArgoCDDefaultLogLevel if not
   217                        configured. Valid options are debug, info, error, and warn.
   218                      type: string
   219                    parallelismLimit:
   220                      description: ParallelismLimit defines the limit for parallel kubectl
   221                        operations
   222                      format: int32
   223                      type: integer
   224                    processors:
   225                      description: Processors contains the options for the Application
   226                        Controller processors.
   227                      properties:
   228                        operation:
   229                          description: Operation is the number of application operation
   230                            processors.
   231                          format: int32
   232                          type: integer
   233                        status:
   234                          description: Status is the number of application status processors.
   235                          format: int32
   236                          type: integer
   237                      type: object
   238                    resources:
   239                      description: Resources defines the Compute Resources required
   240                        by the container for the Application Controller.
   241                      properties:
   242                        limits:
   243                          additionalProperties:
   244                            anyOf:
   245                            - type: integer
   246                            - type: string
   247                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   248                            x-kubernetes-int-or-string: true
   249                          description: 'Limits describes the maximum amount of compute
   250                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   251                          type: object
   252                        requests:
   253                          additionalProperties:
   254                            anyOf:
   255                            - type: integer
   256                            - type: string
   257                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   258                            x-kubernetes-int-or-string: true
   259                          description: 'Requests describes the minimum amount of compute
   260                            resources required. If Requests is omitted for a container,
   261                            it defaults to Limits if that is explicitly specified, otherwise
   262                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   263                          type: object
   264                      type: object
   265                    sharding:
   266                      description: Sharding contains the options for the Application
   267                        Controller sharding configuration.
   268                      properties:
   269                        enabled:
   270                          description: Enabled defines whether sharding should be enabled
   271                            on the Application Controller component.
   272                          type: boolean
   273                        replicas:
   274                          description: Replicas defines the number of replicas to run
   275                            in the Application controller shard.
   276                          format: int32
   277                          type: integer
   278                      type: object
   279                  type: object
   280                dex:
   281                  description: Dex defines the Dex server options for ArgoCD.
   282                  properties:
   283                    config:
   284                      description: Config is the dex connector configuration.
   285                      type: string
   286                    groups:
   287                      description: Optional list of required groups a user must be a
   288                        member of
   289                      items:
   290                        type: string
   291                      type: array
   292                    image:
   293                      description: Image is the Dex container image.
   294                      type: string
   295                    openShiftOAuth:
   296                      description: OpenShiftOAuth enables OpenShift OAuth authentication
   297                        for the Dex server.
   298                      type: boolean
   299                    resources:
   300                      description: Resources defines the Compute Resources required
   301                        by the container for Dex.
   302                      properties:
   303                        limits:
   304                          additionalProperties:
   305                            anyOf:
   306                            - type: integer
   307                            - type: string
   308                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   309                            x-kubernetes-int-or-string: true
   310                          description: 'Limits describes the maximum amount of compute
   311                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   312                          type: object
   313                        requests:
   314                          additionalProperties:
   315                            anyOf:
   316                            - type: integer
   317                            - type: string
   318                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   319                            x-kubernetes-int-or-string: true
   320                          description: 'Requests describes the minimum amount of compute
   321                            resources required. If Requests is omitted for a container,
   322                            it defaults to Limits if that is explicitly specified, otherwise
   323                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   324                          type: object
   325                      type: object
   326                    version:
   327                      description: Version is the Dex container image tag.
   328                      type: string
   329                  type: object
   330                disableAdmin:
   331                  description: DisableAdmin will disable the admin user.
   332                  type: boolean
   333                gaAnonymizeUsers:
   334                  description: GAAnonymizeUsers toggles user IDs being hashed before
   335                    sending to google analytics.
   336                  type: boolean
   337                gaTrackingID:
   338                  description: GATrackingID is the google analytics tracking ID to use.
   339                  type: string
   340                grafana:
   341                  description: Grafana defines the Grafana server options for ArgoCD.
   342                  properties:
   343                    enabled:
   344                      description: Enabled will toggle Grafana support globally for
   345                        ArgoCD.
   346                      type: boolean
   347                    host:
   348                      description: Host is the hostname to use for Ingress/Route resources.
   349                      type: string
   350                    image:
   351                      description: Image is the Grafana container image.
   352                      type: string
   353                    ingress:
   354                      description: Ingress defines the desired state for an Ingress
   355                        for the Grafana component.
   356                      properties:
   357                        annotations:
   358                          additionalProperties:
   359                            type: string
   360                          description: Annotations is the map of annotations to apply
   361                            to the Ingress.
   362                          type: object
   363                        enabled:
   364                          description: Enabled will toggle the creation of the Ingress.
   365                          type: boolean
   366                        path:
   367                          description: Path used for the Ingress resource.
   368                          type: string
   369                        tls:
   370                          description: TLS configuration. Currently the Ingress only
   371                            supports a single TLS port, 443. If multiple members of
   372                            this list specify different hosts, they will be multiplexed
   373                            on the same port according to the hostname specified through
   374                            the SNI TLS extension, if the ingress controller fulfilling
   375                            the ingress supports SNI.
   376                          items:
   377                            description: IngressTLS describes the transport layer security
   378                              associated with an Ingress.
   379                            properties:
   380                              hosts:
   381                                description: Hosts are a list of hosts included in the
   382                                  TLS certificate. The values in this list must match
   383                                  the name/s used in the tlsSecret. Defaults to the
   384                                  wildcard host setting for the loadbalancer controller
   385                                  fulfilling this Ingress, if left unspecified.
   386                                items:
   387                                  type: string
   388                                type: array
   389                                x-kubernetes-list-type: atomic
   390                              secretName:
   391                                description: SecretName is the name of the secret used
   392                                  to terminate TLS traffic on port 443. Field is left
   393                                  optional to allow TLS routing based on SNI hostname
   394                                  alone. If the SNI host in a listener conflicts with
   395                                  the "Host" header field used by an IngressRule, the
   396                                  SNI host is used for termination and value of the
   397                                  Host header is used for routing.
   398                                type: string
   399                            type: object
   400                          type: array
   401                      required:
   402                      - enabled
   403                      type: object
   404                    resources:
   405                      description: Resources defines the Compute Resources required
   406                        by the container for Grafana.
   407                      properties:
   408                        limits:
   409                          additionalProperties:
   410                            anyOf:
   411                            - type: integer
   412                            - type: string
   413                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   414                            x-kubernetes-int-or-string: true
   415                          description: 'Limits describes the maximum amount of compute
   416                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   417                          type: object
   418                        requests:
   419                          additionalProperties:
   420                            anyOf:
   421                            - type: integer
   422                            - type: string
   423                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   424                            x-kubernetes-int-or-string: true
   425                          description: 'Requests describes the minimum amount of compute
   426                            resources required. If Requests is omitted for a container,
   427                            it defaults to Limits if that is explicitly specified, otherwise
   428                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   429                          type: object
   430                      type: object
   431                    route:
   432                      description: Route defines the desired state for an OpenShift
   433                        Route for the Grafana component.
   434                      properties:
   435                        annotations:
   436                          additionalProperties:
   437                            type: string
   438                          description: Annotations is the map of annotations to use
   439                            for the Route resource.
   440                          type: object
   441                        enabled:
   442                          description: Enabled will toggle the creation of the OpenShift
   443                            Route.
   444                          type: boolean
   445                        labels:
   446                          additionalProperties:
   447                            type: string
   448                          description: Labels is the map of labels to use for the Route
   449                            resource
   450                          type: object
   451                        path:
   452                          description: Path the router watches for, to route traffic
   453                            for to the service.
   454                          type: string
   455                        tls:
   456                          description: TLS provides the ability to configure certificates
   457                            and termination for the Route.
   458                          properties:
   459                            caCertificate:
   460                              description: caCertificate provides the cert authority
   461                                certificate contents
   462                              type: string
   463                            certificate:
   464                              description: certificate provides certificate contents
   465                              type: string
   466                            destinationCACertificate:
   467                              description: destinationCACertificate provides the contents
   468                                of the ca certificate of the final destination.  When
   469                                using reencrypt termination this file should be provided
   470                                in order to have routers use it for health checks on
   471                                the secure connection. If this field is not specified,
   472                                the router may provide its own destination CA and perform
   473                                hostname validation using the short service name (service.namespace.svc),
   474                                which allows infrastructure generated certificates to
   475                                automatically verify.
   476                              type: string
   477                            insecureEdgeTerminationPolicy:
   478                              description: "insecureEdgeTerminationPolicy indicates
   479                                the desired behavior for insecure connections to a route.
   480                                While each router may make its own decisions on which
   481                                ports to expose, this is normally port 80. \n * Allow
   482                                - traffic is sent to the server on the insecure port
   483                                (default) * Disable - no traffic is allowed on the insecure
   484                                port. * Redirect - clients are redirected to the secure
   485                                port."
   486                              type: string
   487                            key:
   488                              description: key provides key file contents
   489                              type: string
   490                            termination:
   491                              description: termination indicates termination type.
   492                              type: string
   493                          required:
   494                          - termination
   495                          type: object
   496                        wildcardPolicy:
   497                          description: WildcardPolicy if any for the route. Currently
   498                            only 'Subdomain' or 'None' is allowed.
   499                          type: string
   500                      required:
   501                      - enabled
   502                      type: object
   503                    size:
   504                      description: Size is the replica count for the Grafana Deployment.
   505                      format: int32
   506                      type: integer
   507                    version:
   508                      description: Version is the Grafana container image tag.
   509                      type: string
   510                  required:
   511                  - enabled
   512                  type: object
   513                ha:
   514                  description: HA options for High Availability support for the Redis
   515                    component.
   516                  properties:
   517                    enabled:
   518                      description: Enabled will toggle HA support globally for Argo
   519                        CD.
   520                      type: boolean
   521                    redisProxyImage:
   522                      description: RedisProxyImage is the Redis HAProxy container image.
   523                      type: string
   524                    redisProxyVersion:
   525                      description: RedisProxyVersion is the Redis HAProxy container
   526                        image tag.
   527                      type: string
   528                    resources:
   529                      description: Resources defines the Compute Resources required
   530                        by the container for HA.
   531                      properties:
   532                        limits:
   533                          additionalProperties:
   534                            anyOf:
   535                            - type: integer
   536                            - type: string
   537                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   538                            x-kubernetes-int-or-string: true
   539                          description: 'Limits describes the maximum amount of compute
   540                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   541                          type: object
   542                        requests:
   543                          additionalProperties:
   544                            anyOf:
   545                            - type: integer
   546                            - type: string
   547                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   548                            x-kubernetes-int-or-string: true
   549                          description: 'Requests describes the minimum amount of compute
   550                            resources required. If Requests is omitted for a container,
   551                            it defaults to Limits if that is explicitly specified, otherwise
   552                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   553                          type: object
   554                      type: object
   555                  required:
   556                  - enabled
   557                  type: object
   558                helpChatText:
   559                  description: HelpChatText is the text for getting chat help, defaults
   560                    to "Chat now!"
   561                  type: string
   562                helpChatURL:
   563                  description: HelpChatURL is the URL for getting chat help, this will
   564                    typically be your Slack channel for support.
   565                  type: string
   566                image:
   567                  description: Image is the ArgoCD container image for all ArgoCD components.
   568                  type: string
   569                import:
   570                  description: Import is the import/restore options for ArgoCD.
   571                  properties:
   572                    name:
   573                      description: Name of an ArgoCDExport from which to import data.
   574                      type: string
   575                    namespace:
   576                      description: Namespace for the ArgoCDExport, defaults to the same
   577                        namespace as the ArgoCD.
   578                      type: string
   579                  required:
   580                  - name
   581                  type: object
   582                initialRepositories:
   583                  description: InitialRepositories to configure Argo CD with upon creation
   584                    of the cluster.
   585                  type: string
   586                initialSSHKnownHosts:
   587                  description: InitialSSHKnownHosts defines the SSH known hosts data
   588                    upon creation of the cluster for connecting Git repositories via
   589                    SSH.
   590                  properties:
   591                    excludedefaulthosts:
   592                      description: ExcludeDefaultHosts describes whether you would like
   593                        to include the default list of SSH Known Hosts provided by ArgoCD.
   594                      type: boolean
   595                    keys:
   596                      description: Keys describes a custom set of SSH Known Hosts that
   597                        you would like to have included in your ArgoCD server.
   598                      type: string
   599                  type: object
   600                kustomizeBuildOptions:
   601                  description: KustomizeBuildOptions is used to specify build options/parameters
   602                    to use with `kustomize build`.
   603                  type: string
   604                kustomizeVersions:
   605                  description: KustomizeVersions is a listing of configured versions
   606                    of Kustomize to be made available within ArgoCD.
   607                  items:
   608                    description: KustomizeVersionSpec is used to specify information
   609                      about a kustomize version to be used within ArgoCD.
   610                    properties:
   611                      path:
   612                        description: Path is the path to a configured kustomize version
   613                          on the filesystem of your repo server.
   614                        type: string
   615                      version:
   616                        description: Version is a configured kustomize version in the
   617                          format of vX.Y.Z
   618                        type: string
   619                    type: object
   620                  type: array
   621                nodePlacement:
   622                  description: NodePlacement defines NodeSelectors and Taints for Argo
   623                    CD workloads
   624                  properties:
   625                    nodeSelector:
   626                      additionalProperties:
   627                        type: string
   628                      description: NodeSelector is a field of PodSpec, it is a map of
   629                        key value pairs used for node selection
   630                      type: object
   631                    tolerations:
   632                      description: Tolerations allow the pods to schedule onto nodes
   633                        with matching taints
   634                      items:
   635                        description: The pod this Toleration is attached to tolerates
   636                          any taint that matches the triple <key,value,effect> using
   637                          the matching operator <operator>.
   638                        properties:
   639                          effect:
   640                            description: Effect indicates the taint effect to match.
   641                              Empty means match all taint effects. When specified, allowed
   642                              values are NoSchedule, PreferNoSchedule and NoExecute.
   643                            type: string
   644                          key:
   645                            description: Key is the taint key that the toleration applies
   646                              to. Empty means match all taint keys. If the key is empty,
   647                              operator must be Exists; this combination means to match
   648                              all values and all keys.
   649                            type: string
   650                          operator:
   651                            description: Operator represents a key's relationship to
   652                              the value. Valid operators are Exists and Equal. Defaults
   653                              to Equal. Exists is equivalent to wildcard for value,
   654                              so that a pod can tolerate all taints of a particular
   655                              category.
   656                            type: string
   657                          tolerationSeconds:
   658                            description: TolerationSeconds represents the period of
   659                              time the toleration (which must be of effect NoExecute,
   660                              otherwise this field is ignored) tolerates the taint.
   661                              By default, it is not set, which means tolerate the taint
   662                              forever (do not evict). Zero and negative values will
   663                              be treated as 0 (evict immediately) by the system.
   664                            format: int64
   665                            type: integer
   666                          value:
   667                            description: Value is the taint value the toleration matches
   668                              to. If the operator is Exists, the value should be empty,
   669                              otherwise just a regular string.
   670                            type: string
   671                        type: object
   672                      type: array
   673                  type: object
   674                oidcConfig:
   675                  description: OIDCConfig is the OIDC configuration as an alternative
   676                    to dex.
   677                  type: string
   678                prometheus:
   679                  description: Prometheus defines the Prometheus server options for
   680                    ArgoCD.
   681                  properties:
   682                    enabled:
   683                      description: Enabled will toggle Prometheus support globally for
   684                        ArgoCD.
   685                      type: boolean
   686                    host:
   687                      description: Host is the hostname to use for Ingress/Route resources.
   688                      type: string
   689                    ingress:
   690                      description: Ingress defines the desired state for an Ingress
   691                        for the Prometheus component.
   692                      properties:
   693                        annotations:
   694                          additionalProperties:
   695                            type: string
   696                          description: Annotations is the map of annotations to apply
   697                            to the Ingress.
   698                          type: object
   699                        enabled:
   700                          description: Enabled will toggle the creation of the Ingress.
   701                          type: boolean
   702                        path:
   703                          description: Path used for the Ingress resource.
   704                          type: string
   705                        tls:
   706                          description: TLS configuration. Currently the Ingress only
   707                            supports a single TLS port, 443. If multiple members of
   708                            this list specify different hosts, they will be multiplexed
   709                            on the same port according to the hostname specified through
   710                            the SNI TLS extension, if the ingress controller fulfilling
   711                            the ingress supports SNI.
   712                          items:
   713                            description: IngressTLS describes the transport layer security
   714                              associated with an Ingress.
   715                            properties:
   716                              hosts:
   717                                description: Hosts are a list of hosts included in the
   718                                  TLS certificate. The values in this list must match
   719                                  the name/s used in the tlsSecret. Defaults to the
   720                                  wildcard host setting for the loadbalancer controller
   721                                  fulfilling this Ingress, if left unspecified.
   722                                items:
   723                                  type: string
   724                                type: array
   725                                x-kubernetes-list-type: atomic
   726                              secretName:
   727                                description: SecretName is the name of the secret used
   728                                  to terminate TLS traffic on port 443. Field is left
   729                                  optional to allow TLS routing based on SNI hostname
   730                                  alone. If the SNI host in a listener conflicts with
   731                                  the "Host" header field used by an IngressRule, the
   732                                  SNI host is used for termination and value of the
   733                                  Host header is used for routing.
   734                                type: string
   735                            type: object
   736                          type: array
   737                      required:
   738                      - enabled
   739                      type: object
   740                    route:
   741                      description: Route defines the desired state for an OpenShift
   742                        Route for the Prometheus component.
   743                      properties:
   744                        annotations:
   745                          additionalProperties:
   746                            type: string
   747                          description: Annotations is the map of annotations to use
   748                            for the Route resource.
   749                          type: object
   750                        enabled:
   751                          description: Enabled will toggle the creation of the OpenShift
   752                            Route.
   753                          type: boolean
   754                        labels:
   755                          additionalProperties:
   756                            type: string
   757                          description: Labels is the map of labels to use for the Route
   758                            resource
   759                          type: object
   760                        path:
   761                          description: Path the router watches for, to route traffic
   762                            for to the service.
   763                          type: string
   764                        tls:
   765                          description: TLS provides the ability to configure certificates
   766                            and termination for the Route.
   767                          properties:
   768                            caCertificate:
   769                              description: caCertificate provides the cert authority
   770                                certificate contents
   771                              type: string
   772                            certificate:
   773                              description: certificate provides certificate contents
   774                              type: string
   775                            destinationCACertificate:
   776                              description: destinationCACertificate provides the contents
   777                                of the ca certificate of the final destination.  When
   778                                using reencrypt termination this file should be provided
   779                                in order to have routers use it for health checks on
   780                                the secure connection. If this field is not specified,
   781                                the router may provide its own destination CA and perform
   782                                hostname validation using the short service name (service.namespace.svc),
   783                                which allows infrastructure generated certificates to
   784                                automatically verify.
   785                              type: string
   786                            insecureEdgeTerminationPolicy:
   787                              description: "insecureEdgeTerminationPolicy indicates
   788                                the desired behavior for insecure connections to a route.
   789                                While each router may make its own decisions on which
   790                                ports to expose, this is normally port 80. \n * Allow
   791                                - traffic is sent to the server on the insecure port
   792                                (default) * Disable - no traffic is allowed on the insecure
   793                                port. * Redirect - clients are redirected to the secure
   794                                port."
   795                              type: string
   796                            key:
   797                              description: key provides key file contents
   798                              type: string
   799                            termination:
   800                              description: termination indicates termination type.
   801                              type: string
   802                          required:
   803                          - termination
   804                          type: object
   805                        wildcardPolicy:
   806                          description: WildcardPolicy if any for the route. Currently
   807                            only 'Subdomain' or 'None' is allowed.
   808                          type: string
   809                      required:
   810                      - enabled
   811                      type: object
   812                    size:
   813                      description: Size is the replica count for the Prometheus StatefulSet.
   814                      format: int32
   815                      type: integer
   816                  required:
   817                  - enabled
   818                  type: object
   819                rbac:
   820                  description: RBAC defines the RBAC configuration for Argo CD.
   821                  properties:
   822                    defaultPolicy:
   823                      description: DefaultPolicy is the name of the default role which
   824                        Argo CD will falls back to, when authorizing API requests (optional).
   825                        If omitted or empty, users may be still be able to login, but
   826                        will see no apps, projects, etc...
   827                      type: string
   828                    policy:
   829                      description: 'Policy is CSV containing user-defined RBAC policies
   830                        and role definitions. Policy rules are in the form:   p, subject,
   831                        resource, action, object, effect Role definitions and bindings
   832                        are in the form:   g, subject, inherited-subject See https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/rbac.md
   833                        for additional information.'
   834                      type: string
   835                    scopes:
   836                      description: 'Scopes controls which OIDC scopes to examine during
   837                        rbac enforcement (in addition to `sub` scope). If omitted, defaults
   838                        to: ''[groups]''.'
   839                      type: string
   840                  type: object
   841                redis:
   842                  description: Redis defines the Redis server options for ArgoCD.
   843                  properties:
   844                    image:
   845                      description: Image is the Redis container image.
   846                      type: string
   847                    resources:
   848                      description: Resources defines the Compute Resources required
   849                        by the container for Redis.
   850                      properties:
   851                        limits:
   852                          additionalProperties:
   853                            anyOf:
   854                            - type: integer
   855                            - type: string
   856                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   857                            x-kubernetes-int-or-string: true
   858                          description: 'Limits describes the maximum amount of compute
   859                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   860                          type: object
   861                        requests:
   862                          additionalProperties:
   863                            anyOf:
   864                            - type: integer
   865                            - type: string
   866                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   867                            x-kubernetes-int-or-string: true
   868                          description: 'Requests describes the minimum amount of compute
   869                            resources required. If Requests is omitted for a container,
   870                            it defaults to Limits if that is explicitly specified, otherwise
   871                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
   872                          type: object
   873                      type: object
   874                    version:
   875                      description: Version is the Redis container image tag.
   876                      type: string
   877                  type: object
   878                repo:
   879                  description: Repo defines the repo server options for Argo CD.
   880                  properties:
   881                    autotls:
   882                      description: 'AutoTLS specifies the method to use for automatic
   883                        TLS configuration for the repo server The value specified here
   884                        can currently be: - openshift - Use the OpenShift service CA
   885                        to request TLS config'
   886                      type: string
   887                    env:
   888                      description: Env lets you specify environment for repo server
   889                        pods
   890                      items:
   891                        description: EnvVar represents an environment variable present
   892                          in a Container.
   893                        properties:
   894                          name:
   895                            description: Name of the environment variable. Must be a
   896                              C_IDENTIFIER.
   897                            type: string
   898                          value:
   899                            description: 'Variable references $(VAR_NAME) are expanded
   900                              using the previous defined environment variables in the
   901                              container and any service environment variables. If a
   902                              variable cannot be resolved, the reference in the input
   903                              string will be unchanged. The $(VAR_NAME) syntax can be
   904                              escaped with a double $$, ie: $$(VAR_NAME). Escaped references
   905                              will never be expanded, regardless of whether the variable
   906                              exists or not. Defaults to "".'
   907                            type: string
   908                          valueFrom:
   909                            description: Source for the environment variable's value.
   910                              Cannot be used if value is not empty.
   911                            properties:
   912                              configMapKeyRef:
   913                                description: Selects a key of a ConfigMap.
   914                                properties:
   915                                  key:
   916                                    description: The key to select.
   917                                    type: string
   918                                  name:
   919                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   920                                      TODO: Add other useful fields. apiVersion, kind,
   921                                      uid?'
   922                                    type: string
   923                                  optional:
   924                                    description: Specify whether the ConfigMap or its
   925                                      key must be defined
   926                                    type: boolean
   927                                required:
   928                                - key
   929                                type: object
   930                              fieldRef:
   931                                description: 'Selects a field of the pod: supports metadata.name,
   932                                  metadata.namespace, `metadata.labels[''<KEY>'']`,
   933                                  `metadata.annotations[''<KEY>'']`, spec.nodeName,
   934                                  spec.serviceAccountName, status.hostIP, status.podIP,
   935                                  status.podIPs.'
   936                                properties:
   937                                  apiVersion:
   938                                    description: Version of the schema the FieldPath
   939                                      is written in terms of, defaults to "v1".
   940                                    type: string
   941                                  fieldPath:
   942                                    description: Path of the field to select in the
   943                                      specified API version.
   944                                    type: string
   945                                required:
   946                                - fieldPath
   947                                type: object
   948                              resourceFieldRef:
   949                                description: 'Selects a resource of the container: only
   950                                  resources limits and requests (limits.cpu, limits.memory,
   951                                  limits.ephemeral-storage, requests.cpu, requests.memory
   952                                  and requests.ephemeral-storage) are currently supported.'
   953                                properties:
   954                                  containerName:
   955                                    description: 'Container name: required for volumes,
   956                                      optional for env vars'
   957                                    type: string
   958                                  divisor:
   959                                    anyOf:
   960                                    - type: integer
   961                                    - type: string
   962                                    description: Specifies the output format of the
   963                                      exposed resources, defaults to "1"
   964                                    pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
   965                                    x-kubernetes-int-or-string: true
   966                                  resource:
   967                                    description: 'Required: resource to select'
   968                                    type: string
   969                                required:
   970                                - resource
   971                                type: object
   972                              secretKeyRef:
   973                                description: Selects a key of a secret in the pod's
   974                                  namespace
   975                                properties:
   976                                  key:
   977                                    description: The key of the secret to select from.  Must
   978                                      be a valid secret key.
   979                                    type: string
   980                                  name:
   981                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
   982                                      TODO: Add other useful fields. apiVersion, kind,
   983                                      uid?'
   984                                    type: string
   985                                  optional:
   986                                    description: Specify whether the Secret or its key
   987                                      must be defined
   988                                    type: boolean
   989                                required:
   990                                - key
   991                                type: object
   992                            type: object
   993                        required:
   994                        - name
   995                        type: object
   996                      type: array
   997                    execTimeout:
   998                      description: ExecTimeout specifies the timeout in seconds for
   999                        tool execution
  1000                      type: integer
  1001                    image:
  1002                      description: Image is the ArgoCD Repo Server container image.
  1003                      type: string
  1004                    logFormat:
  1005                      description: LogFormat describes the log format that should be
  1006                        used by the Repo Server. Defaults to ArgoCDDefaultLogFormat
  1007                        if not configured. Valid options are text or json.
  1008                      type: string
  1009                    logLevel:
  1010                      description: LogLevel describes the log level that should be used
  1011                        by the Repo Server. Defaults to ArgoCDDefaultLogLevel if not
  1012                        set.  Valid options are debug, info, error, and warn.
  1013                      type: string
  1014                    mountsatoken:
  1015                      description: MountSAToken describes whether you would like to
  1016                        have the Repo server mount the service account token
  1017                      type: boolean
  1018                    resources:
  1019                      description: Resources defines the Compute Resources required
  1020                        by the container for Redis.
  1021                      properties:
  1022                        limits:
  1023                          additionalProperties:
  1024                            anyOf:
  1025                            - type: integer
  1026                            - type: string
  1027                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1028                            x-kubernetes-int-or-string: true
  1029                          description: 'Limits describes the maximum amount of compute
  1030                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1031                          type: object
  1032                        requests:
  1033                          additionalProperties:
  1034                            anyOf:
  1035                            - type: integer
  1036                            - type: string
  1037                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1038                            x-kubernetes-int-or-string: true
  1039                          description: 'Requests describes the minimum amount of compute
  1040                            resources required. If Requests is omitted for a container,
  1041                            it defaults to Limits if that is explicitly specified, otherwise
  1042                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1043                          type: object
  1044                      type: object
  1045                    serviceaccount:
  1046                      description: ServiceAccount defines the ServiceAccount user that
  1047                        you would like the Repo server to use
  1048                      type: string
  1049                    verifytls:
  1050                      description: VerifyTLS defines whether repo server API should
  1051                        be accessed using strict TLS validation
  1052                      type: boolean
  1053                    version:
  1054                      description: Version is the ArgoCD Repo Server container image
  1055                        tag.
  1056                      type: string
  1057                  type: object
  1058                repositoryCredentials:
  1059                  description: RepositoryCredentials are the Git pull credentials to
  1060                    configure Argo CD with upon creation of the cluster.
  1061                  type: string
  1062                resourceCustomizations:
  1063                  description: 'ResourceCustomizations customizes resource behavior.
  1064                    Keys are in the form: group/Kind.'
  1065                  type: string
  1066                resourceExclusions:
  1067                  description: ResourceExclusions is used to completely ignore entire
  1068                    classes of resource group/kinds.
  1069                  type: string
  1070                resourceInclusions:
  1071                  description: ResourceInclusions is used to only include specific group/kinds
  1072                    in the reconciliation process.
  1073                  type: string
  1074                server:
  1075                  description: Server defines the options for the ArgoCD Server component.
  1076                  properties:
  1077                    autoscale:
  1078                      description: Autoscale defines the autoscale options for the Argo
  1079                        CD Server component.
  1080                      properties:
  1081                        enabled:
  1082                          description: Enabled will toggle autoscaling support for the
  1083                            Argo CD Server component.
  1084                          type: boolean
  1085                        hpa:
  1086                          description: HPA defines the HorizontalPodAutoscaler options
  1087                            for the Argo CD Server component.
  1088                          properties:
  1089                            maxReplicas:
  1090                              description: upper limit for the number of pods that can
  1091                                be set by the autoscaler; cannot be smaller than MinReplicas.
  1092                              format: int32
  1093                              type: integer
  1094                            minReplicas:
  1095                              description: minReplicas is the lower limit for the number
  1096                                of replicas to which the autoscaler can scale down.  It
  1097                                defaults to 1 pod.  minReplicas is allowed to be 0 if
  1098                                the alpha feature gate HPAScaleToZero is enabled and
  1099                                at least one Object or External metric is configured.  Scaling
  1100                                is active as long as at least one metric value is available.
  1101                              format: int32
  1102                              type: integer
  1103                            scaleTargetRef:
  1104                              description: reference to scaled resource; horizontal
  1105                                pod autoscaler will learn the current resource consumption
  1106                                and will set the desired number of pods by using its
  1107                                Scale subresource.
  1108                              properties:
  1109                                apiVersion:
  1110                                  description: API version of the referent
  1111                                  type: string
  1112                                kind:
  1113                                  description: 'Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"'
  1114                                  type: string
  1115                                name:
  1116                                  description: 'Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names'
  1117                                  type: string
  1118                              required:
  1119                              - kind
  1120                              - name
  1121                              type: object
  1122                            targetCPUUtilizationPercentage:
  1123                              description: target average CPU utilization (represented
  1124                                as a percentage of requested CPU) over all the pods;
  1125                                if not specified the default autoscaling policy will
  1126                                be used.
  1127                              format: int32
  1128                              type: integer
  1129                          required:
  1130                          - maxReplicas
  1131                          - scaleTargetRef
  1132                          type: object
  1133                      required:
  1134                      - enabled
  1135                      type: object
  1136                    env:
  1137                      description: Env lets you specify environment for API server pods
  1138                      items:
  1139                        description: EnvVar represents an environment variable present
  1140                          in a Container.
  1141                        properties:
  1142                          name:
  1143                            description: Name of the environment variable. Must be a
  1144                              C_IDENTIFIER.
  1145                            type: string
  1146                          value:
  1147                            description: 'Variable references $(VAR_NAME) are expanded
  1148                              using the previous defined environment variables in the
  1149                              container and any service environment variables. If a
  1150                              variable cannot be resolved, the reference in the input
  1151                              string will be unchanged. The $(VAR_NAME) syntax can be
  1152                              escaped with a double $$, ie: $$(VAR_NAME). Escaped references
  1153                              will never be expanded, regardless of whether the variable
  1154                              exists or not. Defaults to "".'
  1155                            type: string
  1156                          valueFrom:
  1157                            description: Source for the environment variable's value.
  1158                              Cannot be used if value is not empty.
  1159                            properties:
  1160                              configMapKeyRef:
  1161                                description: Selects a key of a ConfigMap.
  1162                                properties:
  1163                                  key:
  1164                                    description: The key to select.
  1165                                    type: string
  1166                                  name:
  1167                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  1168                                      TODO: Add other useful fields. apiVersion, kind,
  1169                                      uid?'
  1170                                    type: string
  1171                                  optional:
  1172                                    description: Specify whether the ConfigMap or its
  1173                                      key must be defined
  1174                                    type: boolean
  1175                                required:
  1176                                - key
  1177                                type: object
  1178                              fieldRef:
  1179                                description: 'Selects a field of the pod: supports metadata.name,
  1180                                  metadata.namespace, `metadata.labels[''<KEY>'']`,
  1181                                  `metadata.annotations[''<KEY>'']`, spec.nodeName,
  1182                                  spec.serviceAccountName, status.hostIP, status.podIP,
  1183                                  status.podIPs.'
  1184                                properties:
  1185                                  apiVersion:
  1186                                    description: Version of the schema the FieldPath
  1187                                      is written in terms of, defaults to "v1".
  1188                                    type: string
  1189                                  fieldPath:
  1190                                    description: Path of the field to select in the
  1191                                      specified API version.
  1192                                    type: string
  1193                                required:
  1194                                - fieldPath
  1195                                type: object
  1196                              resourceFieldRef:
  1197                                description: 'Selects a resource of the container: only
  1198                                  resources limits and requests (limits.cpu, limits.memory,
  1199                                  limits.ephemeral-storage, requests.cpu, requests.memory
  1200                                  and requests.ephemeral-storage) are currently supported.'
  1201                                properties:
  1202                                  containerName:
  1203                                    description: 'Container name: required for volumes,
  1204                                      optional for env vars'
  1205                                    type: string
  1206                                  divisor:
  1207                                    anyOf:
  1208                                    - type: integer
  1209                                    - type: string
  1210                                    description: Specifies the output format of the
  1211                                      exposed resources, defaults to "1"
  1212                                    pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1213                                    x-kubernetes-int-or-string: true
  1214                                  resource:
  1215                                    description: 'Required: resource to select'
  1216                                    type: string
  1217                                required:
  1218                                - resource
  1219                                type: object
  1220                              secretKeyRef:
  1221                                description: Selects a key of a secret in the pod's
  1222                                  namespace
  1223                                properties:
  1224                                  key:
  1225                                    description: The key of the secret to select from.  Must
  1226                                      be a valid secret key.
  1227                                    type: string
  1228                                  name:
  1229                                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  1230                                      TODO: Add other useful fields. apiVersion, kind,
  1231                                      uid?'
  1232                                    type: string
  1233                                  optional:
  1234                                    description: Specify whether the Secret or its key
  1235                                      must be defined
  1236                                    type: boolean
  1237                                required:
  1238                                - key
  1239                                type: object
  1240                            type: object
  1241                        required:
  1242                        - name
  1243                        type: object
  1244                      type: array
  1245                    grpc:
  1246                      description: GRPC defines the state for the Argo CD Server GRPC
  1247                        options.
  1248                      properties:
  1249                        host:
  1250                          description: Host is the hostname to use for Ingress/Route
  1251                            resources.
  1252                          type: string
  1253                        ingress:
  1254                          description: Ingress defines the desired state for the Argo
  1255                            CD Server GRPC Ingress.
  1256                          properties:
  1257                            annotations:
  1258                              additionalProperties:
  1259                                type: string
  1260                              description: Annotations is the map of annotations to
  1261                                apply to the Ingress.
  1262                              type: object
  1263                            enabled:
  1264                              description: Enabled will toggle the creation of the Ingress.
  1265                              type: boolean
  1266                            path:
  1267                              description: Path used for the Ingress resource.
  1268                              type: string
  1269                            tls:
  1270                              description: TLS configuration. Currently the Ingress
  1271                                only supports a single TLS port, 443. If multiple members
  1272                                of this list specify different hosts, they will be multiplexed
  1273                                on the same port according to the hostname specified
  1274                                through the SNI TLS extension, if the ingress controller
  1275                                fulfilling the ingress supports SNI.
  1276                              items:
  1277                                description: IngressTLS describes the transport layer
  1278                                  security associated with an Ingress.
  1279                                properties:
  1280                                  hosts:
  1281                                    description: Hosts are a list of hosts included
  1282                                      in the TLS certificate. The values in this list
  1283                                      must match the name/s used in the tlsSecret. Defaults
  1284                                      to the wildcard host setting for the loadbalancer
  1285                                      controller fulfilling this Ingress, if left unspecified.
  1286                                    items:
  1287                                      type: string
  1288                                    type: array
  1289                                    x-kubernetes-list-type: atomic
  1290                                  secretName:
  1291                                    description: SecretName is the name of the secret
  1292                                      used to terminate TLS traffic on port 443. Field
  1293                                      is left optional to allow TLS routing based on
  1294                                      SNI hostname alone. If the SNI host in a listener
  1295                                      conflicts with the "Host" header field used by
  1296                                      an IngressRule, the SNI host is used for termination
  1297                                      and value of the Host header is used for routing.
  1298                                    type: string
  1299                                type: object
  1300                              type: array
  1301                          required:
  1302                          - enabled
  1303                          type: object
  1304                      type: object
  1305                    host:
  1306                      description: Host is the hostname to use for Ingress/Route resources.
  1307                      type: string
  1308                    ingress:
  1309                      description: Ingress defines the desired state for an Ingress
  1310                        for the Argo CD Server component.
  1311                      properties:
  1312                        annotations:
  1313                          additionalProperties:
  1314                            type: string
  1315                          description: Annotations is the map of annotations to apply
  1316                            to the Ingress.
  1317                          type: object
  1318                        enabled:
  1319                          description: Enabled will toggle the creation of the Ingress.
  1320                          type: boolean
  1321                        path:
  1322                          description: Path used for the Ingress resource.
  1323                          type: string
  1324                        tls:
  1325                          description: TLS configuration. Currently the Ingress only
  1326                            supports a single TLS port, 443. If multiple members of
  1327                            this list specify different hosts, they will be multiplexed
  1328                            on the same port according to the hostname specified through
  1329                            the SNI TLS extension, if the ingress controller fulfilling
  1330                            the ingress supports SNI.
  1331                          items:
  1332                            description: IngressTLS describes the transport layer security
  1333                              associated with an Ingress.
  1334                            properties:
  1335                              hosts:
  1336                                description: Hosts are a list of hosts included in the
  1337                                  TLS certificate. The values in this list must match
  1338                                  the name/s used in the tlsSecret. Defaults to the
  1339                                  wildcard host setting for the loadbalancer controller
  1340                                  fulfilling this Ingress, if left unspecified.
  1341                                items:
  1342                                  type: string
  1343                                type: array
  1344                                x-kubernetes-list-type: atomic
  1345                              secretName:
  1346                                description: SecretName is the name of the secret used
  1347                                  to terminate TLS traffic on port 443. Field is left
  1348                                  optional to allow TLS routing based on SNI hostname
  1349                                  alone. If the SNI host in a listener conflicts with
  1350                                  the "Host" header field used by an IngressRule, the
  1351                                  SNI host is used for termination and value of the
  1352                                  Host header is used for routing.
  1353                                type: string
  1354                            type: object
  1355                          type: array
  1356                      required:
  1357                      - enabled
  1358                      type: object
  1359                    insecure:
  1360                      description: Insecure toggles the insecure flag.
  1361                      type: boolean
  1362                    logFormat:
  1363                      description: LogFormat refers to the log level to be used by the
  1364                        ArgoCD Server component. Defaults to ArgoCDDefaultLogFormat
  1365                        if not configured. Valid options are text or json.
  1366                      type: string
  1367                    logLevel:
  1368                      description: LogLevel refers to the log level to be used by the
  1369                        ArgoCD Server component. Defaults to ArgoCDDefaultLogLevel if
  1370                        not set.  Valid options are debug, info, error, and warn.
  1371                      type: string
  1372                    resources:
  1373                      description: Resources defines the Compute Resources required
  1374                        by the container for the Argo CD server component.
  1375                      properties:
  1376                        limits:
  1377                          additionalProperties:
  1378                            anyOf:
  1379                            - type: integer
  1380                            - type: string
  1381                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1382                            x-kubernetes-int-or-string: true
  1383                          description: 'Limits describes the maximum amount of compute
  1384                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1385                          type: object
  1386                        requests:
  1387                          additionalProperties:
  1388                            anyOf:
  1389                            - type: integer
  1390                            - type: string
  1391                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1392                            x-kubernetes-int-or-string: true
  1393                          description: 'Requests describes the minimum amount of compute
  1394                            resources required. If Requests is omitted for a container,
  1395                            it defaults to Limits if that is explicitly specified, otherwise
  1396                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1397                          type: object
  1398                      type: object
  1399                    route:
  1400                      description: Route defines the desired state for an OpenShift
  1401                        Route for the Argo CD Server component.
  1402                      properties:
  1403                        annotations:
  1404                          additionalProperties:
  1405                            type: string
  1406                          description: Annotations is the map of annotations to use
  1407                            for the Route resource.
  1408                          type: object
  1409                        enabled:
  1410                          description: Enabled will toggle the creation of the OpenShift
  1411                            Route.
  1412                          type: boolean
  1413                        labels:
  1414                          additionalProperties:
  1415                            type: string
  1416                          description: Labels is the map of labels to use for the Route
  1417                            resource
  1418                          type: object
  1419                        path:
  1420                          description: Path the router watches for, to route traffic
  1421                            for to the service.
  1422                          type: string
  1423                        tls:
  1424                          description: TLS provides the ability to configure certificates
  1425                            and termination for the Route.
  1426                          properties:
  1427                            caCertificate:
  1428                              description: caCertificate provides the cert authority
  1429                                certificate contents
  1430                              type: string
  1431                            certificate:
  1432                              description: certificate provides certificate contents
  1433                              type: string
  1434                            destinationCACertificate:
  1435                              description: destinationCACertificate provides the contents
  1436                                of the ca certificate of the final destination.  When
  1437                                using reencrypt termination this file should be provided
  1438                                in order to have routers use it for health checks on
  1439                                the secure connection. If this field is not specified,
  1440                                the router may provide its own destination CA and perform
  1441                                hostname validation using the short service name (service.namespace.svc),
  1442                                which allows infrastructure generated certificates to
  1443                                automatically verify.
  1444                              type: string
  1445                            insecureEdgeTerminationPolicy:
  1446                              description: "insecureEdgeTerminationPolicy indicates
  1447                                the desired behavior for insecure connections to a route.
  1448                                While each router may make its own decisions on which
  1449                                ports to expose, this is normally port 80. \n * Allow
  1450                                - traffic is sent to the server on the insecure port
  1451                                (default) * Disable - no traffic is allowed on the insecure
  1452                                port. * Redirect - clients are redirected to the secure
  1453                                port."
  1454                              type: string
  1455                            key:
  1456                              description: key provides key file contents
  1457                              type: string
  1458                            termination:
  1459                              description: termination indicates termination type.
  1460                              type: string
  1461                          required:
  1462                          - termination
  1463                          type: object
  1464                        wildcardPolicy:
  1465                          description: WildcardPolicy if any for the route. Currently
  1466                            only 'Subdomain' or 'None' is allowed.
  1467                          type: string
  1468                      required:
  1469                      - enabled
  1470                      type: object
  1471                    service:
  1472                      description: Service defines the options for the Service backing
  1473                        the ArgoCD Server component.
  1474                      properties:
  1475                        type:
  1476                          description: Type is the ServiceType to use for the Service
  1477                            resource.
  1478                          type: string
  1479                      required:
  1480                      - type
  1481                      type: object
  1482                  type: object
  1483                sso:
  1484                  description: SSO defines the Single Sign-on configuration for Argo
  1485                    CD
  1486                  properties:
  1487                    image:
  1488                      description: Image is the SSO container image.
  1489                      type: string
  1490                    provider:
  1491                      description: Provider installs and configures the given SSO Provider
  1492                        with Argo CD.
  1493                      type: string
  1494                    resources:
  1495                      description: Resources defines the Compute Resources required
  1496                        by the container for SSO.
  1497                      properties:
  1498                        limits:
  1499                          additionalProperties:
  1500                            anyOf:
  1501                            - type: integer
  1502                            - type: string
  1503                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1504                            x-kubernetes-int-or-string: true
  1505                          description: 'Limits describes the maximum amount of compute
  1506                            resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1507                          type: object
  1508                        requests:
  1509                          additionalProperties:
  1510                            anyOf:
  1511                            - type: integer
  1512                            - type: string
  1513                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
  1514                            x-kubernetes-int-or-string: true
  1515                          description: 'Requests describes the minimum amount of compute
  1516                            resources required. If Requests is omitted for a container,
  1517                            it defaults to Limits if that is explicitly specified, otherwise
  1518                            to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/'
  1519                          type: object
  1520                      type: object
  1521                    verifyTLS:
  1522                      description: VerifyTLS set to false disables strict TLS validation.
  1523                      type: boolean
  1524                    version:
  1525                      description: Version is the SSO container image tag.
  1526                      type: string
  1527                  type: object
  1528                statusBadgeEnabled:
  1529                  description: StatusBadgeEnabled toggles application status badge feature.
  1530                  type: boolean
  1531                tls:
  1532                  description: TLS defines the TLS options for ArgoCD.
  1533                  properties:
  1534                    ca:
  1535                      description: CA defines the CA options.
  1536                      properties:
  1537                        configMapName:
  1538                          description: ConfigMapName is the name of the ConfigMap containing
  1539                            the CA Certificate.
  1540                          type: string
  1541                        secretName:
  1542                          description: SecretName is the name of the Secret containing
  1543                            the CA Certificate and Key.
  1544                          type: string
  1545                      type: object
  1546                    initialCerts:
  1547                      additionalProperties:
  1548                        type: string
  1549                      description: InitialCerts defines custom TLS certificates upon
  1550                        creation of the cluster for connecting Git repositories via
  1551                        HTTPS.
  1552                      type: object
  1553                  type: object
  1554                usersAnonymousEnabled:
  1555                  description: UsersAnonymousEnabled toggles anonymous user access.
  1556                    The anonymous users get default role permissions specified argocd-rbac-cm.
  1557                  type: boolean
  1558                version:
  1559                  description: Version is the tag to use with the ArgoCD container image
  1560                    for all ArgoCD components.
  1561                  type: string
  1562              type: object
  1563            status:
  1564              description: ArgoCDStatus defines the observed state of ArgoCD
  1565              properties:
  1566                applicationController:
  1567                  description: 'ApplicationController is a simple, high-level summary
  1568                    of where the Argo CD application controller component is in its
  1569                    lifecycle. There are five possible ApplicationController values:
  1570                    Pending: The Argo CD application controller component has been accepted
  1571                    by the Kubernetes system, but one or more of the required resources
  1572                    have not been created. Running: All of the required Pods for the
  1573                    Argo CD application controller component are in a Ready state. Failed:
  1574                    At least one of the  Argo CD application controller component Pods
  1575                    had a failure. Unknown: For some reason the state of the Argo CD
  1576                    application controller component could not be obtained.'
  1577                  type: string
  1578                dex:
  1579                  description: 'Dex is a simple, high-level summary of where the Argo
  1580                    CD Dex component is in its lifecycle. There are five possible dex
  1581                    values: Pending: The Argo CD Dex component has been accepted by
  1582                    the Kubernetes system, but one or more of the required resources
  1583                    have not been created. Running: All of the required Pods for the
  1584                    Argo CD Dex component are in a Ready state. Failed: At least one
  1585                    of the  Argo CD Dex component Pods had a failure. Unknown: For some
  1586                    reason the state of the Argo CD Dex component could not be obtained.'
  1587                  type: string
  1588                phase:
  1589                  description: 'Phase is a simple, high-level summary of where the ArgoCD
  1590                    is in its lifecycle. There are five possible phase values: Pending:
  1591                    The ArgoCD has been accepted by the Kubernetes system, but one or
  1592                    more of the required resources have not been created. Available:
  1593                    All of the resources for the ArgoCD are ready. Failed: At least
  1594                    one resource has experienced a failure. Unknown: For some reason
  1595                    the state of the ArgoCD phase could not be obtained.'
  1596                  type: string
  1597                redis:
  1598                  description: 'Redis is a simple, high-level summary of where the Argo
  1599                    CD Redis component is in its lifecycle. There are five possible
  1600                    redis values: Pending: The Argo CD Redis component has been accepted
  1601                    by the Kubernetes system, but one or more of the required resources
  1602                    have not been created. Running: All of the required Pods for the
  1603                    Argo CD Redis component are in a Ready state. Failed: At least one
  1604                    of the  Argo CD Redis component Pods had a failure. Unknown: For
  1605                    some reason the state of the Argo CD Redis component could not be
  1606                    obtained.'
  1607                  type: string
  1608                repo:
  1609                  description: 'Repo is a simple, high-level summary of where the Argo
  1610                    CD Repo component is in its lifecycle. There are five possible repo
  1611                    values: Pending: The Argo CD Repo component has been accepted by
  1612                    the Kubernetes system, but one or more of the required resources
  1613                    have not been created. Running: All of the required Pods for the
  1614                    Argo CD Repo component are in a Ready state. Failed: At least one
  1615                    of the  Argo CD Repo component Pods had a failure. Unknown: For
  1616                    some reason the state of the Argo CD Repo component could not be
  1617                    obtained.'
  1618                  type: string
  1619                repoTLSChecksum:
  1620                  description: RepoTLSChecksum contains the SHA256 checksum of the latest
  1621                    known state of tls.crt and tls.key in the argocd-repo-server-tls
  1622                    secret.
  1623                  type: string
  1624                server:
  1625                  description: 'Server is a simple, high-level summary of where the
  1626                    Argo CD server component is in its lifecycle. There are five possible
  1627                    server values: Pending: The Argo CD server component has been accepted
  1628                    by the Kubernetes system, but one or more of the required resources
  1629                    have not been created. Running: All of the required Pods for the
  1630                    Argo CD server component are in a Ready state. Failed: At least
  1631                    one of the  Argo CD server component Pods had a failure. Unknown:
  1632                    For some reason the state of the Argo CD server component could
  1633                    not be obtained.'
  1634                  type: string
  1635                ssoConfig:
  1636                  description: 'SSOConfig defines the status of SSO configuration. Success:
  1637                    Only one SSO provider is configured in CR. Failed: More than one
  1638                    SSO providers are configure in CR. Unknown: For some reason the
  1639                    SSO configuration could not be obtained.'
  1640                  type: string
  1641              type: object
  1642          type: object
  1643      served: true
  1644      storage: true
  1645      subresources:
  1646        status: {}
  1647  status:
  1648    acceptedNames:
  1649      kind: ""
  1650      plural: ""
  1651    conditions: []
  1652    storedVersions: []