환경 복제 자동화

이 섹션의 스크립트를 사용하여 환경 복제를 자동화할 수 있습니다.

아래와 유사한 스크립트가 포함된 뱃치(.bat) 또는 쉘(.sh) 파일을 생성하여 환경을 복제합니다. 아래의 Windows용 샘플 스크립트에서는 타겟 환경(복제)의 다음 활동을 처리합니다.

  • 타겟 환경에 사인인합니다.

  • 소스의 데이터를 승인하기 위해 환경 준비

  • 마지막 유지 관리 기간 동안 생성된 Artifact Snapshot 삭제

  • 소스 환경에서 Artifact Snapshot을 복사합니다.

  • Artifact Snapshot에서 대상으로 아티팩트 임포트 대상 ID 도메인에 생성된 새 사용자에는 스크립트에서 IDM_NEW_USER_PWD 대신 지정한 비밀번호가 지정됩니다.

  • 사인아웃

주:

  • 이 섹션의 스크립트는 Narrative Reporting 환경을 복제하는 데 사용할 수 없습니다.

  • sourcePassword 값은 암호화된 비밀번호 파일의 위치를 확인해야 합니다(Windows 예: C:\mySecuredir\example_pwd.epw). encrypt 명령을 참조하십시오.

    비밀번호에 특수 문자가 포함된 경우 특수 문자 처리를 참조하십시오.

  • EPM Automate는 아티팩트 임포트 프로세스 중 타겟 ID 도메인에 새 사용자를 생성하고 적절한 역할을 지정합니다. 이렇게 하려면 타겟 환경에서 이 스크립트를 실행하는 사용자에게 서비스 관리자ID 도메인 관리자 역할이 둘 다 있어야 합니다.

  • Artifact Snapshot 이외의 스냅샷을 복사하려면 스크립트의 스냅샷 이름을 변경합니다.

  • 이 문서의 PDF 버전을 사용 중인 경우: 이 스크립트를 사용할 수 없게 만드는 줄 바꿈 및 바닥글 정보를 방지하려면 이 항목의 HTML 버전에서 스크립트를 복사합니다.

  • 스크립트 사용 예: clone sourceUser sourcePassword sourceURL targetUser targetPassword targetURL. 예를 들어 다음과 같습니다.

    clone jdoe@example.com C:\mySecuredir\example_pwd.epw https://example.oraclecloud.com jdoe@example.com C:\mySecuredir\example_pwd2.epw https://example-another.oraclecloud.com.

Windows 태스크 스케줄러를 사용하여 스크립트 스케줄을 예약하는 방법에 대한 자세한 내용은 스크립트 실행 자동화를 참조하십시오.

@echo off
SET /A ARGS_COUNT=0    
        FOR %%A in (%*) DO SET /A ARGS_COUNT+=1 
                if %ARGS_COUNT% == 0 (
                cls
                echo.
                        echo Welcome to Clone
                        echo Type Clone help and press ENTER for help.
                echo.
                exit /b 0
                )
        IF /I %1=="help" goto :HELP
                REM echo %ARGS_COUNT%
                if %ARGS_COUNT% NEQ 8 (
                goto :HELP
                )
set sourceUser=%1
set sourcePassword=%2
set sourceURL=%3
set targetUser=%4
set targetPassword=%5
set targetURL=%6
set ERROR_LEVEL=0

CD /D %~dp0
echo Login to Target Environment
for /f "delims=" %%i in ('epmautomate login  %targetUser% %targetPassword% %targetURL%') do set result=%%i
if "Login successful" neq "%result%" (
        echo Login into target environment failed with error %result%
        goto :END
        )else (

echo Recreating Target Environment
call epmautomate recreate -f
        IF %ERROR_LEVEL% NEQ 0 (
        echo Recreate failed on target environment with error %ERROR_LEVEL%.
        goto :END
        )

echo Deleting Old Artifact Snapshot from the Target Environment
call epmautomate deletefile "Artifact Snapshot" > NUL
        IF %ERROR_LEVEL% NEQ 0 (
                IF %ERROR_LEVEL% NEQ 8 (
                echo deletefile failed on target environment with error %ERROR_LEVEL%
                goto :END
                )
        )

echo Copying Artifact Snapshot from the Source Environment to Target 
call epmautomate copysnapshotfrominstance "Artifact Snapshot" %sourceUser% %sourcePassword% %sourceURL%
IF %ERROR_LEVEL% NEQ 0 (
echo Login into target environment failed with error %ERROR_LEVEL%.
goto :END
)


echo Importing Snapshot into the Target Environment
call epmautomate importsnapshot "Artifact Snapshot" userPassword=IDM_NEW_USER_PWD
        IF %ERROR_LEVEL% NEQ 0 (
        echo Restore failed on target environment with error %ERROR_LEVEL%.
        goto :END
        )

echo Logging out from the Target Environment
call epmautomate logout
        IF %ERROR_LEVEL% NEQ 0 (
        echo Logout failed with error %ERROR_LEVEL%.
        goto :END
        )

echo Clone on target completed
goto :END
)
:printOnConsole
echo.
echo %1
echo.

:HELP
echo.
echo Usage : clone sourceUser sourcePasswordFile sourceURL targetUser targetPassword targetURL
echo All the values are mandatory for clone to execute
exit /B 0

:END
set returnValue=%ERROR_LEVEL%
exit /B %returnValue%