github.com/giantswarm/apiextensions/v2@v2.6.2/config/crd/v1beta1/application.giantswarm.io_apps.yaml (about)

     1  
     2  ---
     3  apiVersion: apiextensions.k8s.io/v1beta1
     4  kind: CustomResourceDefinition
     5  metadata:
     6    annotations:
     7      controller-gen.kubebuilder.io/version: v0.2.4
     8    creationTimestamp: null
     9    name: apps.application.giantswarm.io
    10  spec:
    11    group: application.giantswarm.io
    12    names:
    13      categories:
    14      - common
    15      - giantswarm
    16      kind: App
    17      listKind: AppList
    18      plural: apps
    19      singular: app
    20    scope: Namespaced
    21    subresources:
    22      status: {}
    23    validation:
    24      openAPIV3Schema:
    25        description: App represents a managed app.
    26        properties:
    27          apiVersion:
    28            description: 'APIVersion defines the versioned schema of this representation
    29              of an object. Servers should convert recognized schemas to the latest
    30              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    31            type: string
    32          kind:
    33            description: 'Kind is a string value representing the REST resource this
    34              object represents. Servers may infer this from the endpoint the client
    35              submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    36            type: string
    37          metadata:
    38            type: object
    39          spec:
    40            properties:
    41              catalog:
    42                description: Catalog is the name of the app catalog this app belongs
    43                  to. e.g. giantswarm
    44                type: string
    45              config:
    46                description: Config is the config to be applied when the app is deployed.
    47                nullable: true
    48                properties:
    49                  configMap:
    50                    description: ConfigMap references a config map containing values
    51                      that should be applied to the app.
    52                    nullable: true
    53                    properties:
    54                      name:
    55                        description: Name is the name of the config map containing app
    56                          values to apply, e.g. prometheus-values.
    57                        type: string
    58                      namespace:
    59                        description: Namespace is the namespace of the values config
    60                          map, e.g. monitoring.
    61                        type: string
    62                    required:
    63                    - name
    64                    - namespace
    65                    type: object
    66                  secret:
    67                    description: Secret references a secret containing secret values
    68                      that should be applied to the app.
    69                    nullable: true
    70                    properties:
    71                      name:
    72                        description: Name is the name of the secret containing app values
    73                          to apply, e.g. prometheus-secret.
    74                        type: string
    75                      namespace:
    76                        description: Namespace is the namespace of the secret, e.g.
    77                          kube-system.
    78                        type: string
    79                    required:
    80                    - name
    81                    - namespace
    82                    type: object
    83                type: object
    84              kubeConfig:
    85                description: KubeConfig is the kubeconfig to connect to the cluster
    86                  when deploying the app.
    87                properties:
    88                  context:
    89                    description: Context is the kubeconfig context.
    90                    nullable: true
    91                    properties:
    92                      name:
    93                        description: Name is the name of the kubeconfig context. e.g.
    94                          giantswarm-12345.
    95                        type: string
    96                    required:
    97                    - name
    98                    type: object
    99                  inCluster:
   100                    description: InCluster is a flag for whether to use InCluster credentials.
   101                      When true the context name and secret should not be set.
   102                    type: boolean
   103                  secret:
   104                    description: Secret references a secret containing the kubconfig.
   105                    nullable: true
   106                    properties:
   107                      name:
   108                        description: Name is the name of the secret containing the kubeconfig,
   109                          e.g. app-operator-kubeconfig.
   110                        type: string
   111                      namespace:
   112                        description: Namespace is the namespace of the secret containing
   113                          the kubeconfig, e.g. giantswarm.
   114                        type: string
   115                    required:
   116                    - name
   117                    - namespace
   118                    type: object
   119                required:
   120                - inCluster
   121                type: object
   122              name:
   123                description: Name is the name of the app to be deployed. e.g. kubernetes-prometheus
   124                type: string
   125              namespace:
   126                description: Namespace is the namespace where the app should be deployed.
   127                  e.g. monitoring
   128                type: string
   129              userConfig:
   130                description: UserConfig is the user config to be applied when the app
   131                  is deployed.
   132                nullable: true
   133                properties:
   134                  configMap:
   135                    description: ConfigMap references a config map containing user values
   136                      that should be applied to the app.
   137                    nullable: true
   138                    properties:
   139                      name:
   140                        description: Name is the name of the config map containing user
   141                          values to apply, e.g. prometheus-user-values.
   142                        type: string
   143                      namespace:
   144                        description: Namespace is the namespace of the user values config
   145                          map on the control plane, e.g. 123ab.
   146                        type: string
   147                    required:
   148                    - name
   149                    - namespace
   150                    type: object
   151                  secret:
   152                    description: Secret references a secret containing user secret values
   153                      that should be applied to the app.
   154                    nullable: true
   155                    properties:
   156                      name:
   157                        description: Name is the name of the secret containing user
   158                          values to apply, e.g. prometheus-user-secret.
   159                        type: string
   160                      namespace:
   161                        description: Namespace is the namespace of the secret, e.g.
   162                          kube-system.
   163                        type: string
   164                    required:
   165                    - name
   166                    - namespace
   167                    type: object
   168                type: object
   169              version:
   170                description: Version is the version of the app that should be deployed.
   171                  e.g. 1.0.0
   172                type: string
   173            required:
   174            - catalog
   175            - kubeConfig
   176            - name
   177            - namespace
   178            - version
   179            type: object
   180          status:
   181            description: Status Spec part of the App resource. Initially, it would be
   182              left as empty until the operator successfully reconciles the helm release.
   183            properties:
   184              appVersion:
   185                description: AppVersion is the value of the AppVersion field in the
   186                  Chart.yaml of the deployed app. This is an optional field with the
   187                  version of the component being deployed. e.g. 0.21.0. https://helm.sh/docs/topics/charts/#the-chartyaml-file
   188                type: string
   189              release:
   190                description: Release is the status of the Helm release for the deployed
   191                  app.
   192                properties:
   193                  lastDeployed:
   194                    description: LastDeployed is the time when the app was last deployed.
   195                    format: date-time
   196                    nullable: true
   197                    type: string
   198                  reason:
   199                    description: Reason is the description of the last status of helm
   200                      release when the app is not installed successfully, e.g. deploy
   201                      resource already exists.
   202                    type: string
   203                  status:
   204                    description: Status is the status of the deployed app, e.g. DEPLOYED.
   205                    type: string
   206                required:
   207                - status
   208                type: object
   209              version:
   210                description: Version is the value of the Version field in the Chart.yaml
   211                  of the deployed app. e.g. 1.0.0.
   212                type: string
   213            required:
   214            - appVersion
   215            - release
   216            - version
   217            type: object
   218        required:
   219        - spec
   220        type: object
   221    version: v1alpha1
   222    versions:
   223    - name: v1alpha1
   224      served: true
   225      storage: true
   226  status:
   227    acceptedNames:
   228      kind: ""
   229      plural: ""
   230    conditions: []
   231    storedVersions: []