blob: dc89a50e45ae995bfeeff749278952cab94defb2 [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.6.1
creationTimestamp: null
labels:
app: camel-k
name: camelcatalogs.camel.apache.org
spec:
group: camel.apache.org
names:
categories:
- kamel
- camel
kind: CamelCatalog
listKind: CamelCatalogList
plural: camelcatalogs
shortNames:
- cc
singular: camelcatalog
scope: Namespaced
versions:
- additionalPrinterColumns:
- description: The Camel K Runtime version
jsonPath: .spec.runtime.version
name: Runtime Version
type: string
- description: The Camel K Runtime provider
jsonPath: .spec.runtime.provider
name: Runtime Provider
type: string
name: v1
schema:
openAPIV3Schema:
description: CamelCatalog represents the languages, components, data formats
and capabilities enabled on a given runtime provider. The catalog may be
statically generated.
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: the desired state of the catalog
properties:
artifacts:
additionalProperties:
description: CamelArtifact represent the configuration for a feature
offered by Camel
properties:
artifactId:
description: Maven Artifact
type: string
dataformats:
description: accepted data formats
items:
type: string
type: array
dependencies:
description: required dependencies
items:
description: CamelArtifactDependency represent a maven's dependency
properties:
artifactId:
description: Maven Artifact
type: string
exclusions:
description: provide a list of artifacts to exclude for
this dependency
items:
description: CamelArtifactExclusion represents an exclusion
clause
properties:
artifactId:
description: Maven Artifact
type: string
groupId:
description: Maven Group
type: string
required:
- artifactId
- groupId
type: object
type: array
groupId:
description: Maven Group
type: string
version:
description: Maven Version
type: string
required:
- artifactId
- groupId
type: object
type: array
exclusions:
description: provide a list of artifacts to exclude for this
dependency
items:
description: CamelArtifactExclusion represents an exclusion
clause
properties:
artifactId:
description: Maven Artifact
type: string
groupId:
description: Maven Group
type: string
required:
- artifactId
- groupId
type: object
type: array
groupId:
description: Maven Group
type: string
javaTypes:
description: the Java types used by the artifact feature (ie,
component, data format, ...)
items:
type: string
type: array
languages:
description: accepted languages
items:
type: string
type: array
schemes:
description: accepted URI schemes
items:
description: CamelScheme represents the scheme used to identify
a component in a URI (ie, timer in a timer:xyz endpoint
URI)
properties:
consumer:
description: required scope for consumer
properties:
dependencies:
description: list of dependencies needed for this
scope
items:
description: CamelArtifactDependency represent a
maven's dependency
properties:
artifactId:
description: Maven Artifact
type: string
exclusions:
description: provide a list of artifacts to
exclude for this dependency
items:
description: CamelArtifactExclusion represents
an exclusion clause
properties:
artifactId:
description: Maven Artifact
type: string
groupId:
description: Maven Group
type: string
required:
- artifactId
- groupId
type: object
type: array
groupId:
description: Maven Group
type: string
version:
description: Maven Version
type: string
required:
- artifactId
- groupId
type: object
type: array
type: object
http:
description: is a HTTP based scheme
type: boolean
id:
description: the ID (ie, timer in a timer:xyz URI)
type: string
passive:
description: is a passive scheme
type: boolean
producer:
description: required scope for producers
properties:
dependencies:
description: list of dependencies needed for this
scope
items:
description: CamelArtifactDependency represent a
maven's dependency
properties:
artifactId:
description: Maven Artifact
type: string
exclusions:
description: provide a list of artifacts to
exclude for this dependency
items:
description: CamelArtifactExclusion represents
an exclusion clause
properties:
artifactId:
description: Maven Artifact
type: string
groupId:
description: Maven Group
type: string
required:
- artifactId
- groupId
type: object
type: array
groupId:
description: Maven Group
type: string
version:
description: Maven Version
type: string
required:
- artifactId
- groupId
type: object
type: array
type: object
required:
- http
- id
- passive
type: object
type: array
version:
description: Maven Version
type: string
required:
- artifactId
- groupId
type: object
description: artifacts required by this catalog
type: object
loaders:
additionalProperties:
description: CamelLoader represents the configuration required to
load a DSL
properties:
artifactId:
description: Maven Artifact
type: string
dependencies:
description: a list of additional dependencies required beside
the base one
items:
description: MavenArtifact defines a GAV (Group:Artifact:Version)
Maven artifact
properties:
artifactId:
description: Maven Artifact
type: string
groupId:
description: Maven Group
type: string
version:
description: Maven Version
type: string
required:
- artifactId
- groupId
type: object
type: array
groupId:
description: Maven Group
type: string
languages:
description: a list of DSLs supported
items:
type: string
type: array
metadata:
additionalProperties:
type: string
description: 'Deprecated: never used a set of general metadata
for various purposes'
type: object
version:
description: Maven Version
type: string
required:
- artifactId
- groupId
type: object
description: loaders required by this catalog
type: object
runtime:
description: the runtime targeted for the catalog
properties:
applicationClass:
description: application entry point (main) to be executed
type: string
capabilities:
additionalProperties:
description: Capability is a particular feature which requires
a well known set of dependencies
properties:
dependencies:
items:
description: MavenArtifact defines a GAV (Group:Artifact:Version)
Maven artifact
properties:
artifactId:
description: Maven Artifact
type: string
groupId:
description: Maven Group
type: string
version:
description: Maven Version
type: string
required:
- artifactId
- groupId
type: object
type: array
metadata:
additionalProperties:
type: string
description: 'Deprecated: not in use'
type: object
required:
- dependencies
type: object
description: features offered by this runtime
type: object
dependencies:
description: list of dependencies needed to run the application
items:
description: MavenArtifact defines a GAV (Group:Artifact:Version)
Maven artifact
properties:
artifactId:
description: Maven Artifact
type: string
groupId:
description: Maven Group
type: string
version:
description: Maven Version
type: string
required:
- artifactId
- groupId
type: object
type: array
metadata:
additionalProperties:
type: string
description: set of metadata
type: object
provider:
description: Camel main application provider, ie, Camel Quarkus
type: string
version:
description: Camel K Runtime version
type: string
required:
- applicationClass
- dependencies
- provider
- version
type: object
required:
- artifacts
- loaders
- runtime
type: object
status:
description: the actual state of the catalog
type: object
type: object
served: true
storage: true
subresources:
status: {}