Créez input.properties et skip_update.ps1 en copiant les scripts de cette section.
input.properties en copiant le script suivant :
username=exampleAdmin password=examplePassword.epw url=exampleURL updatemonths=02,05,08,11
input.properties en indiquant des valeurs de paramètre.
Table 3-12 Paramètres du fichier input.properties
| Paramètre | Description |
|---|---|
username |
Nom d'utilisateur d'un administrateur de service. |
password |
Mot de passe de l'administrateur de service, ou nom et emplacement du fichier de mots de passe cryptés. |
url |
URL de l'environnement dans lequel vous souhaitez définir la cadence de mise à jour non mensuelle. |
updatemonths |
Liste des mois, séparés par des virgules, au cours desquels des mises à jour Oracle Fusion Cloud Enterprise Performance Management doivent être appliquées à l'environnement identifié à l'aide du paramètre url. Par exemple, updatemonths=02,05,08,11.
Les mois doivent être indiqués avec deux chiffres : de 01 pour janvier à 12 pour décembre. Veillez à inclure un zéro pour les numéros des mois de janvier à septembre. Le script tente d'exécuter la commande skipUpdate pour les mois non inclus dans la valeur du paramètre |
skip_updates.ps1 en copiant le script suivant :
# Skip Update PowerShell script
$inputproperties = ConvertFrom-StringData(Get-Content ./input.properties -raw)
$username="$($inputproperties.username)"
$password="$($inputproperties.password)"
$url="$($inputproperties.url)"
$updatemonths="$($inputproperties.updatemonths)"
$monthsarr = ("01","02","03","04","05","06","07","08","09","10","11","12")
$global:monthsarrfromcurrent = @()
$global:yearsarrfromcurrent = @()
$updatemonthsarr = $updatemonths.Split(",")
$currentyear=Get-Date -Format yy
$currentmonth=Get-Date -Format MM
$nextyear=[int]$currentyear+1
function populateFromCurrentArrays() {
$startposition = 0
for ($i = 0; $i -le ($monthsarr.length - 1); $i++) {
if (${currentmonth} -eq $monthsarr[$i]) {
$startposition=$i
break
}
}
for ($i = 0; $i -le ($monthsarr.length - 1); $i++) {
if (${i} -ge ${startposition}) {
$global:monthsarrfromcurrent += $monthsarr[$i]
$global:yearsarrfromcurrent += $currentyear
}
}
for ($i = 0; $i -le ($monthsarr.length - 1); $i++) {
if (${i} -lt ${startposition}) {
$global:monthsarrfromcurrent += $monthsarr[$i]
$global:yearsarrfromcurrent += $nextyear
}
}
}
function skipUpdateAdd($yearnumber, $monthnumber) {
echo "Running: epmautomate.bat skipUpdate add version=${yearnumber}.${monthnumber} comment=`"adding skipUpdate`""
epmautomate skipUpdate add version=${yearnumber}.${monthnumber} comment="adding skipUpdate"
}
function processSkipUpdates() {
$addcount = 0
echo "Running: epmautomate.bat login ${username} ${password} ${url}"
epmautomate login ${username} ${password} ${url}
echo "Running: epmautomate.bat skipUpdate remove"
epmautomate skipUpdate remove
for ($i = 0; $i -le ($global:monthsarrfromcurrent.length - 1); $i++) {
$match = 1
if (${addcount} -eq 2) {
echo "Two skip update add calls have been made. No more will be attempted."
break
}
for ($j = 0; $j -le ($updatemonthsarr.length - 1); $j++) {
if ($global:monthsarrfromcurrent[$i] -eq $updatemonthsarr[$j]) {
$match = 0
break
}
}
if (${match} -eq 1) {
skipUpdateAdd $global:yearsarrfromcurrent[$i] $global:monthsarrfromcurrent[$i]
$addcount += 1
}
}
echo "Running: epmautomate.bat skipUpdate list"
epmautomate skipUpdate list
echo "Running: epmautomate.bat logout"
epmautomate logout
}
function compareUpdateMonths($thismonth, $nextmonth) {
$nextmonthorig=${nextmonth}
if (${nextmonth} -lt ${thismonth}) {
$nextmonth+=12
}
$monthdiff = $nextmonth - $thismonth
if (${monthdiff} -gt 3) {
echo "There are more than 2 months skipped from month ${thismonth} to month ${nextmonthorig}. Please correct updatemonths in input.properties so that there are not more than two months skipped between each update month. Exiting."
exit 1
}
}
function validateUpdateMonths() {
for ($i = 0; $i -le ($updatemonthsarr.length - 1); $i++) {
$nextint = $i + 1
$thisupdatemonth = $updatemonthsarr[$i]
$thisupdatemonthint=[int]$thisupdatemonth
$nextupdatemonth=$updatemonthsarr[$nextint]
$nextupdatemonthint=[int]$nextupdatemonth
if (${nextupdatemonth} -eq "") {
$nextupdatemonth=$updatemonthsarr[0]
$nextupdatemonthint=[int]$nextupdatemonth
}
compareUpdateMonths $thisupdatemonthint $nextupdatemonthint
}
}
validateUpdateMonths
populateFromCurrentArrays
processSkipUpdates