Questa pagina spiega come impostare, recuperare e aggiornare le variabili utilizzando Runtime Configurator. Le variabili sono coppie chiave-valore che appartengono a una risorsa RuntimeConfig. Ogni coppia chiave-valore contiene dati che definisci. Dopo aver creato una variabile, puoi impostare un watcher o risorsa waiter su di essa.
Per scoprire come creare una risorsa RuntimeConfig, consulta Creazione ed eliminazione delle risorse RuntimeConfig.
Prima di iniziare
- Se vuoi utilizzare gli esempi di riga di comando in questa guida, installa lo strumento a riga di comando `gcloud`.
- Se vuoi utilizzare gli esempi di API in questa guida, configura l'accesso alle API.
- Leggi Concetti fondamentali di Runtime Configurator.
- Leggi Creazione ed eliminazione delle risorse RuntimeConfig.
Creazione di una variabile
Una variabile è una coppia chiave-valore. Una chiave di variabile può essere piatta o gerarchica. Ad esempio, tutte le seguenti sono chiavi valide:
statususers/jane-smith/favorite-colorusers/total
Solo le chiavi dei nodi foglia possono avere valori. Nell'esempio precedente, non puoi assegnare un valore a:
usersusers/jane-smith
Questo perché entrambe queste chiavi contengono altre chiavi al di sotto.
Per creare una variabile, utilizza Deployment Manager, Google Cloud CLI o l'API.
Deployment Manager
Per creare una variabile in Deployment Manager, specifica il tipo di variabile:
runtimeconfig.v1beta1.variable
Nelle proprietà della variabile, fornisci name, location e value della variabile:
- name: [NAME]
type: runtimeconfig.v1beta1.variable
properties:
parent: $(ref.[CONFIG_NAME].name)
variable: [VARIABLE_KEY]
[value | text]: [VARIABLE_VALUE]
dove:
[NAME]è il nome della risorsa arbitraria per questa variabile. Non è il nome della variabile stessa.[CONFIG_NAME]è la risorsa Config per questa richiesta.[VARIABLE_KEY]è la chiave di questa variabile. Ad esempio,statuseusers/jane-smith/favorite_colorsono chiavi valide. Le chiavi delle variabili possono contenere/. Una chiave di variabile può contenere cifre, lettere, trattini, e barre e la lunghezza massima di un nome è di 256 caratteri.[VARIABLE_VALUE]è il valore di questa variabile. A seconda che tu voglia assegnare un valore come testo normale o come stringa con codifica base64, scegli la proprietàvalueotext:value: se fornisci un valore come stringa con codifica base64, utilizza la proprietàvalue.text: se fornisci una stringa di testo non crittografato, utilizza la proprietàtext. La stringa deve essere in formato UTF-8 valido.
gcloud
Per creare una variabile con Google Cloud CLI, utilizza il comando runtime-config configs variables set:
gcloud beta runtime-config configs variables set [VARIABLE_KEY] \
[VARIABLE_VALUE] --config-name [CONFIG_NAME] [--is-text]
dove:
[VARIABLE_KEY]è la chiave della variabile. Ad esempio,statuseusers/jane-smith/favorite_colorsono chiavi valide. Le chiavi delle variabili possono contenere/. Una chiave di variabile può contenere cifre, lettere, trattini e barre e la lunghezza massima di un nome è di 256 caratteri.[VARIABLE_VALUE]è il valore di questa variabile. Puoi assegnare un valore come testo normale o come stringa con codifica base64. Se specifichi un valore di testo non crittografato, fornisci il--is-textflag; in caso contrario, Google Cloud CLI codificherà il valore in codifica base64.gcloud beta runtime-config configs variables set [VARIABLE_KEY] \ [VARIABLE_VALUE] --config-name [CONFIG_NAME] --is-textPuoi anche fornire il valore della variabile da un file. Ad esempio:
cat [FILE_NAME] | gcloud beta runtime-config configs variables set [VARIABLE_KEY] --config-name [CONFIG_NAME]Nota: non è necessario codificare questo valore perché
gcloudeseguirà la codifica per te.[CONFIG_NAME]è il nome della risorsa RuntimeConfig in cui deve essere creata questa variabile. Ad esempio,frontend-config.Ad esempio:
gcloud beta runtime-config configs variables set example-variable \ my-test-value --config-name example-configgcloud CLI restituisce una risposta simile alla seguente:
Created [https://runtimeconfig.googleapis.com/v1beta1/projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]].
Per impostazione predefinita, le variabili esistenti vengono sovrascritte automaticamente. Se vuoi conservare una variabile esistente, includi il flag --fail-if-present, che crea la nuova variabile se non esiste.
Allo stesso modo, puoi anche non riuscire a richiedere la variabile se non è presente fornendo il --fail-if-absent flag.
Per il riferimento completo di questo gcloud comando, consulta la
runtime-config variables set
documentazione di riferimento.
API
Nell'API REST, invia una richiesta POST al seguente URI per creare una nuova variabile:
https://runtimeconfig.googleapis.com/v1beta1/projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables
dove [PROJECT_ID] è l'ID progetto per questa richiesta. Il payload della richiesta
contiene l'URI della risorsa RuntimeConfig e il valore di testo normale della chiave o il valore con codifica base64:
{
"name": "projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]"
"[value | text]": "[VARIABLE_VALUE]" # Choose either 'value' or 'text' but not both
}
dove:
[PROJECT_ID]è l'ID progetto per questa richiesta.[CONFIG_NAME]è il nome di questa configurazione.[VARIABLE_KEY]è la chiave della variabile. Ad esempio,statuseusers/jane-smith/favorite_color. Le chiavi delle variabili possono contenere/. Una chiave di variabile può contenere cifre, lettere, trattini e barre e la lunghezza massima di un nome è di 256 caratteri.[VARIABLE_VALUE]è il valore di questa variabile. A seconda che tu voglia assegnare un valore come testo normale o come stringa con codifica base64, scegli la proprietàvalueotext:value: se fornisci un valore come stringa con codifica base64, utilizza la proprietàvalue.text: se fornisci una stringa di testo non crittografato, utilizza la proprietàtext. La stringa deve essere in formato UTF-8 valido.
Se l'operazione va a buon fine, l'API restituisce una risposta simile alla seguente:
{ "name": "projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]", "value": "dGVhbA==", "updateTime": "2016-04-11T21:49:00.773366134Z" }
Per saperne di più sul metodo, consulta la
variables().createdocumentazione.
Aggiornamento di una variabile
Deployment Manager
Per aggiornare una variabile in Deployment Manager:
Definisci o aggiorna le proprietà della variabile come descritto in Creazione di una variabile.
Segui i passaggi per inviare la richiesta di aggiornamento.
gcloud
Aggiorna una variabile utilizzando la stessa procedura per creare una variabile.
API
Nell'API REST, invia una richiesta PUT al seguente URI per aggiornare una variabile:
https://runtimeconfig.googleapis.com/v1beta1/projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]
dove:
[PROJECT_ID]è l'ID progetto per questa richiesta.[CONFIG_NAME]è il nome di questa configurazione.[VARIABLE_VALUE]è il valore di questa variabile. Si tratta di una stringa con codifica base64.
Il payload della richiesta deve essere:
{
"[value | text]": "[VARIABLE_VALUE]" # Choose either 'value' or 'text' but not both
}
dove [VARIABLE_VALUE] è il valore di questa variabile. A seconda che tu voglia assegnare un valore come testo normale o come stringa con codifica base64, scegli la proprietà value o text:
value: se fornisci un valore come stringa con codifica base64, utilizza la proprietàvalue.text: se fornisci una stringa di testo non crittografato, utilizza la proprietàtext. La stringa deve essere in formato UTF-8 valido.
Se l'operazione va a buon fine, l'API restituisce una risposta simile alla seguente:
{ "name": "projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]", "value": "dGVhbA==", "updateTime": "2016-04-11T21:46:11.591713370Z", "state": "UPDATED" }
Per saperne di più sul metodo, consulta la
variables().create
documentazione.
Recupero del valore di una variabile
Deployment Manager
Recupera il valore di una variabile utilizzando uno dei seguenti metodi:
gcloud
Per creare una variabile con Google Cloud CLI, utilizza il comando runtime-config configs variables get-value:
gcloud beta runtime-config configs variables get-value [VARIABLE_KEY] --config-name [CONFIG_NAME]
dove:
[VARIABLE_KEY]è la chiave della variabile. Ad esempio,status,users/jane-smith/favorite_color.[CONFIG_NAME]è il nome della risorsa RuntimeConfig per questa variabile. Ad esempio,website.gcloud CLI restituisce una risposta simile alla seguente:
example-value
Puoi anche ottenere un elenco delle variabili per cui hai
runtimeconfig.variables.get autorizzazione
e i relativi valori utilizzando il comando list e fornendo il flag --values. Ad esempio:
gcloud beta runtime-config configs variables list --config-name example-config --values
gcloud CLI restituisce un elenco simile al seguente:
NAME UPDATE_TIME VALUE
not-my-favorite-color/shade 2016-04-18T21:14:59.932428461Z orange
not-my-favorite-food/group 2016-04-18T21:14:59.932428461Z vegetables
Le variabili per cui non hai l'autorizzazione get verranno omesse. Sono incluse le variabili per cui hai l'autorizzazione list, ma non get.
Per il riferimento completo di questo gcloud comando, consulta la
runtime-config variables
documentazione di riferimento.
API
Nell'API REST, invia una richiesta GET al seguente URI per recuperare il valore di una variabile:
https://runtimeconfig.googleapis.com/v1beta1/projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]
dove:
[PROJECT_ID]è l'ID progetto per questa richiesta.[CONFIG_NAME]è il nome di questa configurazione.[VARIABLE_KEY]è il nome per questa richiesta.
Se l'operazione va a buon fine, l'API restituisce una risposta con il valore con codifica base64 della variabile:
{ "name": "projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]", "value": "[VARIABLE_VALUE]", "updateTime": "2016-04-11T21:49:00.773366134Z" }
Devi decodificare il valore per ottenere la stringa. Per saperne di più su
l metodo, consulta la variables().get
documentazione.
Se vuoi ottenere un elenco delle variabili per cui hai
runtimeconfig.variables.get l'autorizzazione
e i relativi valori, utilizza il metodo returnValues. Ad esempio:
GET uri: https://runtimeconfig.googleapis.com/v1beta1/projects/myproject/configs/example-config/variables?returnValues=True
L'API restituisce tutte le variabili per cui hai l'autorizzazione:
{
"variables": [
{
"name": "projects/compute-writers-project/configs/example-config/variables/not-my-favorite-color/shade",
"updateTime": "2016-04-18T21:14:59.932428461Z",
"value": "b3Jhbmdl"
}
]
}
Allo stesso modo, devi decodificare il valore per ottenere la stringa.
Per saperne di più su
l metodo, consulta la variables().list
documentazione.
Passaggi successivi
- Scopri di più su Runtime Configurator.
- Osservazione di una variabile specifica.
- Creazione di una risorsa waiter.
- Creazione ed eliminazione delle risorse RuntimeConfig.
- Consulta il riferimento v1beta1.
- Consulta le quote per Runtime Configurator.