Request A Demo
Back to All Blog Articles

Automate SOA Installation Using FlexDeploy – Flexagon

In this blog, I will show how to automate the installation of SOA, BPM, OSB and/or B2B using FlexDeploy. For 12c, there is only one installation JAR file that you can download to install WebLogic.

Automating a SOA Installation

First, we need to create and configure a Workflow within FlexDeploy. Download the workflow source.

Let’s add a few workflow inputs to provide control and customization of the workflow process.

Now we need to create the workflow to conditionally perform the installation and creation of the required database tables.

The Install Binaries step in the workflow has the following script that utilizes the properties created above.

if [[ ${inpSOAVersion} == "12.2.1" ]]
then
 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.0.0_infrastructure.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/fmw_12.2.1.0.0_install.rsp

 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.0.0_osb.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/osb_12.2.1.0.0_install.rsp

 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.0.0_soa.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/soa_12.2.1.0.0_install.rsp

 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.0.0_soa.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/bpm_12.2.1.0.0_install.rsp

 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.0.0_b2bhealthcare.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/b2b_12.2.1.0.0_install.rsp
elif [[ ${inpSOAVersion} == "12.2.1.3" ]]
then
 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.3.0_infrastructure.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/fmw_12.2.1.3.0_install.rsp

 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.3.0_osb.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/osb_12.2.1.3.0_install.rsp

 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.3.0_soa.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/soa_12.2.1.3.0_install.rsp

 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.3.0_soa.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/bpm_12.2.1.3.0_install.rsp

 ${inpJavaHome}/bin/java -d64 -jar ${inpInstallFileDir}/fmw_12.2.1.3.0_b2bhealthcare.jar -silent -invPtrLoc /etc/oraInst.loc -responseFile ${inpInstallFileDir}/b2b_12.2.1.3.0_install.rsp
fi

NOTE: Due to the size of the JAR files, I keep them in a shared folder to eliminate transferring these files to each server.

Now, let’s create a project and associate it to the workflow. In this case we have created a FlexDeploy utility project. Upon execution, you can see that Workflow Inputs are displayed and user will pick which version of install they want to perform. The other inputs are defaulted and can be changed, if needed.

Next, monitor execution logs. If everything works, you will see a success message for each component installed that will be as shown below (SOA install shown).

After the installation, the directory should now have various folders like those shown below.

Fusion Middleware Sample Response Files

Here are sample response files for Fusion Middleware Infrastructure, SOA, BPM, OSB, and B2B. These response files would be located on the shared file structure with the JAR files.

Infrastructure Sample

[ENGINE]

#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0

[GENERIC]

#Set this to true if you wish to skip software updates DECLINE_AUTO_UPDATES=true

#
MOS_USERNAME=

#
MOS_PASSWORD=<SECURE VALUE>

#If the Software updates are already downloaded and available on your local system, then specify the path to the directory where these patches are available and set SPECIFY_DOWNLOAD_LOCATION to true AUTO_UPDATES_LOCATION=

#
SOFTWARE_UPDATES_PROXY_SERVER=

#
SOFTWARE_UPDATES_PROXY_PORT=

#
SOFTWARE_UPDATES_PROXY_USER=

#
SOFTWARE_UPDATES_PROXY_PASSWORD=<SECURE VALUE>

#The oracle home location. This can be an existing Oracle Home or a new Oracle Home
ORACLE_HOME=/apps1/oracle/products/fmw

#Set this variable value to the Installation Type selected. e.g. Fusion Middleware Infrastructure, Fusion Middleware Infrastructure With Examples.
INSTALL_TYPE=Fusion Middleware Infrastructure

#Provide the My Oracle Support Username. If you wish to ignore Oracle Configuration Manager configuration provide empty string for user name.
MYORACLESUPPORT_USERNAME=

#Provide the My Oracle Support Password
MYORACLESUPPORT_PASSWORD=<SECURE VALUE>

#Set this to true if you wish to decline the security updates. Setting this to true and providing empty string for My Oracle Support username will ignore the Oracle Configuration Manager configuration DECLINE_SECURITY_UPDATES=true

#Set this to true if My Oracle Support Password is specified SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

#Provide the Proxy Host
PROXY_HOST=

#Provide the Proxy Port
PROXY_PORT=

#Provide the Proxy Username
PROXY_USER=

#Provide the Proxy Password
PROXY_PWD=<SECURE VALUE>

#Type String (URL format) Indicates the OCM Repeater URL which should be of the format [scheme[Http/Https]]://[repeater host]:[repeater port] COLLECTOR_SUPPORTHUB_URL=

SOA Sample

[ENGINE]

#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0

[GENERIC]

#Set this to true if you wish to skip software updates DECLINE_AUTO_UPDATES=true

#
MOS_USERNAME=

#
MOS_PASSWORD=<SECURE VALUE>

#If the Software updates are already downloaded and available on your local system, then specify the path to the directory where these patches are available and set SPECIFY_DOWNLOAD_LOCATION to true AUTO_UPDATES_LOCATION=

#
SOFTWARE_UPDATES_PROXY_SERVER=

#
SOFTWARE_UPDATES_PROXY_PORT=

#
SOFTWARE_UPDATES_PROXY_USER=

#
SOFTWARE_UPDATES_PROXY_PASSWORD=<SECURE VALUE>

#The oracle home location. This can be an existing Oracle Home or a new Oracle Home 
ORACLE_HOME=/apps1/oracle/products/fmw

#Set this variable value to the Installation Type selected. e.g. SOA Suite, BPM.
INSTALL_TYPE=SOA Suite

OSB Sample

[ENGINE]

#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0

[GENERIC]

#Set this to true if you wish to skip software updates DECLINE_AUTO_UPDATES=true

#
MOS_USERNAME=

#
MOS_PASSWORD=<SECURE VALUE>

#If the Software updates are already downloaded and available on your local system, then specify the path to the directory where these patches are available and set SPECIFY_DOWNLOAD_LOCATION to true AUTO_UPDATES_LOCATION=

#
SOFTWARE_UPDATES_PROXY_SERVER=

#
SOFTWARE_UPDATES_PROXY_PORT=

#
SOFTWARE_UPDATES_PROXY_USER=

#
SOFTWARE_UPDATES_PROXY_PASSWORD=<SECURE VALUE>

#The oracle home location. This can be an existing Oracle Home or a new Oracle Home 
ORACLE_HOME=/apps1/oracle/products/fmw

#Set this variable value to the Installation Type selected. e.g. Service Bus.
INSTALL_TYPE=Service Bus

BPM Sample

[ENGINE]

#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0

[GENERIC]

#Set this to true if you wish to skip software updates DECLINE_AUTO_UPDATES=true

#
MOS_USERNAME=

#
MOS_PASSWORD=<SECURE VALUE>

#If the Software updates are already downloaded and available on your local system, then specify the path to the directory where these patches are available and set SPECIFY_DOWNLOAD_LOCATION to true AUTO_UPDATES_LOCATION=

#
SOFTWARE_UPDATES_PROXY_SERVER=

#
SOFTWARE_UPDATES_PROXY_PORT=

#
SOFTWARE_UPDATES_PROXY_USER=

#
SOFTWARE_UPDATES_PROXY_PASSWORD=<SECURE VALUE>

#The oracle home location. This can be an existing Oracle Home or a new Oracle Home 
ORACLE_HOME=/apps1/oracle/products/fmw

#Set this variable value to the Installation Type selected. e.g. SOA Suite, BPM.
INSTALL_TYPE=BPM

B2B Sample

[ENGINE]

#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0

[GENERIC]

#Set this to true if you wish to skip software updates DECLINE_AUTO_UPDATES=true

#
MOS_USERNAME=

#
MOS_PASSWORD=<SECURE VALUE>

#If the Software updates are already downloaded and available on your local system, then specify the path to the directory where these patches are available and set SPECIFY_DOWNLOAD_LOCATION to true AUTO_UPDATES_LOCATION=

#
SOFTWARE_UPDATES_PROXY_SERVER=

#
SOFTWARE_UPDATES_PROXY_PORT=

#
SOFTWARE_UPDATES_PROXY_USER=

#
SOFTWARE_UPDATES_PROXY_PASSWORD=<SECURE VALUE>

#The oracle home location. This can be an existing Oracle Home or a new Oracle Home 
ORACLE_HOME=/apps1/oracle/products/fmw

#Set this variable value to the Installation Type selected. e.g. B2B, Healthcare.
INSTALL_TYPE=B2B

 

Related Resources

Oracle Integration Cloud – Migrate Integrations, Connections and Lookups

Oracle Integration Cloud (OIC) serves as a unified platform for seamlessly integrating cloud and on-premises applications. FlexDeploy, a robust DevOps ...
Kintana

Why Kintana Isn’t a Long-Term Viability for Enterprises

Those who have worked in IT for any length of time are likely familiar with the project management tool Kintana. ...

3 Steps to Increasing your Development Release Velocity

Every organization needs to be responsive to changing business needs and market dynamics. While we have seen agile adoption resulting ...

Join DevOps leaders across the globe who receive analysis, tips, and trends in their inbox