blob: e7c66a03070ab236a15cbd0e518f8910b37eeda6 [file] [log] [blame]
# ---------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ---------------------------------------------------------------------------
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.4.1
creationTimestamp: null
labels:
app: camel-k
name: integrationplatforms.camel.apache.org
spec:
group: camel.apache.org
names:
categories:
- kamel
- camel
kind: IntegrationPlatform
listKind: IntegrationPlatformList
plural: integrationplatforms
shortNames:
- ip
singular: integrationplatform
scope: Namespaced
versions:
- additionalPrinterColumns:
- description: The integration platform phase
jsonPath: .status.phase
name: Phase
type: string
name: v1
schema:
openAPIV3Schema:
description: IntegrationPlatform is the Schema for the integrationplatforms
API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: IntegrationPlatformSpec defines the desired state of IntegrationPlatform
properties:
build:
description: IntegrationPlatformBuildSpec contains platform related
build information
properties:
baseImage:
type: string
buildStrategy:
description: IntegrationPlatformBuildStrategy enumerates all implemented
build strategies
type: string
httpProxySecret:
type: string
kanikoBuildCache:
type: boolean
maven:
description: MavenSpec --
properties:
caSecret:
description: The Secret name and key, containing the CA certificate(s)
used to connect to remote Maven repositories. It can contain
X.509 certificates, and PKCS#7 formatted certificate chains.
A JKS formatted keystore is automatically created to store
the CA certificate(s), and configured to be used as a trusted
certificate(s) by the Maven commands. Note that the root
CA certificates are also imported into the created keystore.
properties:
key:
description: The key of the secret to select from. Must
be a valid secret key.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind, uid?'
type: string
optional:
description: Specify whether the Secret or its key must
be defined
type: boolean
required:
- key
type: object
extension:
description: Maven build extensions https://maven.apache.org/guides/mini/guide-using-extensions.html
items:
description: MavenArtifact --
properties:
artifactId:
type: string
groupId:
type: string
version:
type: string
required:
- artifactId
- groupId
type: object
type: array
localRepository:
description: The path of the local Maven repository.
type: string
properties:
additionalProperties:
type: string
description: The Maven properties.
type: object
repositories:
items:
description: Repository --
properties:
id:
type: string
name:
type: string
releases:
description: RepositoryPolicy --
properties:
checksumPolicy:
type: string
enabled:
type: boolean
updatePolicy:
type: string
required:
- enabled
type: object
snapshots:
description: RepositoryPolicy --
properties:
checksumPolicy:
type: string
enabled:
type: boolean
updatePolicy:
type: string
required:
- enabled
type: object
url:
type: string
required:
- id
- url
type: object
type: array
settings:
description: A reference to the ConfigMap or Secret key that
contains the Maven settings.
properties:
configMapKeyRef:
description: Selects a key of a ConfigMap.
properties:
key:
description: The key to select.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind,
uid?'
type: string
optional:
description: Specify whether the ConfigMap or its
key must be defined
type: boolean
required:
- key
type: object
secretKeyRef:
description: Selects a key of a secret.
properties:
key:
description: The key of the secret to select from. Must
be a valid secret key.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind,
uid?'
type: string
optional:
description: Specify whether the Secret or its key
must be defined
type: boolean
required:
- key
type: object
type: object
timeout:
description: 'Deprecated: use IntegrationPlatform.Spec.Build.Timeout
instead'
type: string
type: object
persistentVolumeClaim:
type: string
publishStrategy:
description: IntegrationPlatformBuildPublishStrategy enumerates
all implemented publish strategies
type: string
registry:
description: IntegrationPlatformRegistrySpec --
properties:
address:
type: string
ca:
type: string
insecure:
type: boolean
organization:
type: string
secret:
type: string
type: object
runtimeProvider:
description: RuntimeProvider --
type: string
runtimeVersion:
type: string
timeout:
type: string
type: object
cluster:
description: IntegrationPlatformCluster is the kind of orchestration
cluster the platform is installed into
type: string
configuration:
items:
description: ConfigurationSpec --
properties:
resourceKey:
type: string
resourceMountPoint:
type: string
resourceType:
type: string
type:
type: string
value:
type: string
required:
- type
- value
type: object
type: array
kamelet:
description: IntegrationPlatformKameletSpec --
properties:
repositories:
items:
description: IntegrationPlatformKameletRepositorySpec --
properties:
uri:
type: string
type: object
type: array
type: object
profile:
description: TraitProfile represents lists of traits that are enabled
for the specific installation/integration
type: string
resources:
description: IntegrationPlatformResourcesSpec contains platform related
resources
type: object
traits:
additionalProperties:
description: A TraitSpec contains the configuration of a trait
properties:
configuration:
description: TraitConfiguration --
type: object
x-kubernetes-preserve-unknown-fields: true
required:
- configuration
type: object
type: object
type: object
status:
description: IntegrationPlatformStatus defines the observed state of IntegrationPlatform
properties:
build:
description: IntegrationPlatformBuildSpec contains platform related
build information
properties:
baseImage:
type: string
buildStrategy:
description: IntegrationPlatformBuildStrategy enumerates all implemented
build strategies
type: string
httpProxySecret:
type: string
kanikoBuildCache:
type: boolean
maven:
description: MavenSpec --
properties:
caSecret:
description: The Secret name and key, containing the CA certificate(s)
used to connect to remote Maven repositories. It can contain
X.509 certificates, and PKCS#7 formatted certificate chains.
A JKS formatted keystore is automatically created to store
the CA certificate(s), and configured to be used as a trusted
certificate(s) by the Maven commands. Note that the root
CA certificates are also imported into the created keystore.
properties:
key:
description: The key of the secret to select from. Must
be a valid secret key.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind, uid?'
type: string
optional:
description: Specify whether the Secret or its key must
be defined
type: boolean
required:
- key
type: object
extension:
description: Maven build extensions https://maven.apache.org/guides/mini/guide-using-extensions.html
items:
description: MavenArtifact --
properties:
artifactId:
type: string
groupId:
type: string
version:
type: string
required:
- artifactId
- groupId
type: object
type: array
localRepository:
description: The path of the local Maven repository.
type: string
properties:
additionalProperties:
type: string
description: The Maven properties.
type: object
repositories:
items:
description: Repository --
properties:
id:
type: string
name:
type: string
releases:
description: RepositoryPolicy --
properties:
checksumPolicy:
type: string
enabled:
type: boolean
updatePolicy:
type: string
required:
- enabled
type: object
snapshots:
description: RepositoryPolicy --
properties:
checksumPolicy:
type: string
enabled:
type: boolean
updatePolicy:
type: string
required:
- enabled
type: object
url:
type: string
required:
- id
- url
type: object
type: array
settings:
description: A reference to the ConfigMap or Secret key that
contains the Maven settings.
properties:
configMapKeyRef:
description: Selects a key of a ConfigMap.
properties:
key:
description: The key to select.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind,
uid?'
type: string
optional:
description: Specify whether the ConfigMap or its
key must be defined
type: boolean
required:
- key
type: object
secretKeyRef:
description: Selects a key of a secret.
properties:
key:
description: The key of the secret to select from. Must
be a valid secret key.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind,
uid?'
type: string
optional:
description: Specify whether the Secret or its key
must be defined
type: boolean
required:
- key
type: object
type: object
timeout:
description: 'Deprecated: use IntegrationPlatform.Spec.Build.Timeout
instead'
type: string
type: object
persistentVolumeClaim:
type: string
publishStrategy:
description: IntegrationPlatformBuildPublishStrategy enumerates
all implemented publish strategies
type: string
registry:
description: IntegrationPlatformRegistrySpec --
properties:
address:
type: string
ca:
type: string
insecure:
type: boolean
organization:
type: string
secret:
type: string
type: object
runtimeProvider:
description: RuntimeProvider --
type: string
runtimeVersion:
type: string
timeout:
type: string
type: object
cluster:
description: IntegrationPlatformCluster is the kind of orchestration
cluster the platform is installed into
type: string
conditions:
items:
description: IntegrationPlatformCondition describes the state of
a resource at a certain point.
properties:
lastTransitionTime:
description: Last time the condition transitioned from one status
to another.
format: date-time
type: string
lastUpdateTime:
description: The last time this condition was updated.
format: date-time
type: string
message:
description: A human readable message indicating details about
the transition.
type: string
reason:
description: The reason for the condition's last transition.
type: string
status:
description: Status of the condition, one of True, False, Unknown.
type: string
type:
description: Type of integration condition.
type: string
required:
- status
- type
type: object
type: array
configuration:
items:
description: ConfigurationSpec --
properties:
resourceKey:
type: string
resourceMountPoint:
type: string
resourceType:
type: string
type:
type: string
value:
type: string
required:
- type
- value
type: object
type: array
kamelet:
description: IntegrationPlatformKameletSpec --
properties:
repositories:
items:
description: IntegrationPlatformKameletRepositorySpec --
properties:
uri:
type: string
type: object
type: array
type: object
phase:
description: IntegrationPlatformPhase --
type: string
profile:
description: TraitProfile represents lists of traits that are enabled
for the specific installation/integration
type: string
resources:
description: IntegrationPlatformResourcesSpec contains platform related
resources
type: object
traits:
additionalProperties:
description: A TraitSpec contains the configuration of a trait
properties:
configuration:
description: TraitConfiguration --
type: object
x-kubernetes-preserve-unknown-fields: true
required:
- configuration
type: object
type: object
version:
type: string
type: object
type: object
served: true
storage: true
subresources:
status: {}