Uploaded image for project: 'Kogito'
  1. Kogito
  2. KOGITO-8430

[Operator] Add support for Kubernetes Functions

XMLWordPrintable

    • False
    • None
    • False
    • ---
    • ---

      Knative/Kubernetes resources such as KN Service, Service, Ingress, Deployment, Pods, and so on (see: https://github.com/knative/specs/blob/main/specs/eventing/overview.md#addressable) can be called by a regular HTTP POST request.

      This means that SW could support this feature out of the box, not needing an OpenAPI interface to do so.

      Image this example:

      {
        "id": "myworkflow",
        "specVersion": "0.8",
        "version": "1.0",
        "start": "State1",
        "functions": [
          {
            "name": "function1",
            "type": "custom",
            "operation": "kubernetes:serving.knative.dev/v1/mynamespace/myservice",
            "metadata": {
              "path": "/my_path"
            }
          }
        ],
        "states": [
          {
            "name": "State1",
            "type": "operation",
            "actions": [
              {
                "functionRef": {
                  "refName": "function1",
                  "arguments": {
                    "data": "${ .data }"
                  }
                }
              }
            ],
            "end": true
          }
        ]
      }
      

      The engine would make POST requests to these endpoints with the given payload manipulated by the workflow. For example:

      kubernetes:serving.knative.dev/v1/mynamespace/myservice -> the explicitly kubernetes resource at mynamespace

      This will make the integration with the platform way easier and enhance the dev experience.

      This feature can be done based on https://issues.redhat.com/browse/KOGITO-7373.

              rhn-support-zanini Ricardo Zanini
              hbelmiro@redhat.com Helber Belmiro
              Marian Macik Marian Macik
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: