È possibile progettare gli script di azione in modo da renderli generici e riutilizzabili definendo e utilizzando coppie di nomi e valori denominate proprietà software e convalidandole come parametri per gli script di azione. È possibile creare proprietà software che prevedano valori di tipo stringa, array, contenuti, booleani o interi. È possibile fornire il valore autonomamente, chiedere a un altro utente di fornire il valore o recuperare il valore da un altro componente di blueprint creando un binding.

Opzioni delle proprietà

È possibile elaborare il valore di qualsiasi proprietà stringa selezionando la casella di controllo Elaborate, nonché rendere qualsiasi proprietà codificata, sovrascrivibile o obbligatoria selezionando le caselle di controllo appropriate durante la configurazione delle proprietà di Software. Combinando queste opzioni con i propri valori è possibile raggiungere obiettivi di vario tipo. Ad esempio, è possibile chiedere agli architetti di blueprint di fornire un valore per una password e codificare tale valore quando utilizzano il componente software in un blueprint. Creare la proprietà password, ma lasciare la casella di testo del valore vuota. Selezionare Sovrascrivibile, Obbligatorio e Codificato. Se la password prevista appartiene all’utente finale, l’architetto di blueprint può selezionare Mostra nella richiesta per chiedere agli utenti di immettere la password quando compilano il modulo di richiesta.

Opzione Descrizione
Codificato

Contrassegnare le proprietà come codificate per mascherare il valore e visualizzarle sovrapponendo asterischi in vRealize Automation. Se si cambia una proprietà da codificata a non codificata, vRealize Automation reimposta il valore della proprietà. Per sicurezza è necessario impostare un nuovo valore per la proprietà.

Sovrascrivibile

Consentire agli architetti di modificare il valore di questa proprietà quando assemblano un blueprint di applicazione. Il valore eventualmente immesso viene visualizzato come predefinito.

Obbligatorio

Impone agli architetti di specificare un valore per la proprietà o accettare il valore predefinito fornito.

Elaborate

I valori delle proprietà elaborate vengono assegnati dagli script del ciclo di vita di INSTALLAZIONE, CONFIGURAZIONE, AVVIO o AGGIORNAMENTO. Il valore assegnato viene propagato alle successive fasi del ciclo di vita disponibili e ai componenti che effettuano il binding a queste proprietà in un blueprint. Se si seleziona Valore elaborato per una proprietà non di tipo stringa, il tipo della proprietà viene modificato in Stringa.

Se si seleziona l'opzione di proprietà Elaborate, non specificare alcun valore per la proprietà personalizzata. Progettare script personalizzati per i valori elaborati.

Tabella 1. Esempi di script per l'opzione di proprietà Elaborate
Proprietà stringa campione Sintassi script Uso del campione
my_unique_id = "" Bash - $my_unique_id
export my_unique_id="0123456789"
Windows CMD - %my_unique_id%
set my_unique_id=0123456789
Windows PowerShell - $my_unique_id
$my_unique_id = "0123456789"

Proprietà stringa

Le proprietà di stringhe prevedono valori di stringa. È possibile fornire la stringa autonomamente, chiedere a un altro utente di fornire il valore o recuperare il valore da un altro componente di blueprint creando un binding a un’altra proprietà di stringa. I valori di stringa possono contenere qualsiasi carattere ASCII. Per creare un binding di proprietà, usare la scheda Proprietà nella tela di progettazione del blueprint per selezionare la proprietà idonea per il binding. Il valore della proprietà viene quindi passato agli script dell'azione come dati della stringa non elaborati. Quando si esegue il binding a una proprietà stringa di blueprint, accertarsi che il componente di blueprint sottoposto a binding non possa essere aggiunto a un cluster. Se il componente è in clustering, il valore di stringa diventa un array e non si recupera il valore previsto.

Proprietà stringa campione Sintassi dello script Uso del campione
admin_email = "admin@email987.com" Bash - $admin_email
echo $admin_email
Windows CMD - %admin_email%
echo %admin_email%
Windows PowerShell - $admin_email
write-output  $admin_email

Proprietà array

Le proprietà di array prevedono un array di valori stringa, interi, decimali o booleani definiti [“value1”, “value2”, “value3”…]. È possibile fornire i valori autonomamente, chiedere a un altro utente di fornire i valori o recuperare i valori da un altro componente di blueprint creando un binding.

Quando si crea una proprietà software di tipo Array, in cui il tipo di dati è intero o decimale, è necessario utilizzare un punto e virgola come separatore dell'elemento di array, indipendentemente dalle impostazioni locali. Non utilizzare una virgola (,) o un punto (.). Per alcune impostazioni locali, è possibile utilizzare una virgola (,) come separatore decimale. Ad esempio:

  • Un array valido per il francese è simile a: [1,11;2,22;3,33]
  • Un array valido per l'inglese è simile a: [1.11,2.22,3.33]

Quando si passano numeri grandi in un array, non utilizzare il formato di raggruppamento. Ad esempio, non utilizzare 4444 444.000 (francese), 4.444.444,000 (italiano) o 4,444,444.000 (inglese), poiché i file di dati che contengono formati specifici delle impostazioni locali potrebbero essere interpretati erroneamente quando vengono trasferiti in una macchina con impostazioni locali diverse. Il formato di raggruppamento non è consentito, perché un numero come 4,444,444.000 verrebbe considerato come tre numeri separati. Al contrario, è sufficiente immettere 4444444.000.

Quando i valori di una proprietà array vengono definiti, è necessario includere l'array tra parentesi quadre. Per un array delle stringhe, il valore degli elementi dell'array può contenere qualsiasi carattere ASCIl. Per codificare correttamente una barra rovesciata in un valore della proprietà array, aggiungere un'altra barra rovesciata, ad esempio, ["c:\\test1\\test2"]. Per una proprietà associata, utilizzare la scheda Proprietà nella tela di progettazione per selezionare la proprietà idonea per il binding. Se si esegue il binding a un array, è necessario progettare i componenti software affinché non prevedano l’array di un valore in un ordine specifico.

Ad esempio, se si prende in considerazione una macchina virtuale del bilanciamento del carico che bilancia il carico di un cluster delle macchine virtuali del server delle applicazioni. In tale caso, la proprietà array viene definita per il servizio del bilanciamento del carico e impostata sull'array degli indirizzi IP delle macchine virtuali del server delle applicazioni.

Questi script di configurazione del servizio di bilanciamento del carico usano la proprietà array per configurare lo schema di bilanciamento appropriato sui sistemi operativi Red Hat, Windows e Ubuntu.

Proprietà array campione Sintassi dello script Uso del campione
operating_systems = ["Red Hat","Windows","Ubuntu"]

Bash - ${operating_systems[@]}

per l'intero array delle stringhe

${operating_systems[N]}

per l'elemento di array individuale

for (( i = 0 ; i < ${#operating_systems[@]}; i++ )); do
   echo ${operating_systems[$i]}
done

Windows CMD - %operating_systems_N%

dove N rappresenta la posizione dell'elemento nell'array

for /F "delims== tokens=2" %%A in ('set operating_systems_') do (
    echo %%A
)

Windows PowerShell - $operating_systems

per l'intero array delle stringhe

$operating_systems[N]

per l'elemento di array individuale

foreach ($os in $operating_systems){
   write-output  $os
}

Proprietà contenuto

Il valore della proprietà contenuto è l'URL di un file per il download dei contenuti. L'agente di Software scarica i contenuti dall'URL nella macchina virtuale e passa la posizione del file locale nella macchina virtuale allo script.

Le proprietà contenuto devono essere definite come URL valido con il protocollo HTTP o HTTPS. Ad esempio, il componente JBOSS Application Server Software nell'applicazione campione Dukes Bank specifica cheetah_tgz_url come proprietà del contenuto. Gli elementi sono ospitati nell'appliance Software e l'URL punta a tale posizione nell'appliance. L'agente di Software scarica gli elementi dalla posizione specificata nella macchina virtuale distribuita.

Per informazioni sulle impostazioni di software.http.proxy che è possibile utilizzare con le proprietà di contenuti, vedere Proprietà personalizzate S.

Proprietà stringa campione Sintassi dello script Uso del campione
cheetah_tgz_url = "http://app_content_server_ip:port/artifacts/software/jboss/cheetah-2.4.4.tar.gz" Bash - $cheetah_tgz_url
tar -zxvf $cheetah_tgz_url
Windows CMD - %cheetah_tgz_url%
start /wait c:\unzip.exe
%cheetah_tgz_url%
Windows PowerShell - $cheetah_tgz_url
 & c:\unzip.exe
$cheetah_tgz_url

Proprietà booleana

Utilizzare il tipo di proprietà booleano per fornire le opzioni True e False nel menu a discesa Valore.

Proprietà numero intero

Utilizzare il tipo di proprietà booleano per zero e numeri interi positivi o negativi.

Proprietà decimale

Utilizzare il tipo di proprietà decimale per valori che rappresentano frazioni decimali senza ripetizioni.