Features Flag in Oracle Integration Cloud
This article will explain features flag in Oracle Integration Cloud
Oracle Integration Cloud allows enabling specific functionality to the specific OIC instance as required which is called feature flag model. The codebase will remain the same for all instances but feature flag control the features.
Each new feature is assigned a specific flag that is used to control the feature. For example, if you want to call already activated integration inside another integration, there is a feature flag oic.ics.console.integration.invoke.local.integration assigned to this specific feature. If this flag is enabled in the OIC instance then only this feature can be used. Flags are controlled from a central system and can be updated in real-time by Oracle development and operations. This means that feature flags can be turned on very quickly, and also if a problem occurs they can be disabled.
See one example of feature flag here which calls OIC Integration
The life cycle of Feature Flags
Below diagram depicts the different phases of the Feature Flags
Let’s go ahead and understand the meaning of each phase
When the specific feature enters to the stage then this feature is available to Oracle only and not available to customers. It is because Oracle trying to test the feature end to end before turning them on for any customers. Once Oracle satisfied with the feature internally then they start releasing the feature to the selected customers and feature move to the Feature Controlled Stage. Please note that this change in stage does not require any code changes, it just requires an approval process to turn on the feature.
Once a feature enters to the Feature Controlled stage then the customer can use this feature in their OIC instances. In order to use the feature, the customer may have to request Oracle to turn on the feature flag of the specific feature on one or more OIC instances. If Oracle approves this, then those instances will have this feature flag enabled and the feature will become available within few minutes of being enabled. Again, there are no code changes to the customer instance, just the change in the flag status from disabled to enabled in the central feature flag server.
Feature Controlled General Availability
Once Oracle happy with the stability of a feature, then Oracle enables this feature for all the instances for all the customers. However, Oracle still keeps the feature flag in place so that if a specific customer encounters a problem for any feature, Oracle can turn off that feature of that customer instance. Again, this does not require any code changes.
General Availability (GA)
Once the feature enters this stage, then the flag controlling the feature will be removed and customers do not require requesting oracle to enable to feature. All the features (entered into the GA stage) will become available automatically for all customers.
How to check what all features are turned on to the OIC instance
- Login into the OIC instance, click on the Integrations
- Click on the user’s icon from top right and select About
- Expand the Enabled feature which shows all the enabled feature flag on the OIC instance
See the Oracle blog to check what all feature flag exist