例如,您可能需要同時重新整理 https://cloudpln.pbcs.us1.oraclecloud.com
和 https://testcloudpln.pbcs.us1.oraclecloud.com
中的 Planning 應用程式立方體。在此案例中,您有兩個選項:
從相同目錄執行 EPM Automate 的兩個例項,以重新整理不同環境中的應用程式立方體
從單獨的目錄執行 EPM Automate 以連接到環境,然後重新整理應用程式立方體
在兩種情況下,EPM Automate 的每個例項皆獨立運作;登出某個例項不會讓您登出另一個例項。即使您登出其他例項,使用 EPM Automate 啟動的活動也會繼續在環境中執行完畢。
本節包含 Windows 和 Unix/Linux 範例指令碼 (caller
與 multisession
),其可用於建立兩個 EPM Automate 階段作業以執行任務。若要執行多個階段作業,您必須在 caller
指令碼中新增下列連線資訊,此指令碼會呼叫 multisession
指令碼以執行 login
、uploadfile
、listfiles
及 logout
命令。您可以修改 multisession
指令碼以執行這些以外的任務。確保這兩個指令碼都儲存在相同目錄中。
EPM Automate 使用環境變數 EPM_SID
來區分多個階段作業。此變數必須在 caller 指令碼中針對每個階段作業設為唯一值。在範例指令碼中,將其設為唯一值的方式如下:
在 caller.BAT
中,EPM_SID
是設為 !RANDOM!
,這會為其指派一個唯一的系統產生號碼。此號碼也用來為每個階段作業產生日誌檔。如果您想要追蹤每個階段作業的日誌檔,您可以指定一個唯一的號碼來取代 !RANDOM!
。
在 caller.sh
中,EPM_SID
是設為程序 ID,這是唯一的。如果您想要追蹤每個階段作業的日誌檔,您可以將 multisession
指令碼的 export EPM_SID=$$
陳述式修改成使用傳入值來指定唯一 EPM_SID
,然後在 caller
指令碼中針對每個階段作業為此參數傳入唯一值,例如藉由在 caller.sh
中依下列方式指定 EPM SID
的值:
$SCRIPT_DIR/multisession.sh EPM_SID "USERNAME" "PASSWORD" "URL" "/home/user/Snapshot1.zip" & $SCRIPT_DIR/multisession.sh EPM_SID "USERNAME" "PASSWORD" "URL" "/home/user/Snapshot2.zip" &
USERNAME
:服務管理員的登入 ID
PASSWORD
:服務管理員的密碼
URL
:環境的連線 URL
範例 Windows 指令碼
caller.BAT
@echo off setlocal EnableExtensions EnableDelayedExpansion REM syntax: start /B multisession.bat EPM_SID "USERNAME" "PASSWORD" "URL" "SNAPSHOTPATH" start /B multisession.bat !RANDOM! "USERNAME" "PASSWORD" "URL" "C:\Snapshot1.zip" start /B multisession.bat !RANDOM! "USERNAME" "PASSWORD" "URL" "C:\Snapshot2.zip" endlocal
multisession.BAT
@echo off set EPM_SID=%1 set USERNAME=%2 set PASSWORD=%3 set URL=%4 set SNAPSHOTNAME=%5 echo User: %USERNAME% > %EPM_SID%.log echo Cloud Instance: %URL% >> %EPM_SID%.log call epmautomate login %USERNAME% %PASSWORD% %URL% >> %EPM_SID%.log call epmautomate uploadfile %SNAPSHOTNAME% >> %EPM_SID%.log call epmautomate listfiles >> %EPM_SID%.log call epmautomate logout
範例 Bourne Shell 指令碼
caller.sh#!/bin/sh set +x SCRIPT_DIR=`dirname "${0}"` # syntax: /home/user/multisession.sh "USERNAME" "PASSWORD" "URL" "SNAPSHOTPATH" & $SCRIPT_DIR/multisession.sh "USERNAME" "PASSWORD" "URL" "/home/user/Snapshot1.zip" & $SCRIPT_DIR/multisession.sh "USERNAME" "PASSWORD" "URL" "/home/user/Snapshot2.zip" &multisession.sh
#!/bin/sh set +x EPM_AUTOMATE_HOME=/home/user/epmautomate export JAVA_HOME=/home/user/jre export EPM_SID=$$ USERNAME=$1 PASSWORD=$2 URL=$3 SNAPSHOTNAME=$4 echo User: $USERNAME > $EPM_SID.log echo Cloud Instance: $URL >> $EPM_SID.log $EPM_AUTOMATE_HOME/bin/epmautomate.sh login $USERNAME $PASSWORD $URL >> $EPM_SID.log $EPM_AUTOMATE_HOME/bin/epmautomate.sh uploadfile $SNAPSHOTNAME >> $EPM_SID.log $EPM_AUTOMATE_HOME/bin/epmautomate.sh listfiles >> $EPM_SID.log $EPM_AUTOMATE_HOME/bin/epmautomate.sh logout