Ce scénario explique comment automatiser le processus de sauvegarde de l'instantané créé lors de la maintenance de service quotidienne sur un ordinateur local.
Artifact Snapshot) créé lors de la fenêtre de maintenance.Note:
url, user, password et NumberOfBackups) à votre convenance.Reportez-vous à la section Automatisation de l'exécution de scripts pour plus d'informations sur la planification du script à l'aide du planificateur de tâches Windows.
Exemple de script Windows
Créez un fichier batch (.bat) ou d'interpréteur de commandes (.sh) qui contient un script semblable aux scripts suivants pour automatiser les téléchargements d'instantanés.
@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%Exemple de script Linux/UNIX
Créez un fichier d'interpréteur de commandes (.sh) contenant un script semblable à ce qui suit pour automatiser les téléchargements d'instantanés. Si votre mot de passe contient des caractères spéciaux, reportez-vous à la section Gestion des caractères spéciaux.
#!/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 --