In this blog, I will demonstrate use of FlexDeploy workflow to install binaries for Oracle BI 12.2.1.1, 12.2.1.2 or 12.2.1.3. You can use this workflow to install the same versions of Fusion Middleware Infrastructure as well. Files used in this blog post can be downloaded from OracleBI.7z. You can use Workflow XML included in download zip to create FlexDeploy Utility Workflow in your environment. You can alternatively just use shell scripts provided as well for installation.

You must install appropriate Java version on your Servers and save downloaded installer zip files on the servers as well. You can keep downloaded zip files in shared filesystem as well. Keep in mind that if you have multiple Nodes in your domain, FlexDeploy will install this on all Nodes that are included.

Let’s first look at steps involved in the FlexDeploy workflow. You can see all details once you open Workflow in your environment.

  1. Create response file. Install commands require response files for silent installation.
  2. Run Installer for Fusion Middleware Infrastructure. Unzip downloaded zip first and run Java command using response files.
  3. Run Installer for Oracle BI. This is done by using file included in first zip file.

Here are details of two install scripts, Fusion Middleware Infrastructure and Oracle BI. Note that FD_TEMP_DIR is temporary folder variable available when running from FlexDeploy.

RESPONSE_FILE=$FD_TEMP_DIR/install.rsp
echo "# Copyright (c) 2017 Oracle and/or its affiliates. All rights reserved.
#
# Licensed under the Universal Permissive License v 1.0 as shown at http://oss.oracle.com/licenses/upl.
#
[ENGINE]

#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0

[GENERIC]

DECLINE_SECURITY_UPDATES=true
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false" >  $RESPONSE_FILE
# FMW_VERSION - For example, 12.2.1.1, 12.2.1.2 or 12.2.1.3
# ORACLE_HOME
# BINARY_LOCATION
# JAVA_HOME

RESPONSE_FILE=$FD_TEMP_DIR/install.rsp
INV_FILE=/etc/oraInst.loc

cd $BINARY_LOCATION
if [ "$FMW_VERSION" == "12.2.1.1" ]
then
    FMW_ZIP=fmw_12.2.1.1.0_infrastructure_Disk1_1of1.zip
    FMW_JAR=fmw_12.2.1.1.0_infrastructure.jar
elif [ "$FMW_VERSION" == "12.2.1.2" ]
then
    FMW_ZIP=fmw_12.2.1.2.0_infrastructure_Disk1_1of1.zip
    FMW_JAR=fmw_12.2.1.2.0_infrastructure.jar
elif [ "$FMW_VERSION" == "12.2.1.3" ]
then
    FMW_ZIP=fmw_12.2.1.3.0_infrastructure_Disk1_1of1.zip
    FMW_JAR=fmw_12.2.1.3.0_infrastructure.jar
else
    echo $FMW_VERSION is not supported for install.
    exit 1
fi

# Unzip first, if already unzipped leave it
if [ -f $FMW_JAR ]
then
    echo $FMW_JAR already exists in $BINARY_LOCATION
else
    if [ -f $FMW_ZIP ]
    then
        echo unzip $FMW_ZIP
        unzip $FMW_ZIP
    else
        echo $FMW_ZIP not found in $BINARY_LOCATION
        exit 1
    fi
fi

$JAVA_HOME/bin/java -d64 -jar $FMW_JAR -silent -invPtrLoc $INV_FILE -responseFile $RESPONSE_FILE -jreLoc $JAVA_HOME ORACLE_HOME=$ORACLE_HOME INSTALL_TYPE="Fusion Middleware Infrastructure"
# FMW_VERSION - For example, 12.2.1.1, 12.2.1.2 or 12.2.1.3
# ORACLE_HOME
# BINARY_LOCATION

RESPONSE_FILE=$FD_TEMP_DIR/install.rsp
INV_FILE=/etc/oraInst.loc

cd $BINARY_LOCATION
if [ "$FMW_VERSION" == "12.2.1.1" ]
then
    BI_ZIP1=fmw_12.2.1.1.0_bi_linux64_Disk1_1of2.zip
    BI_ZIP2=fmw_12.2.1.1.0_bi_linux64_Disk1_2of2.zip
    BI_UNZIPPED1=bi_platform-12.2.1.1.0_linux64.bin
    BI_UNZIPPED2=bi_platform-12.2.1.1.0_linux64-2.zip
elif [ "$FMW_VERSION" == "12.2.1.2" ]
then
    BI_ZIP1=fmw_12.2.1.2.0_bi_linux64_Disk1_1of2.zip
    BI_ZIP2=fmw_12.2.1.2.0_bi_linux64_Disk1_2of2.zip
    BI_UNZIPPED1=bi_platform-12.2.1.2.0_linux64.bin
    BI_UNZIPPED2=bi_platform-12.2.1.2.0_linux64-2.zip
elif [ "$FMW_VERSION" == "12.2.1.3" ]
then
    BI_ZIP1=fmw_12.2.1.3.0_bi_linux64_Disk1_1of2.zip
    BI_ZIP2=fmw_12.2.1.3.0_bi_linux64_Disk1_2of2.zip
    BI_UNZIPPED1=bi_platform-12.2.1.3.0_linux64.bin
    BI_UNZIPPED2=bi_platform-12.2.1.3.0_linux64-2.zip
else
    echo $FMW_VERSION is not supported for install.
    exit 1
fi

# Unzip first, if already unzipped leave it
if [ -f $BI_UNZIPPED1 ]
then
    echo $BI_UNZIPPED1 already exists in $BINARY_LOCATION
else
    if [ -f $BI_ZIP1 ]
    then
        echo unzip $BI_ZIP1
        unzip $BI_ZIP1
    else
        echo $BI_ZIP1 not found in $BINARY_LOCATION
        exit 1
    fi
fi

if [ -f $BI_UNZIPPED2 ]
then
    echo $BI_UNZIPPED2 already exists in $BINARY_LOCATION
else
    if [ -f $BI_ZIP2 ]
    then
        echo unzip $BI_ZIP2
        unzip $BI_ZIP2
    else
        echo $BI_ZIP2 not found in $BINARY_LOCATION
        exit 1
    fi
fi

./$BI_UNZIPPED1 -silent -invPtrLoc $INV_FILE -responseFile $RESPONSE_FILE -ignoreSysPrereqs -force ORACLE_HOME=$ORACLE_HOME INSTALL_TYPE="BI Platform Distribution with Samples"

Now, users can request installation using FlexDeploy Utility Project. Here is the sample request form.

As you can see, you can request install in specific folder, for specific version.

Now you can see the execution details in FlexDeploy.

I will blog about creation of Domain in next blog entry. Eventually once you have the OBIEE environment you can use FlexDeploy to further automate build and deploy process. See Oracle Business Intelligence Migration with FlexDeploy – Flexibility and Choice.

Chandresh Patel

I have been working with Java EE technologies since 2000. After implementing IBM WebSphere and custom framework solutions, my past 10 years have been focused on Oracle Fusion Middleware such as WebLogic, ADF, WebCenter and Coherence. I have been part of many automation projects in the past and have a passion for automation capabilities to help our customers deliver software faster and with higher quality. In my current role as a Principal Architect at Flexagon, I am driving the FlexDeploy product strategy and development to build DevOps/CI/CD features that help our customers.

More posts by Chandresh Patel
    

Leave a Reply

Your email address will not be published. Required fields are marked *