この項のスクリプトを使用して、環境のクローニングを自動化します。
環境をクローニングする次のようなスクリプトが含まれるバッチ(.bat
)またはシェル(.sh
)ファイルを作成します。後述するサンプル・スクリプトでは次のアクティビティを処理します:
Artifact Snapshot
(ソース環境の最新の日次メンテナンス時に作成されたスナップショット)またはソース環境で使用可能な別のスナップショットを使用して、ターゲット環境をソースのクローンに変換します。クローニング・プロセスの詳細は、Oracle Enterprise Performance Management Cloud移行の管理のEPM Cloud環境のクローニング を参照してください。
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 logout
cloneEnvironment.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} logout
cloneEnvironment.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.