Configurazioni cloud basate sul contesto
Quando crei la configurazione cloud nell’ambiente locale e dopo aver superato i test, vorrai utilizzare la stessa configurazione cloud negli ambienti a monte, ma senza dover modificare l’endpoint, la chiave/password segreta e/o il nome utente. Per ottenere questo caso d’uso, AEM Forms su Cloud Service ha introdotto la possibilità di definire configurazioni cloud basate sul contesto.
Ad esempio, la configurazione cloud dell’account di archiviazione Azure può essere riutilizzata negli ambienti di sviluppo, staging e produzione utilizzando stringhe di connessione e chiavi diverse per.
Per creare la configurazione cloud in base al contesto, sono necessari i seguenti passaggi
Creare variabili di ambiente
È possibile configurare e gestire le variabili di ambiente standard tramite Cloud Manager. Vengono fornite all’ambiente di runtime e possono essere utilizzate nelle configurazioni OSGi. Le variabili di ambiente possono essere valori specifici dell'ambiente o segreti dell'ambiente, in base alle modifiche apportate.
La schermata seguente mostra le variabili di ambiente azure_key e azure_connection_string definite
Queste variabili di ambiente possono quindi essere specificate nei file di configurazione da utilizzare nell’ambiente appropriato
Ad esempio, se desideri che tutte le istanze di authoring utilizzino queste variabili di ambiente, definisci il file di configurazione nella cartella config.author come specificato di seguito
Crea file di configurazione
Aprire il progetto in IntelliJ. Passa a config.author e crea un file denominato
org.apache.sling.caconfig.impl.override.OsgiConfigurationOverrideProvider-integrationTest.cfg.json
Copiare il testo seguente nel file creato nel passaggio precedente. Il codice di questo file esegue l'override del valore delle proprietà accountName e accountKey con le variabili di ambiente azure_connection_string e azure_key.
{
"enabled":true,
"description":"dermisITOverrideConfig",
"overrides":[
"cloudconfigs/azurestorage/FormsCSAndAzureBlob/accountName=\"$[env:azure_connection_string]\"",
"cloudconfigs/azurestorage/FormsCSAndAzureBlob/accountKey=\"$[secret:azure_key]\""
]
}
Per le configurazioni cloud basate su REST con autenticazione di base, in genere si desidera creare variabili di ambiente per le proprietà serviceEndPoint, userName e password.