Use o script nesta seção para automatizar a clonagem de ambientes.
Crie um arquivo de lote (.bat) ou shell (.sh) contendo um script semelhante ao mostrado a seguir para clonar um ambiente. Os scripts de amostra a seguir tratam estas atividades:
Instantâneo de Artefato (o instantâneo criado durante a última manutenção diária do ambiente de origem) ou outro instantâneo disponível no ambiente de origem para converter o ambiente de destino como um clone da origem.Para obter informações detalhadas sobre o processo de clonagem, consulte "Clonagem de Ambientes do Cloud EPM " in Administração da Migração.
Consulte Automação da Execução de Scripts para obter informações sobre como programar o script usando o Agendador de Tarefas do Windows.
Windows
cloneEnvironment.bat contendo o script a seguir e salve-o em um local conveniente, como, por exemplo, 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 para definir os valores desses parâmetros:
Tabela 3-5 Parâmetros para definir no cloneEnvironment.bat
| Parâmetro | Descrição |
|---|---|
usersandpredefinedroles |
Defina o valor desse parâmetro como true para clonar usuários e as respectivas atribuições de funções predefinidas e de usuários.
Para clonar atribuições de funções e usuários, o usuário que está executando o script precisa ter a função de Administrador do Serviço e ser Administrador do Domínio de Identidade no ambiente de destino. |
snapshotname |
O nome do instantâneo no ambiente de origem que deve ser usado para clonagem. |
dailymaintenancestarttime |
Defina o valor desse parâmetro como true para alterar a hora de início da manutenção diária do ambiente clonado para à do ambiente de origem. Defina esse valor como false para manter a hora de início da manutenção diária do ambiente clonado. |
cloneEnvironment.ps1 que contenha o script a seguir e salve-o no diretório onde salvou cloneEnvironment.bat; por exemplo, 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 usando esse comando:
cloneEnvironment.bat "SOURCE USERNAME" "SOURCE PASSWORD FILE" "SOURCE URL" "TARGET USERNAME" "TARGET PASSWORD FILE" "TARGET URL"Por exemplo:
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 que contenha o script a seguir e salvá-lo em um local conveniente.
#!/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 para definir os valores desses parâmetros:
Tabela 3-6 Parâmetros para definir no cloneEnvironment.sh
| Parâmetro | Descrição |
|---|---|
epmautomatescript |
O caminho absoluto do arquivo executável do EPM Automate (epmautomate.sh). |
javahome |
Local do JAVA_HOME. |
usersandpredefinedroles |
Defina o valor desse parâmetro como true para clonar usuários e as respectivas atribuições de funções predefinidas e de usuários.
Para clonar atribuições de funções e usuários, o usuário que está executando o script precisa ter a função de Administrador do Serviço e ser Administrador do Domínio de Identidade no ambiente de destino. |
snapshotname |
O nome do instantâneo no ambiente de origem que deve ser usado para clonagem. |
dailymaintenancestarttime |
Defina o valor desse parâmetro como true para alterar a hora de início da manutenção diária do ambiente clonado para à do ambiente de origem. Defina esse valor como false para manter a hora de início da manutenção diária do ambiente clonado. |
cloneEnvironment.sh.
./cloneEnvironment.sh "SOURCE USERNAME" "SOURCE PASSWORD FILE" "SOURCE URL" "TARGET USERNAME" "TARGET PASSWORD FILE" "TARGET URL"Por exemplo:
./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.