Chapter 2. Fuse Online

Fuse Online provides a web browser interface that lets a business expert integrate two or more different applications or services without writing code. It also provides features that allow the addition of code if it is needed for complex use cases.

Fuse Online runs an integration on OpenShift as a Spring Boot application that uses Apache Camel. As a Technology Preview feature, Camel K is available as an additional runtime.

2.1. About Fuse Online distributions

Fuse Online is Red Hat’s web-based integration platform. Syndesis is the open source project for Fuse Online. Fuse Online runs in these OpenShift environments:

Host Environment

Installation

OpenShift Online
OpenShift Dedicated

Red Hat installs and provisions Fuse Online on Red Hat infrastructure.

OpenShift Container Platform

Customer installs and manages.

2.2. New features in Fuse Online 7.5

Fuse Online 7.5 provides the following new features:

  • The following connectors, which were Technology Preview features in the previous release, are now supported:

    • Jira lets you connect to a Jira server to obtain, update or add issues.
    • Receive Email lets you create connections to an IMAP or POP3 email server to obtain messages.
    • Send Email lets you create connections to an SMTP email server and send messages.
  • API provider integrations now support operation flows that handle errors.

    The OpenAPI document that defines the API provider integration operations can now specify possible return codes for each operation. When you add to the flow for that operation, you can map each possible connection error to one of these return codes.

  • Conditional flows are now supported. This was a Technology Preview feature in the previous release.

    You can add a Conditional Flows step to a simple integration’s flow or to an API provider integration operation flow. When you add a Conditional Flows step, you specify one or more conditions for the integration to evaluate against the integration data at run time. For each condition, you create a flow, which can have the same connections and steps that you can add to a simple integration. This lets you create an integration that determines its execution path based on the data that the integration is operating on. When you add a Conditional Flows step, you decide whether to use the basic conditional expression builder, which is suitable for most integrations, or the advanced expression builder, which lets you specify a conditional expression in Camel Simple Language.

2.3. Changes in Fuse Online 7.5

Fuse Online 7.5 changes Fuse Online 7.4 features as follows:

  • Changes to the data mapper:

    • In a mapping from multiple source fields to one target field, you can now apply one of the following transformations to the source fields: Add, Average, Concatenate, Contains, Count, Divide, Format, Item At, Maximum, Minimum, Multiply, Subtract.
    • Mapping from a collection field to a non-collection field now concatenates the source values and inserts the result in the target field. In previous releases, only the last value in the collection was mapped to the target field. To change the default concatenation behavior, you can apply a transformation, other than Concatenate to the source field.
    • Mapping from a non-collection field to a collection field now splits the source value at a delimiter and creates a collection element for each split value. In previous releases, the target collection always contained just one element.
  • If you are running Fuse Online on OpenShift Container Platform (OCP) on premise, the feature changes are:

    • The name of the CONTROLLERS_EXPOSE_VIA3SCALE server environment variable has changed to OPENSHIFT_MANAGEMENT_URL_FOR3SCALE. When the OPENSHIFT_MANAGEMENT_URL_FOR3SCALE variable is set for a particular OpenShift project, the default behavior is that APIs for API provider integrations in that project are discoverable by Red Hat 3scale.
    • For API provider integrations, you can now disable discovery for a particular integration. You do this in the Fuse Online integration summary after publishing the integration.
    • The public REST API endpoints that mark integrations for particular environments now require existing environment labels. That is, you must create the environment label before you can assign it to an integration. In previous releases, an endpoint created an environment label if it did not already exist.
    • You can no longer configure OpenShift so that Fuse Online users bypass the page that prompts for authorization for Fuse Online to access the user’s OpenShift account.

2.4. Upgrading existing integrations that are running on OpenShift Online

When Fuse 7.5 is released, the Fuse Online infrastructure on OpenShift Online is automatically upgraded. During the infrastructure upgrade, any existing integrations that are running on OpenShift Online continue to run both during and after the upgrade. However, the existing integrations continue to run with the older versions of Fuse libraries and dependencies.

After you receive an email message that lets you know that the Fuse Online infrastructure has been upgraded to the new release, upgrade your existing integrations by republishing them (not just restarting them). Do this as soon as you can.

To republish your integrations, in your Fuse Online environment, in the left navigation panel, click Integrations. Then do the following for each integration:

  1. To the right of the integration entry, click three vertical dots and select Edit.
  2. When Fuse Online displays the integration for editing, in the upper right, click Publish.

Publishing forces a rebuild that uses the latest Fuse Online dependencies.

Note

The Fuse Online user interface shows a warning if any element of an integration has a newer dependency that needs to be updated.

2.5. Important notes

Important notes for the Fuse 7.5 release of the Fuse Online distribution:

  • The Fuse Online installation procedure assumes that the container registry is internal. Fuse Online does not support or test the use of external container registries, custom registries, or registries in disconnected environments.
  • Upgrade of Fuse Online 7.4 to 7.5.1 works correctly. Upgrade of Fuse Online 7.4 to 7.5 did not work because of the following issues: ENTESB-12327 and ENTESB-12328. These issues are resolved in Fuse Online 7.5.1.
  • In this release, connections to Kafka do not support SSL. It is expected that this will change in a future release.
  • A Fuse Online account is limited to a specific number of integrations that can be running at one time. For details, see the pricing plan. If you are using a Fuse Online evaluation account, then only one integration at a time can be running.
  • An OpenAPI schema that you upload to Fuse Online might not define input/output types. When Fuse Online creates a custom API client from an OpenAPI schema that does not specify input/output types then it is not possible to create an integration that maps integration data to fields that the API client can process or from fields that the API client processed. If an integration requires data mapping to or from a custom API, then when you upload the OpenAPI schema, click Review/Edit to open API Designer, which is an API editing tool, and add input/output type specifications.
  • An OpenAPI document that you use for a custom API client connector or for an API provider integration cannot have cyclic schema references. For example, a JSON schema that specifies a request or response body cannot reference itself as a whole nor reference any part of itself through any number of intermediate schemas.

2.6. Obtaining technical support

To obtain technical support, in Fuse Online, in the left navigation panel, click Support. Use the Support page to download diagnostic information for all integrations or for one or more integrations that you choose. The page also provides a link for opening a support ticket and providing the diagnostic information that you downloaded.

2.7. Technology Preview features

This release includes the Technology Preview features that are listed below.

Important

Technology Preview features are not supported with Red Hat production service level agreements (SLAs), might not be functionally complete, and Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process. For more information, see Red Hat Technology Preview features support scope.

  • Data virtualization

    For Fuse Online development environments that run on OpenShift Container Platform on-site, data virtualization is a container-native service. It integrates data from multiple heterogeneous sources, including relational databases, files, web services, and SaaS repositories. In Fuse Online, developers can create a virtual database image that defines a custom, logical view of their source data. They can then deploy that image on OpenShift. Applications connect to the virtual database over a standard OData, REST, or JDBC interface, and can run SQL queries across all of the data sources, even those that do not support SQL.

    To enable data virtualization, see Installing Fuse Online on OCP.

  • Connectors for:

  • Conditional expressions for mapping data fields

    In the data mapper, you can specify a conditional expression and apply it to one data mapping. For example, a conditional expression can specify evaluation of a source field and how to populate the target field if the source field is empty. The limited set of expressions that you can specify are similar to Microsoft Excel expressions. In this release, a conditional expression cannot refer to a field that is a collection.

  • Camel K is available as an additional runtime.
  • For a REST API client that uses OAuth, when you create an API client connector, you can change the default OAuth2 behavior of connections that you create from that connector. Fuse Online vendor extensions to the OpenAPI specification support the following:

    • Providing client credentials as parameters.
    • Obtaining a new access token based on HTTP response status codes.