この項のスクリプトを使用して、環境のクローニングを自動化します。
環境をクローニングする次のようなスクリプトが含まれるバッチ(.bat)またはシェル(.sh)ファイルを作成します。後述するサンプル・スクリプトでは次のアクティビティを処理します:
Artifact Snapshot (ソース環境の最新の日次メンテナンス時に作成されたスナップショット)またはソース環境で使用可能な別のスナップショットを使用して、ターゲット環境をソースのクローンに変換します。クローニング・プロセスの詳細は、移行の管理のCloud EPM環境のクローニング を参照してください。
Windowsタスク・スケジューラを使用してスクリプトをスケジュールする方法の詳細は、スクリプトの実行の自動化を参照してください。
Windows
cloneEnvironment.batという名前のバッチ(.BAT)ファイルを作成し、C:\automate_scriptsなどのわかりやすい場所に保存します。
@echo off set paramRequiredMessage=Syntax: cloneEnvironment.bat "SOURCE USERNAME" "SOURCE PASSWORD FILE" "SOURCE URL" "TARGET USERNAME" "TARGET PASSWORD FILE" "TARGET URL" set usersandpredefinedroles="false" set snapshotname="Artifact Snapshot" set dailymaintenancestarttime="true" set dirpath=%~dp0 cd %dirpath:~0,-1% if "%~1" == "" ( echo Source User Name is missing. echo %paramRequiredMessage% exit /b 1 ) if "%~2" == "" ( echo Source Password File is missing. echo %paramRequiredMessage% exit /b 1 ) if "%~3" == "" ( echo Source URL is missing. echo %paramRequiredMessage% exit /b 1 ) if "%~4" == "" ( echo Target User Name is missing. echo %paramRequiredMessage% exit /b 1 ) if "%~5" == "" ( echo Target Password File is missing. echo %paramRequiredMessage% exit /b 1 ) if "%~6" == "" ( echo Target URL is missing. echo %paramRequiredMessage% exit /b 1 ) PowerShell.exe -File cloneEnvironment.ps1 %~1 %~2 %~3 %~4 %~5 %~6 %usersandpredefinedroles% %snapshotname% %dailymaintenancestarttime%
cloneEnvironment.batを変更して、次のパラメータの値を設定します:
表3-5 cloneEnvironment.batで設定されるパラメータ
| パラメータ | 説明 |
|---|---|
usersandpredefinedroles |
ユーザーおよびその事前定義済役割とアプリケーション役割の割当てをクローニングするには、このパラメータの値をtrueに設定します。
ユーザーおよび役割割当てをクローニングするには、スクリプトを実行するユーザーにターゲット環境のサービス管理者役割およびアイデンティティ・ドメイン管理者が必要です。 |
snapshotname |
クローニングで使用するソース環境でのスナップショットの名前。 |
dailymaintenancestarttime |
クローニングされる環境の日次メンテナンス開始時間をソース環境の日次メンテナンス開始時間に変更するには、このパラメータの値をtrueに設定します。この値をfalseに設定すると、クローニングされる環境の現在の日次メンテナンス開始時間が保持されます。 |
cloneEnvironment.ps1という名前のPowerShellスクリプトを作成し、cloneEnvironment.batを保存したディレクトリ(C:\automate_scriptsなど)に保存します。
# Clone Environment script
$source_username=$args[0]
$source_password=$args[1]
$source_url=$args[2]
$target_username=$args[3]
$target_password=$args[4]
$target_url=$args[5]
$usersandpredefinedroles=$args[6]
$snapshotname=$args[7]
$dailymaintenancestarttime=$args[8]
epmautomate.bat login "${source_username}" "${source_password}" "${source_url}"
epmautomate.bat cloneEnvironment "${target_username}" "${target_password}" "${target_url}" UsersAndPreDefinedRoles="${usersandpredefinedroles}" SnapshotName="${snapshotname}" DailyMaintenanceStartTime="${dailymaintenancestarttime}"
epmautomate.bat logoutcloneEnvironment.batを実行します:
cloneEnvironment.bat "SOURCE USERNAME" "SOURCE PASSWORD FILE" "SOURCE URL" "TARGET USERNAME" "TARGET PASSWORD FILE" "TARGET URL"次に例を示します。
cloneEnvironment.bat jdoe@example.com C:\mySecuredir\example_pwd.epw https://source_example.oraclecloud.com jdoe@example.com C:\mySecuredir\example_pwd2.epw https://target_example.oraclecloud.com.
Linux
cloneEnvironment.shという名前のシェル・スクリプトを作成し、わかりやすい場所に保存します。
#!/bin/bash
# Update the following parameters
# -------------------------------
epmautomatescript=/home/user1/epmautomate/bin/epmautomate.sh
javahome=/home/user1/jdk1.8.0_191/
usersandpredefinedroles="false"
snapshotname="Artifact Snapshot"
dailymaintenancestarttime="true"
# -------------------------------
source_username="$1"
source_password="$2"
source_url="$3"
target_username="$4"
target_password="$5"
target_url="$6"
export JAVA_HOME=${javahome}
if [ "$#" -ne 6 ]; then
echo "Usage: ./cloneEnvironment.sh <SOURCE USERNAME> <SOURCE PASSWORD FILE> <SOURCE URL> <TARGET USERNAME> <TARGET PASSWORD FILE> <TARGET URL>"
exit 1
fi
${epmautomatescript} login "${source_username}" "${source_password}" "${source_url}"
${epmautomatescript} cloneEnvironment "${target_username}" "${target_password}" "${target_url}" UsersAndPreDefinedRoles="${usersandpredefinedroles}" SnapshotName="${snapshotname}" DailyMaintenanceStartTime="${dailymaintenancestarttime}"
${epmautomatescript} logoutcloneEnvironment.shを変更して、次のパラメータの値を設定します:
表3-6 cloneEnvironment.shで設定されるパラメータ
| パラメータ | 説明 |
|---|---|
epmautomatescript |
EPM自動化の実行可能ファイル(epmautomate.sh)の絶対パス。 |
javahome |
JAVA_HOMEの場所。 |
usersandpredefinedroles |
ユーザーおよびその事前定義済役割とアプリケーション役割の割当てをクローニングするには、このパラメータの値をtrueに設定します。
ユーザーおよび役割割当てをクローニングするには、スクリプトを実行するユーザーにターゲット環境のサービス管理者役割およびアイデンティティ・ドメイン管理者が必要です。 |
snapshotname |
クローニングで使用するソース環境でのスナップショットの名前。 |
dailymaintenancestarttime |
クローニングされる環境の日次メンテナンス開始時間をソース環境の日次メンテナンス開始時間に変更するには、このパラメータの値をtrueに設定します。この値をfalseに設定すると、クローニングされる環境の現在の日次メンテナンス開始時間が保持されます。 |
cloneEnvironment.shを実行します。
./cloneEnvironment.sh "SOURCE USERNAME" "SOURCE PASSWORD FILE" "SOURCE URL" "TARGET USERNAME" "TARGET PASSWORD FILE" "TARGET URL"次に例を示します。
./cloneEnvironment.sh jdoe@example.com ./home/secure/example_pwd.epw https://source_example.oraclecloud.com jdoe@example.com ./home/secure/example_pwd.epw2 https://target_example.oraclecloud.com.