Questo scenario illustra come automatizzare il processo di creazione del backup dello snapshot creato durante la manutenzione giornaliera del servizio in un computer locale.
Artifact Snapshot) creato durante la finestra di manutenzione;Note:
url, user, password e NumberOfBackups).Vedere Automazione dell'esecuzione degli script per informazioni su come pianificare lo script mediante Utilità di pianificazione di Windows.
Script di esempio per Windows
Creare un file batch (.bat) o shell (.sh) contenente uno script simile a quello riportato di seguito per rendere automatico lo scaricamento degli snapshot.
@echo off
rem Sample script to download and maintain 10 maintenance backups
rem Update the following parameters
SET url=https://example.oraclecloud.com
SET user=ServiceAdmin
SET password=Example.epw
SET SnapshotName="Artifact Snapshot"
SET NumberOfBackups=10
rem EPM Automate commands
call epmautomate login %user% %password% %url%
IF %ERRORLEVEL% NEQ 0 goto :ERROR
call epmautomate downloadfile %SnapshotName%
IF %ERRORLEVEL% NEQ 0 goto :ERROR
call epmautomate logout
IF %ERRORLEVEL% NEQ 0 goto :ERROR
rem Rename downloaded Artifact Snapshot, keep the last 10 backups
Set Timestamp=%date:~4,2%_%date:~7,2%_%date:~10,2%%
Set Second=%time:~0,2%%time:~3,2%
ren %SnapshotName%.zip %SnapshotName%_%Timestamp%_%Second%.zip
SET Count=0
FOR %%A IN (%SnapshotName%*.*) DO SET /A Count += 1
IF %Count% gtr %NumberOfBackups% FOR %%A IN (%SnapshotName%*.*) DO del "%%A" && GOTO EOF
:EOF
echo Scheduled Task Completed successfully
exit /b %errorlevel%
:ERROR
echo Failed with error #%errorlevel%.
exit /b %errorlevel%Script di esempio di Linux/UNIX
Creare un file shell (.sh) contenente uno script simile a quello riportato di seguito per rendere automatici gli scaricamenti dello snapshot. Se la password contiene caratteri speciali, fare riferimento alla sezione Gestione dei caratteri speciali.
#!/bin/sh
# Sample script to download and maintain 10 maintenance backups
# Update the following seven parameters
url=https://example.oraclecloud.com
user=serviceAdmin
password=/home/user1/epmautomate/bin/example.epw
snapshotname="Artifact Snapshot"
numberofbackups=10
epmautomatescript=/home/user1/epmautomate/bin/epmautomate.sh
javahome=/home/user1/jdk1.8.0_191/
export JAVA_HOME=${javahome}
printResult()
{
op="$1"
opoutput="$2"
returncode="$3"
if [ "${returncode}" -ne 0 ]
then
echo "Command failed. Error code: ${returncode}. ${opoutput}"
else
echo "${opoutput}"
fi
}
processCommand()
{
op="$1"
date=`date`
echo "Running ${epmautomatescript} ${op}"
operationoutput=`eval "$epmautomatescript $op"`
printResult "$op" "$operationoutput" "$?"
}
op="login ${user} ${password} ${url}"
processCommand "${op}"
op="downloadfile \"${snapshotname}\""
processCommand "${op}"
op="logout"
processCommand "${op}"
# Renames the downloaded artifacts, keeps the last 10 backups
timestamp=`date +%m_%d_%Y_%I%M`
mv "${snapshotname}.zip" "${snapshotname}_${timestamp}.zip"
((numberofbackups+=1))
ls -tp ${snapshotname}*.zip | grep -v '/$' | tail -n +${numberofbackups} | xargs -d '\n' -r rm --