| # --------------------------------------------------------------------------- |
| # 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: operators.coreos.com/v1alpha1 |
| kind: ClusterServiceVersion |
| metadata: |
| annotations: |
| alm-examples: |- |
| [{ |
| "apiVersion": "camel.apache.org/v1alpha1", |
| "kind": "IntegrationPlatform", |
| "metadata": { |
| "name": "example" |
| } |
| }, |
| { |
| "apiVersion": "camel.apache.org/v1alpha1", |
| "kind": "Integration", |
| "metadata": { |
| "name": "example" |
| }, |
| "spec": { |
| "source": { |
| "content": "// Add example Java code to create Integration", |
| "name": "Example.java" |
| } |
| } |
| }, |
| { |
| "apiVersion": "camel.apache.org/v1alpha1", |
| "kind": "IntegrationContext", |
| "metadata": { |
| "name": "example" |
| } |
| }, |
| { |
| "apiVersion": "camel.apache.org/v1alpha1", |
| "kind": "CamelCatalog", |
| "metadata": { |
| "name": "example" |
| } |
| }, |
| { |
| "apiVersion": "camel.apache.org/v1alpha1", |
| "kind": "Build", |
| "metadata": { |
| "name": "example" |
| } |
| }] |
| capabilities: Basic Install |
| categories: Integration & Delivery |
| certified: "false" |
| containerImage: docker.io/apache/camel-k:0.3.4 |
| createdAt: "2019-05-06T16:45:00Z" |
| description: Apache Camel K is a lightweight integration platform, born on Kubernetes, |
| with serverless superpowers. |
| repository: https://github.com/apache/camel-k |
| support: Camel |
| name: camel-k-operator.v0.3.4 |
| namespace: placeholder |
| spec: |
| apiservicedefinitions: {} |
| customresourcedefinitions: |
| owned: |
| - description: A Camel K build |
| displayName: Build |
| kind: Build |
| name: builds.camel.apache.org |
| version: v1alpha1 |
| - description: A Camel catalog |
| displayName: Camel Catalog |
| kind: CamelCatalog |
| name: camelcatalogs.camel.apache.org |
| version: v1alpha1 |
| - description: A Camel K integration |
| displayName: Integration |
| kind: Integration |
| name: integrations.camel.apache.org |
| version: v1alpha1 |
| - description: A Camel K integration context |
| displayName: Integration Context |
| kind: IntegrationContext |
| name: integrationcontexts.camel.apache.org |
| version: v1alpha1 |
| - description: A Camel K integration platform |
| displayName: Integration Platform |
| kind: IntegrationPlatform |
| name: integrationplatforms.camel.apache.org |
| version: v1alpha1 |
| description: | |
| Apache Camel K |
| ============== |
| |
| Apache Camel K is a lightweight integration platform, born on Kubernetes, with serverless superpowers. |
| |
| ## Installation |
| |
| To start using Camel K, install the operator and then create the following `IntegrationPlatform`: |
| ``` |
| apiVersion: camel.apache.org/v1alpha1 |
| kind: IntegrationPlatform |
| metadata: |
| name: camel-k |
| labels: |
| app: "camel-k" |
| ``` |
| |
| ## Running an Integration |
| |
| After the initial setup, you can run a Camel integration on the cluster by creating an example `Integration`: |
| ``` |
| apiVersion: camel.apache.org/v1alpha1 |
| kind: Integration |
| metadata: |
| name: example |
| spec: |
| sources: |
| - content: | |
| import org.apache.camel.builder.RouteBuilder; |
| |
| public class Example extends RouteBuilder { |
| @Override |
| public void configure() throws Exception { |
| from("timer:tick") |
| .setBody(constant("Hello World!")) |
| .to("log:info?skipBodyLineSeparator=false"); |
| } |
| } |
| name: Example.java |
| ``` |
| displayName: Camel K Operator |
| icon: |
| - base64data: PHN2ZyB2aWV3Qm94PSIwIDAgMTMwLjIxIDEzMC4wMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIzMzMuNDgiIHgyPSI0NzciIHkxPSI3MDIuNiIgeTI9IjU2My43MyIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSg5NC4wMzggMjc2LjA2KSBzY2FsZSguOTkyMDYpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0Y2OTkyMyIgb2Zmc2V0PSIwIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0Y3OUEyMyIgb2Zmc2V0PSIuMTEiLz48c3RvcCBzdG9wLWNvbG9yPSIjRTk3ODI2IiBvZmZzZXQ9Ii45NDUiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iYiIgeDE9IjMzMy40OCIgeDI9IjQ3NyIgeTE9IjcwMi42IiB5Mj0iNTYzLjczIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDk0LjAzOCAyNzYuMDYpIHNjYWxlKC45OTIwNikiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjRjY5OTIzIiBvZmZzZXQ9IjAiLz48c3RvcCBzdG9wLWNvbG9yPSIjRjc5QTIzIiBvZmZzZXQ9Ii4wOCIvPjxzdG9wIHN0b3AtY29sb3I9IiNFOTc4MjYiIG9mZnNldD0iLjQxOSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJjIiB4MT0iNjMzLjU1IiB4Mj0iNTY2LjQ3IiB5MT0iODE0LjYiIHkyPSI5MDkuMTIiIGdyYWRpZW50VHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTg1LjQyMSA1Ni4yMzYpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI2Y2ZTQyMyIgb2Zmc2V0PSIwIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0Y3OUEyMyIgb2Zmc2V0PSIuNDEyIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0U5NzgyNiIgb2Zmc2V0PSIuNzMzIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQzNy44OSAtODM1LjI5KSI+PGNpcmNsZSBjeD0iNTAzLjEiIGN5PSI5MDAuMjkiIHI9IjYyLjUyIiBmaWxsPSJ1cmwoI2EpIiBzdHJva2U9InVybCgjYikiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iNC45NiIvPjxwYXRoIGQ9Ik00ODcuODkgODczLjY0YTg5LjUzIDg5LjUzIDAgMCAwLTIuNjg4LjAzMWMtMS4wNDMuMDMxLTIuNDQ1LjM2Mi00LjA2Mi45MDYgMjcuMzA5IDIwLjczNyAzNy4xMjcgNTguMTQ2IDIwLjI1IDkwLjY1Ni41NzMuMDE1IDEuMTQyLjA2MyAxLjcxOS4wNjMgMzAuODQ0IDAgNTYuNjItMjEuNDkzIDYzLjI4LTUwLjMxMi0xOS41NzItMjIuOTQzLTQ2LjExNy00MS4yOTQtNzguNS00MS4zNDR6IiBmaWxsPSJ1cmwoI2MpIiBvcGFjaXR5PSIuNzUiLz48cGF0aCBkPSJNNDgxLjE0IDg3NC41OGMtOS4wNjggMy4wNTItMjYuMzY4IDEzLjgwMi00MyAyOC4xNTYgMS4yNjMgMzQuMTk1IDI4Ljk2MSA2MS42MDcgNjMuMjUgNjIuNSAxNi44NzctMzIuNTEgNy4wNi02OS45MTktMjAuMjUtOTAuNjU2eiIgZmlsbD0iIzI4MTcwYiIgb3BhY2l0eT0iLjc1Ii8+PHBhdGggZD0iTTUwNC44ODkgODYyLjU0NmMtLjQ3Mi0uMDMyLS45MzIuMDI4LTEuMzc1LjI1LTUuNiAyLjgwMSAwIDE0IDAgMTQtMTYuODA3IDE0LjAwOS0xMy4yMzYgMzcuOTM4LTMyLjg0NCAzNy45MzgtMTAuNjg5IDAtMjEuMzIyLTEyLjI5My0zMi41MzEtMTkuODEyLS4xNDQgMS43NzMtLjI1IDMuNTY0LS4yNSA1LjM3NSAwIDI0LjUxNSAxMy41MSA0NS44NjMgMzMuNDY5IDU3LjA2MyA1LjU4My0uNzAzIDExLjE1OC0yLjExNCAxNS4zNDQtNC45MDYgMjEuOTkyLTE0LjY2MiAyNy40NTItNDIuNTU3IDM2LjQzOC01Ni4wMzEgNS41OTYtOC40MDcgMzEuODI0LTcuNjc3IDMzLjU5NC0xMS4yMiAyLjgwNC01LjYwMS01LjYwMi0xNC04LjQwNi0xNGgtMjIuNDA2Yy0xLjU2NiAwLTQuMDI1LTIuNzgtNS41OTQtMi43OGgtOC40MDZzLTMuNzI1LTUuNjUtNy4wMzEtNS44NzV6IiBmaWxsPSIjZmZmIi8+PC9nPjwvc3ZnPg== |
| mediatype: image/svg+xml |
| install: |
| spec: |
| deployments: |
| - name: camel-k-operator |
| spec: |
| replicas: 1 |
| selector: |
| matchLabels: |
| name: camel-k-operator |
| strategy: |
| type: Recreate |
| template: |
| metadata: |
| labels: |
| camel.apache.org/component: operator |
| name: camel-k-operator |
| spec: |
| containers: |
| - command: |
| - camel-k |
| env: |
| - name: WATCH_NAMESPACE |
| valueFrom: |
| fieldRef: |
| fieldPath: metadata.annotations['olm.targetNamespaces'] |
| - name: OPERATOR_NAME |
| value: camel-k |
| - name: POD_NAME |
| valueFrom: |
| fieldRef: |
| fieldPath: metadata.name |
| - name: NAMESPACE |
| valueFrom: |
| fieldRef: |
| fieldPath: metadata.namespace |
| image: docker.io/apache/camel-k:0.3.4 |
| imagePullPolicy: IfNotPresent |
| name: camel-k-operator |
| resources: {} |
| serviceAccountName: camel-k-operator |
| permissions: |
| - rules: |
| - apiGroups: |
| - camel.apache.org |
| resources: |
| - '*' |
| verbs: |
| - '*' |
| - apiGroups: |
| - "" |
| resources: |
| - pods |
| - services |
| - endpoints |
| - persistentvolumeclaims |
| - configmaps |
| - secrets |
| - serviceaccounts |
| verbs: |
| - create |
| - delete |
| - deletecollection |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - rbac.authorization.k8s.io |
| resources: |
| - roles |
| - rolebindings |
| verbs: |
| - create |
| - delete |
| - deletecollection |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - "" |
| resources: |
| - events |
| verbs: |
| - get |
| - list |
| - watch |
| - apiGroups: |
| - apps |
| resources: |
| - deployments |
| - replicasets |
| - statefulsets |
| verbs: |
| - create |
| - delete |
| - deletecollection |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - apps |
| resources: |
| - daemonsets |
| verbs: |
| - get |
| - list |
| - watch |
| - apiGroups: |
| - extensions |
| resources: |
| - ingresses |
| verbs: |
| - create |
| - delete |
| - deletecollection |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - "" |
| - build.openshift.io |
| resources: |
| - buildconfigs |
| - buildconfigs/webhooks |
| - builds |
| verbs: |
| - create |
| - delete |
| - deletecollection |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - "" |
| - image.openshift.io |
| resources: |
| - imagestreamimages |
| - imagestreammappings |
| - imagestreams |
| - imagestreams/secrets |
| - imagestreamtags |
| verbs: |
| - create |
| - delete |
| - deletecollection |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - "" |
| - build.openshift.io |
| resources: |
| - buildconfigs/instantiate |
| - buildconfigs/instantiatebinary |
| - builds/clone |
| verbs: |
| - create |
| - apiGroups: |
| - "" |
| - route.openshift.io |
| resources: |
| - routes |
| verbs: |
| - create |
| - delete |
| - deletecollection |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - "" |
| - route.openshift.io |
| resources: |
| - routes/custom-host |
| verbs: |
| - create |
| - apiGroups: |
| - serving.knative.dev |
| resources: |
| - '*' |
| verbs: |
| - create |
| - delete |
| - deletecollection |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - eventing.knative.dev |
| resources: |
| - '*' |
| verbs: |
| - create |
| - delete |
| - deletecollection |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| serviceAccountName: camel-k-operator |
| strategy: deployment |
| installModes: |
| - supported: true |
| type: OwnNamespace |
| - supported: true |
| type: SingleNamespace |
| - supported: false |
| type: MultiNamespace |
| - supported: true |
| type: AllNamespaces |
| keywords: |
| - apache |
| - kamel |
| - kubernetes |
| - serverless |
| - microservices |
| labels: |
| name: camel-k-operator |
| links: |
| - name: Camel K source code repository |
| url: https://github.com/apache/camel-k |
| maintainers: |
| - email: users@camel.apache.org |
| name: The Apache Software Foundation |
| maturity: alpha |
| minKubeVersion: 1.11.0 |
| provider: |
| name: The Apache Software Foundation |
| replaces: camel-k-operator.v0.3.3 |
| selector: |
| matchLabels: |
| name: camel-k-operator |
| version: 0.3.4 |