blob: 8f0e8abd0243e4dfa28567b0e4bb6ee72768b87f [file] [log] [blame]
apiVersion: operators.coreos.com/v1alpha1
kind: ClusterServiceVersion
metadata:
annotations:
alm-examples: |-
[
{
"apiVersion": "sonataflow.org/v1alpha08",
"kind": "SonataFlow",
"metadata": {
"annotations": {
"sonataflow.org/description": "Greeting example on k8s!",
"sonataflow.org/version": "0.0.1"
},
"name": "greeting"
},
"spec": {
"flow": {
"functions": [
{
"name": "greetFunction",
"operation": "sysout",
"type": "custom"
}
],
"start": "ChooseOnLanguage",
"states": [
{
"dataConditions": [
{
"condition": "${ .language == \"English\" }",
"transition": "GreetInEnglish"
},
{
"condition": "${ .language == \"Spanish\" }",
"transition": "GreetInSpanish"
}
],
"defaultCondition": "GreetInEnglish",
"name": "ChooseOnLanguage",
"type": "switch"
},
{
"data": {
"greeting": "Hello from JSON Workflow, "
},
"name": "GreetInEnglish",
"transition": "GreetPerson",
"type": "inject"
},
{
"data": {
"greeting": "Saludos desde JSON Workflow, "
},
"name": "GreetInSpanish",
"transition": "GreetPerson",
"type": "inject"
},
{
"actions": [
{
"functionRef": {
"arguments": {
"message": ".greeting+.name"
},
"refName": "greetFunction"
},
"name": "greetAction"
}
],
"end": true,
"name": "GreetPerson",
"type": "operation"
}
]
}
}
},
{
"apiVersion": "sonataflow.org/v1alpha08",
"kind": "SonataFlowBuild",
"metadata": {
"name": "greeting"
},
"spec": {
"timeout": "360s"
}
},
{
"apiVersion": "sonataflow.org/v1alpha08",
"kind": "SonataFlowPlatform",
"metadata": {
"name": "sonataflow-platform"
},
"spec": {
"build": {
"config": {
"registry": {
"address": "quay.io/kiegroup",
"secret": "regcred"
}
}
}
}
}
]
capabilities: Basic Install
categories: Application Runtime
description: OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications based on the CNCF Serverless Workflow specification
operators.openshift.io/valid-subscription: '["OpenShift Container Platform", "OpenShift Platform Plus"]'
operators.operatorframework.io/builder: operator-sdk-v1.25.0
operators.operatorframework.io/internal-objects: '["sonataflowbuilds.sonataflow.org"]'
operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
repository: https://github.com/apache/incubator-kie-kogito-serverless-operator
support: Red Hat
name: logic-operator-rhel8.v1.30.0
namespace: placeholder
spec:
apiservicedefinitions: {}
customresourcedefinitions:
owned:
- description: SonataFlowBuild is an internal custom resource to control workflow build instances in the target platform
displayName: Sonata Flow Build
kind: SonataFlowBuild
name: sonataflowbuilds.sonataflow.org
resources:
- kind: BuildConfig
name: An Openshift Build Config
version: build.openshift.io/v1
specDescriptors:
- description: 'Arguments lists the command line arguments to send to the internal builder command. Depending on the build method you might set this attribute instead of BuildArgs. For example: ".spec.arguments=verbose=3". Please see the SonataFlow guides.'
displayName: Arguments
path: arguments
- description: Optional build arguments that can be set to the internal build (e.g. Docker ARG)
displayName: BuildArgs
path: buildArgs
- description: Optional environment variables to add to the internal build
displayName: Envs
path: envs
- description: Resources optional compute resource requirements for the builder
displayName: Resources
path: resources
- description: Timeout defines the Build maximum execution duration. The Build deadline is set to the Build start time plus the Timeout duration. If the Build deadline is exceeded, the Build context is canceled, and its phase set to BuildPhaseFailed.
displayName: Timeout
path: timeout
statusDescriptors:
- description: BuildPhase Current phase of the build
displayName: BuildPhase
path: buildPhase
- description: Error Last error found during build
displayName: Error
path: error
- description: ImageTag The final image tag produced by this build instance
displayName: ImageTag
path: imageTag
- description: InnerBuild is a reference to an internal build object, which can be anything known only to internal builders.
displayName: InnerBuild
path: innerBuild
version: v1alpha08
- description: SonataFlowPlatform is the descriptor for the workflow platform infrastructure.
displayName: Sonata Flow Platform
kind: SonataFlowPlatform
name: sonataflowplatforms.sonataflow.org
resources:
- kind: Namespace
name: The Namespace controlled by the platform
version: v1
specDescriptors:
- description: Build Attributes for building workflows in the target platform
displayName: Build
path: build
- description: 'Arguments lists the command line arguments to send to the internal builder command. Depending on the build method you might set this attribute instead of BuildArgs. For example: ".spec.arguments=verbose=3". Please see the SonataFlow guides.'
displayName: Arguments
path: build.template.arguments
- description: Optional build arguments that can be set to the internal build (e.g. Docker ARG)
displayName: BuildArgs
path: build.template.buildArgs
- description: Optional environment variables to add to the internal build
displayName: Envs
path: build.template.envs
- description: Resources optional compute resource requirements for the builder
displayName: Resources
path: build.template.resources
- description: Timeout defines the Build maximum execution duration. The Build deadline is set to the Build start time plus the Timeout duration. If the Build deadline is exceeded, the Build context is canceled, and its phase set to BuildPhaseFailed.
displayName: Timeout
path: build.template.timeout
- description: DevMode Attributes for running workflows in devmode (immutable, no build required)
displayName: DevMode
path: devMode
statusDescriptors:
- description: Cluster what kind of cluster you're running (ie, plain Kubernetes or OpenShift)
displayName: cluster
path: cluster
- description: Info generic information related to the build
displayName: info
path: info
- description: Version the operator version controlling this Platform
displayName: version
path: version
version: v1alpha08
- description: SonataFlow is the descriptor representation for a workflow application based on the CNCF Serverless Workflow specification.
displayName: Sonata Flow
kind: SonataFlow
name: sonataflows.sonataflow.org
resources:
- kind: Deployment
name: A Deployment for the Flow
version: apps/v1
- kind: Service
name: A Service for the Flow
version: v1
- kind: SonataFlowBuild
name: A SonataFlow Build
version: sonataflow.org/v1alpha08
- kind: Route
name: An OpenShift Route for the Flow
version: route.openshift.io/v1
- kind: ConfigMap
name: The ConfigMaps with Flow definition and additional configuration files
version: v1
specDescriptors:
- description: Flow the workflow definition.
displayName: flow
path: flow
- description: PodTemplate describes the deployment details of this SonataFlow instance.
displayName: podTemplate
path: podTemplate
- description: Resources workflow resources that are linked to this workflow definition. For example, a collection of OpenAPI specification files.
displayName: resources
path: resources
statusDescriptors:
- description: Address is used as a part of Addressable interface (status.address.url) for knative
displayName: address
path: address
- description: Endpoint is an externally accessible URL of the workflow
displayName: endpoint
path: endpoint
- displayName: lastTimeRecoverAttempt
path: lastTimeRecoverAttempt
- description: keeps track of how many failure recovers a given workflow had so far
displayName: recoverFailureAttempts
path: recoverFailureAttempts
version: v1alpha08
description: |-
OpenShift Serverless Logic Kubernetes Operator for deploying workflow applications
based on the [CNCF Serverless Workflow specification](https://serverlessworkflow.io/):
* Deploy workflow applications using the [dev profile](https://sonataflow.org/serverlessworkflow/latest/cloud/operator/developing-workflows.html), suited for the your development cycle
* Build workflow applications based on the platform you're currently working on.
displayName: SonataFlow Operator
install:
spec:
clusterPermissions:
- rules:
- apiGroups:
- ""
resources:
- configmaps
- pods
- pods/exec
- services
- services/finalizers
- namespaces
- serviceaccounts
- persistentvolumeclaims
- secrets
- events
- deployments
- nodes
verbs:
- create
- delete
- deletecollection
- get
- list
- patch
- update
- watch
- apiGroups:
- apps
resources:
- configmaps
- pods
- pods/exec
- services
- services/finalizers
- namespaces
- serviceaccounts
- persistentvolumeclaims
- secrets
- events
- deployments
- nodes
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:
- coordination.k8s.io
resources:
- leases
verbs:
- create
- delete
- deletecollection
- get
- list
- patch
- update
- watch
- apiGroups:
- sonataflow.org
resources:
- sonataflowbuilds
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- sonataflow.org
resources:
- sonataflowbuilds/finalizers
verbs:
- update
- apiGroups:
- sonataflow.org
resources:
- sonataflowbuilds/status
verbs:
- get
- patch
- update
- apiGroups:
- sonataflow.org
resources:
- sonataflowplatforms
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- sonataflow.org
resources:
- sonataflowplatforms/finalizers
verbs:
- update
- apiGroups:
- sonataflow.org
resources:
- sonataflowplatforms/status
verbs:
- get
- patch
- update
- apiGroups:
- sonataflow.org
resources:
- sonataflows
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- sonataflow.org
resources:
- sonataflows/finalizers
verbs:
- update
- apiGroups:
- sonataflow.org
resources:
- sonataflows/status
verbs:
- get
- patch
- update
- apiGroups:
- route.openshift.io
resources:
- route
- routes
verbs:
- create
- delete
- deletecollection
- get
- list
- patch
- update
- watch
- apiGroups:
- route.openshift.io
resources:
- route/finalizers
- routes/finalizers
verbs:
- get
- list
- create
- update
- delete
- deletecollection
- patch
- watch
- apiGroups:
- image.openshift.io
resources:
- imagestreams
- imagestreamtags
verbs:
- create
- delete
- deletecollection
- get
- list
- patch
- update
- watch
- apiGroups:
- image.openshift.io
resources:
- imagestreams/finalizers
- imagestreamtags/finalizers
verbs:
- get
- list
- create
- update
- delete
- deletecollection
- patch
- watch
- apiGroups:
- build.openshift.io
resources:
- buildconfigs
- builds
verbs:
- create
- delete
- deletecollection
- get
- list
- patch
- update
- watch
- apiGroups:
- build.openshift.io
resources:
- buildconfigs/finalizers
- builds/finalizers
verbs:
- get
- list
- create
- update
- delete
- deletecollection
- patch
- watch
- apiGroups:
- build.openshift.io
resources:
- buildconfigs/instantiatebinary
verbs:
- create
- apiGroups:
- authentication.k8s.io
resources:
- tokenreviews
verbs:
- create
- apiGroups:
- authorization.k8s.io
resources:
- subjectaccessreviews
verbs:
- create
serviceAccountName: logic-operator-rhel8-controller-manager
deployments:
- label:
control-plane: controller-manager
name: logic-operator-rhel8-controller-manager
spec:
replicas: 1
selector:
matchLabels:
control-plane: controller-manager
strategy: {}
template:
metadata:
annotations:
kubectl.kubernetes.io/default-container: manager
labels:
control-plane: controller-manager
spec:
containers:
- args:
- --secure-listen-address=0.0.0.0:8443
- --upstream=http://127.0.0.1:8080/
- --logtostderr=true
- --v=0
image: registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
name: kube-rbac-proxy
ports:
- containerPort: 8443
name: https
protocol: TCP
resources:
limits:
cpu: 500m
memory: 128Mi
requests:
cpu: 5m
memory: 64Mi
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
- args:
- --health-probe-bind-address=:8081
- --metrics-bind-address=127.0.0.1:8080
- --leader-elect
command:
- /usr/local/bin/manager
env:
- name: POD_NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
image: registry.redhat.io/openshift-serverless-1-tech-preview/logic-operator-rhel8@sha256:24c2e62bff1f2f7e5579b990e44206ac019bd00f5ca546b069471fc1af34ed75
livenessProbe:
httpGet:
path: /healthz
port: 8081
initialDelaySeconds: 15
periodSeconds: 20
name: manager
readinessProbe:
httpGet:
path: /readyz
port: 8081
initialDelaySeconds: 5
periodSeconds: 10
resources:
limits:
cpu: 500m
memory: 128Mi
requests:
cpu: 10m
memory: 64Mi
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
securityContext:
runAsNonRoot: true
serviceAccountName: logic-operator-rhel8-controller-manager
terminationGracePeriodSeconds: 10
permissions:
- rules:
- apiGroups:
- ""
resources:
- configmaps
verbs:
- get
- list
- watch
- create
- update
- patch
- delete
- apiGroups:
- coordination.k8s.io
resources:
- leases
verbs:
- get
- list
- watch
- create
- update
- patch
- delete
- apiGroups:
- ""
resources:
- events
verbs:
- create
- patch
serviceAccountName: logic-operator-rhel8-controller-manager
strategy: deployment
installModes:
- supported: false
type: OwnNamespace
- supported: false
type: SingleNamespace
- supported: false
type: MultiNamespace
- supported: true
type: AllNamespaces
keywords:
- sonataflow
- cncf
- serverless
- serverlessworkflow
links:
- name: Product Page
url: https://sonataflow.org/serverlessworkflow/latest/index.html
maintainers:
- email: bsig-cloud@redhat.com
name: Red Hat
maturity: alpha
minKubeVersion: 1.23.0
provider:
name: Red Hat
relatedImages:
- image: registry.redhat.io/openshift4/ose-kube-rbac-proxy@sha256:4564ca3dc5bac80d6faddaf94c817fbbc270698a9399d8a21ee1005d85ceda56
name: kube-rbac-proxy
- image: registry.redhat.io/openshift-serverless-1-tech-preview/logic-operator-rhel8@sha256:24c2e62bff1f2f7e5579b990e44206ac019bd00f5ca546b069471fc1af34ed75
name: manager
version: 1.30.0