6. Deploying Open Integration using SCM

You can now deploy Open Integration using the infrastructure resources that you created. This step initiates the deployment of the Open Integration services.

Optionally, you can set up the Coherence server for Open Integration by configuring the coherence section in the payload. You can deploy a new Coherence server or use your existing Coherence server during the Open Integration deployment.

You can deploy Open Integration using the /openintegration API endpoint:

  • Method: POST
  • Endpoint: /openintegration
  • Description: Initiates the deployment of Open Integration using the infrastructure resources and configuration files created in the earlier steps.
  • Sample payload for:
    • Deploying Open Integration:
      {  
         "name": "openint1",
         "infra_id": "7OZMKQ",
         "openintegration": {
            "profile_json_file_path": "/home/opc/siebel/profile.json",
            "config_json_file_path": "/home/opc/siebel/config.json",
            "siebel_keystore_file_path": "/home/opc/siebel/siebelkeystore.jks",
            "siebel_truststore_file_path": "/home/opc/siebel/siebeltruststore.jks",
            "siebel_keystore_password": "siebel",
            "siebel_truststore_password": "siebel"
         }
      }
    • Deploying Open Integration with a new Coherence server:
      {
         "name": "openint1",
         "infra_id": "7OZMKQ",
         "openintegration": {
            "profile_json_file_path": "/home/opc/siebel/profile.json",
            "config_json_file_path": "/home/opc/siebel/config.json",
            "siebel_keystore_file_path": "/home/opc/siebel/siebelkeystore.jks",
            "siebel_truststore_file_path": "/home/opc/siebel/siebeltruststore.jks",
            "siebel_keystore_password": "siebel",
            "siebel_truststore_password": "siebel"
         },
         "coherence":
         {
            "use_existing": false,
            "coherence_cluster_name": "siebelcache"
         }
      }
    • Deploying Open Integration using an existing Coherence server:
      {
         "name": "openint1",
         "infra_id": "7OZMKQ",
         "openintegration": {
            "profile_json_file_path": "/home/opc/siebel/profile.json",
            "config_json_file_path": "/home/opc/siebel/config.json",
            "siebel_keystore_file_path": "/home/opc/siebel/siebelkeystore.jks",
            "siebel_truststore_file_path": "/home/opc/siebel/siebeltruststore.jks",
            "siebel_keystore_password": "siebel",
            "siebel_truststore_password": "siebel"
         },
         "coherence":
         {
            "use_existing": true,
            "coherence_cluster_name": "siebelcache",
            "wka_endpoint": "siebelcache.openint1.svc.cluster.local"
         }
      }
  • Sample API call request:
    POST https://<SCM_instance_IP>:<port_num>/scm/api/v1.0/openintegration
    	Authorization: Basic Auth
    Content-Type: application/json
  • Sample response:
    {
       "data": {
          "ansible_chart_name": "ansible-test21-h417j9",
          "app_dir": "/home/opc/siebel/microservices/siebel_openint/H417J9",
          "coherence": {
             "coherence_cluster_name": "siebelcache",
             "namespace": "openint1",
             "use_existing": false,
             "wka_endpoint": "coherence-nodeport-siebelcache.openint1.svc.cluster.local"
          },
          "deploy_id": "H417J9",
          "deploy_status": "creation-in-progress",
          "infra_id": "7OZMKQ",
          "name": "opeint1",
          "namespace": "openint1",
          "openintegration": {
             "config_json_file_path": "/home/opc/siebel/config.json",
             "profile_json_file_path": "/home/opc/siebel/profile.json",
             "siebel_keystore_file_path": "/home/opc/siebel/siebelkeystore.jks",
             "siebel_keystore_password": "siebel",
             "siebel_truststore_file_path": "/home/opc/siebel/siebeltruststore.jks",
             "siebel_truststore_password": "siebel"
          },
          "product_name": "siebel_openint",
          "self_link": "https://<SCM_instance_IP>:<port_num>/scm/api/v1.0/openintegration/H417J9",
          "stages": [
             {
                "end_time": "",
                "log_api_link": "",
                "log_location": "",
                "name": "Prepare GitOps",
                "previous_status": "",
                "stage_description": "Generate Flux definitions, Prepare helmchart to git and Prepare GitOps",
                "stage_name": "prepare_gitops",
                "start_time": "",
                "status": ""
             },
             {
                "end_time": "",
                "log_api_link": "",
                "log_location": "",
                "name": "Pre Deploy",
                "previous_status": "",
                "stage_description": "Create pre requisites and other preparations",
                "stage_name": "pre_deploy",
                "start_time": "",
                "status": ""
             },
             {
                "end_time": "",
                "log_api_link": "",
                "log_location": "",
                "name": "Flux Setup",
                "previous_status": "",
                "stage_description": "Do flux Setup and Perform flux bootstrap",
                "stage_name": "flux_setup",
                "start_time": "",
                "status": ""
             },
             {
                "end_time": "",
                "log_api_link": "",
                "log_location": "",
                "name": "Verify Deployment",
                "previous_status": "",
                "stage_description": "Verify HR Deployment",
                "stage_name": "verify_deployment",
                "start_time": "",
                "status": ""
             }
          ]
       },
       "message": "ansible playbook for siebel_openint ansible playbook for executed successfully",
       "status": "success"
    }

    where

    • <SCM_instance_IP> is the hostname IP address for the SCM instance.
    • <port_num> is the port number on the hostname.