Thursday, October 24, 2024

#1028 Configuring a new OIC3 instance

Introduction

In this blog post I discuss the provisioning and initial configuration required to ensure all OIC components are available to you. Per default Visual Builder, File Server and Process are not enabled. It's easy to do so, but you have to do it. You may also want to enable OIC activity stream logs to be sent to OCI Logging and OCI Logging analytics, you have to execute a couple of steps to enable this. Also OIC3 has native actions that allow you, as a developer, to transparently integrate with File Server and OCI Services such as Object Storage. Some setup is also required here. So, without further ado, let's begin.


OIC3 Provisioning    

Provisioning a new OIC3 instance is simple - 

Note the 3 options -

  • Standard
  • Enterprise
  • Healthcare



I have provisioned an EE so the steps I do afterwards are as follows - 

  1. Enable File Server
  2. Enable Visual Builder
  3. Enable Process
  4. Enable Logging
As you can see, I've already clicked the link to add Visual Builder.

I do the same for Process - 
note the 2 work requests for adding VB and Process. Note the 2 associated Services - for VB and Process.

I also enabled File Server, note, this does not appear as an associated service - 

Enabling OCI Logging 

Enabling Logging, i.e. sending the OIC3 activity stream logs to OCI Logging, is simple - I begin by creating a target log group in OCI Logging

This I can then assign when I enable OIC logging - 


Please be aware that you can use the same target OCI Logging log group for multiple OIC instances. This allows you to aggregate logs at OCI Logging level. These logs can be pushed to OCI Logging analytics, thus enabling OIC Fleet Management. Please see my multiple posts on this topic here.
Note the 2 new menu items - Visual Builder and Process.

Visual Builder 


I validate the Visual Builder link - 

Visual Builder has seamless integration with OIC Integration and Process - 
























I click on Integration Applications and see the following error - 

I need to amend the connection from VB to OIC Integration to OAuth.

Naturally, I need client id and secret - this I can get from the Confidential App created for this new OIC3 instance - 

Browse down the page to find - 

Now back to Visual Builder - 
We need to edit the Server Settings - 
























Now I can create a Service Connection to OIC Integration - 


That's Visual Builder sorted. 
We can also use the client id and secret to invoke an integration endpoint from Postman. We will also need the Scopes entry from the Oracle Cloud Services entry for this OIC3 instance, and the idcs token url. The latter is of the format -  https://idcs-yourIDCS.identity.oraclecloud.com/oauth2/v1/token. You can find "your" IDCS url here- 

Now to my test integration - 


Here's the request in Postman - 


 

Process 

Now to Process - you should have transparent access -







File Server


Finally, File Server









Check out your user -

First time in? You need to enable the user -

You can apply permissions to your home folder - for yourself and others.




 



Final step, ensure you can connect to the file server, using the ip / port shown and including your OIC credentials.





 

OCI Native Actions


Let's now look it configuring OIC to leverage the OCI Object Storage Native Action.

To do this, I need to create a dynamic group in my Identity Domain - this group will have 1 member, my OIC instance. The group will then surface in a set of policies that will allow OIC transparent access, from a developer perspective, to OCI Object Storage.

The policies are as follows - 

allow dynamic-group yourDynGroup to manage object-family in compartment yourCompartment
 allow dynamic-group yourDynGroup to inspect compartments in compartment yourCompartment
 
First to creating the dynamic group; the OIC instance will be identified by it's client id, something we already have.

Browse down the entry to get the client id - make sure you are looking at the correct OIC instance!

I set up an object storage bucket in the compartment specified in the policy.
























Now to using these 2 native actions in an integration - the first integration uses the File Server native action to read from one folder and write to another - 

As you can see, the File Server action is used 3 times - 

  1. to list the contents of an ftp folder/directory
  2. for each file: get a reference to that file
  3. using the reference, write a copy of the file to another ftp directory/folder.

The native action works on directories and files - 
























The Object Storage native action works on Buckets and Objects - 


Here's an example with List Buckets - firstly, here are my object storage buckets in the target compartment for this test  - 



I run the integration -