1. Creating Infrastructure Resources
You must create the infrastructure resources required for deploying Open Integration.
This includes setting up infrastructure resources such as the Kubernetes cluster, Git
repository, registry, Coherence Operator, and so on. This step initiates the creation of
the infrastructure resources on which Open Integration will run. You can initiate the
creation of infrastructure resources using the /infrastructure API:
- Method: POST
- Endpoint:
/infrastructure - Description: Initiates the creation of the required infrastructure resources based on the input payload and returns an infrastructure ID, which will be used during the Open Integration deployment.
- Sample API call
request:
POST https://<SCM_instance_IP>:<port_num>/scm/api/v1.0/infrastructure Authorization: Basic Auth Content-Type: application/json - Request payload structure:
{ "kubernetes": { "kubernetes_type": "BYO_OKE", "namespace": "<infra-namespace>", "byo_oke": { "oke_cluster_id": "<oke-cluster-ocid>", "oke_endpoint": "PRIVATE" } }, "git": { "git_type": "byo_git", "byo_git": { "git_protocol_type": "https", "git_scm_repo_url": "https://<git-host>/<group>/<gitops-repo>.git", "git_scm_repo_branch": "<gitops-branch>", "git_scm_flux_folder": "<flux-folder>", "git_helm_repo_url": "https://<git-host>/<group>/<helm-repo>.git", "git_helm_repo_branch": "<helm-branch>", "git_user": "<git-user>", "git_accesstoken": "<git-token>", "git_selfsigned_cacert": "", "skip_flux_bootstrap": false } }, "registry": { "registry_url": "<registry-host>", "registry_prefix": "<registry-prefix>", "registry_user": "<registry-user>", "registry_password": "<registry-password>" }, "operators": [ { "coherence_operator": true } ] }Optional Security Context
You can optionally specify a
security_contextsection at the top-level of the infrastructure provisioning payload when infrastructure resources and operators must run with custom non-root user ID and group ID. For example:{ "security_context": { "run_as_user": <uid>, "run_as_group": <gid>, "fs_group": <fs_group_id> } }If you specify
security_context, you must configure the following parameters:run_as_userrun_as_groupfs_group
On OpenShift,
run_as_usermust be within the range specified by theopenshift.io/sa.scc.uid-rangenamespace annotation. Thefs_groupvalue must be the first ID in the range specified by theopenshift.io/sa.scc.supplemental-groupsnamespace annotation.To determine valid values, inspect the namespace annotations and select a user ID from the
uid-rangeannotation and the first group ID from thesupplemental-groupsannotation. - Sample response:
{ "data": { "infra_details": { "components_info": { "git": { "byo_git": { "git_accesstoken": "********", "git_helm_repo_branch": "DEMO_HELM", "git_helm_repo_url": "https://devops. xxxxx.oci.oraclecloud.com/namespaces/siebeldev/projects/DEMO/repositories/DEMO_HELM", "git_protocol_type": "http", "git_scm_flux_folder": "flux1", "git_scm_repo_branch": "DEMO_SCM", "git_scm_repo_url": "https://devops.scmservice.xxxxx.oci.oraclecloud.com/namespaces/siebeldev/projects/DEMO/repositories/DEMO_SCM", "git_user": "**********", "skip_flux_bootstrap": false }, "git_type": "byo_git" }, "kubernetes": { "byo_oke": { "oke_cluster_id": "ocid1.cluster.oc1.xxxxx......", "oke_endpoint": "PRIVATE" }, "kubernetes_type": "BYO_OKE" }, "registry": { "registry_password": "********", "registry_url": "iad.ocir.io", "registry_prefix": "siebel_openint", "registry_user": "******" } }, "infra_id": "7OZMKQ", "infra_status": "creation-in-progress", "resource_status": { "git": "not-validated", "kubernetes": "not-validated", "registry": "not-validated" }, "stages_info": [ { "end_time": "Thu, 22 May 2025 06:54:38 GMT", "log_api_link": "", "log_location": "/home/opc/siebel/infrastructures/7OZMKQ/helm_setup.log", "name": "Setup Helm Chart for validation", "previous_status": "", "stage_name": "setup_validation_helmchart", "start_time": "Thu, 22 May 2025 06:54:27 GMT", "status": "passed" }, { "end_time": "Thu, 22 May 2025 06:54:38 GMT", "log_api_link": "", "log_location": "/home/opc/siebel/infrastructures/7OZMKQ/helm_setup.log", "name": "Check Job status", "previous_status": "", "stage_name": "check_job_status_helmchart", "start_time": "Thu, 22 May 2025 06:54:27 GMT", "status": "in-progress" }, { "end_time": "Thu, 22 May 2025 06:54:38 GMT", "log_api_link": "", "log_location": "", "name": "Collect Infra artifacts", "previous_status": "", "stage_name": "collect_infra_artifacts", "start_time": "Thu, 22 May 2025 06:54:27 GMT", "status": "" } ], "updated_values": {} } }, "message": "Infrastructure details retrieved successfully.", "status": "success" }