Impostazione e recupero dei dati

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Questa pagina spiega come impostare, ricevere e aggiornare le variabili utilizzando Runtime Configuratore. Le variabili sono coppie chiave/valore appartenenti a una risorsa RuntimeConfig. Ogni coppia chiave-valore contiene dati da te definiti. Dopo aver creato una variabile, puoi impostare un visualizzatore o un attesa.

Per saperne di più sulle variabili e sul servizio Runtime Configurator, consulta la documentazione Runtime Configurator Fundamentals.

Per informazioni su come creare una risorsa RuntimeConfig, consulta Creazione ed eliminazione delle risorse RuntimeConfig.

Prima di iniziare

Creare una variabile

Una variabile è una coppia chiave-valore. La chiave di una variabile può essere fissa o gerarchica. Ad esempio, tutte le seguenti sono chiavi valide:

  • status
  • users/jane-smith/favorite-color
  • users/total

Solo le chiavi dei nodi foglia possono avere valori. Nell'esempio precedente, non puoi assegnare un valore a:

  • users
  • users/jane-smith

perché entrambe le chiavi contengono altre chiavi sottostanti.

Per creare una variabile, utilizza Deployment Manager, l'interfaccia a riga di comando di Google Cloud 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 arbitrario della risorsa per questa variabile. Questo non è il nome della variabile stessa.
  • [CONFIG_NAME] è la risorsa Config per questa richiesta.
  • [VARIABLE_KEY] è la chiave della variabile. Ad esempio, status e users/jane-smith/favorite_color sono chiavi valide. Le chiavi delle variabili possono contenere /. Una chiave variabile può contenere cifre, lettere, trattini e barre, mentre la lunghezza massima per 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 codificata in Base64, scegli la proprietà value o text:
    • value: se fornisci un valore come stringa codificata in Base64, utilizza la proprietà value.
    • text: se fornisci una stringa di testo normale, utilizza la proprietà text. La stringa deve essere valida UTF-8.

gcloud

Per creare una variabile con l'interfaccia a riga di comando di Google Cloud, 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, status e users/jane-smith/favorite_color sono chiavi valide. Le chiavi delle variabili possono contenere /. Una chiave di variabile può contenere digt, lettere, trattini e barre e la lunghezza massima per un nome è di 256 caratteri.
  • [VARIABLE_VALUE] è il valore di questa variabile. Puoi assegnare un valore come testo non crittografato o come stringa base64 codificata. Se specifichi un valore di testo non crittografato, fornisci il flag --is-text; in caso contrario, l'interfaccia a riga di comando di Google Cloud codificherà il valore nella codifica base 64.

    gcloud beta runtime-config configs variables set [VARIABLE_KEY] \
          [VARIABLE_VALUE] --config-name [CONFIG_NAME] --is-text
    

    Puoi anche fornire il valore 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é gcloud eseguirà 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-config
    

    L'interfaccia a riga di comando gcloud restituisce una risposta come:

Created [https://runtimeconfig.googleapis.com/v1beta1/projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]].

Per impostazione predefinita, tutte le variabili esistenti verranno sovrascritte in modo automatico. Se vuoi conservare una variabile esistente, includi il flag --fail-if-present, che crea la nuova variabile se non esiste.

Allo stesso modo, puoi non completare la richiesta della variabile anche fornendo il flag --fail-if-absent.

Per il riferimento completo per questo comando gcloud, leggi la documentazione di riferimento runtime-config variables set.

API

Nell'API REST, effettua 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 testo normale della chiave o il valore codificato in 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, status e users/jane-smith/favorite_color. Le chiavi della variabile possono contenere /. Una chiave della variabile può contenere digt, lettere, trattini e barre e la lunghezza massima per un nome è di 256 caratteri.
  • [VARIABLE_VALUE] è il valore di questa variabile. A seconda che tu voglia assegnare un valore come testo non crittografato o come stringa codificata in base64, scegli la proprietà value o text:

    • value: se fornisci un valore come stringa codificata in Base64, utilizza la proprietà value.
    • text: se fornisci una stringa di testo normale, utilizza la proprietà text. La stringa deve essere valida UTF-8.

    In caso di esito positivo, l'API restituisce una risposta come:

    {
    "name": "projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]",
    "value": "dGVhbA==",
    "updateTime": "2016-04-11T21:49:00.773366134Z"
    }

    Per scoprire di più sul metodo, consultate la documentazione di variables().create.

Aggiornare una variabile

Deployment Manager

Per aggiornare una variabile in Deployment Manager:

  1. Definisci o aggiorna le proprietà della variabile come descritto in Creare una variabile.

  2. Segui i passaggi per inviare la richiesta di aggiornamento.

gcloud

Aggiorna una variabile utilizzando la stessa procedura per crearla.

API

Nell'API REST, effettua 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 codificata in 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 codificata in Base64, scegli la proprietà value o text:

  • value: se fornisci un valore come stringa codificata in Base64, utilizza la proprietà value.
  • text: se fornisci una stringa di testo normale, utilizza la proprietà text. La stringa deve essere valida UTF-8.

In caso di esito positivo, l'API restituisce una risposta come:

{
  "name": "projects/[PROJECT_ID]/configs/[CONFIG_NAME]/variables/[VARIABLE_KEY]",
  "value": "dGVhbA==",
  "updateTime": "2016-04-11T21:46:11.591713370Z",
  "state": "UPDATED"
}

Per scoprire di più sul metodo, consultate la documentazione di variables().create.

Recupero del valore di una variabile

Deployment Manager

Utilizza il metodo seguente per ottenere il valore di una variabile:

gcloud

Per creare una variabile con l'interfaccia a riga di comando di Google Cloud, 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.

    L'interfaccia a riga di comando gcloud restituisce una risposta come:

    example-value

Puoi anche ottenere un elenco delle variabili per le quali disponi dell'autorizzazione runtimeconfig.variables.get e dei 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

L'interfaccia a riga di comando gcloud 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

Tutte le variabili per cui non disponi dell'autorizzazione get verranno omesse. Sono incluse le variabili per le quali hai l'autorizzazione list, ma non l'autorizzazione get.

Per il riferimento completo per questo comando gcloud, leggi la documentazione di riferimento runtime-config variables.

API

Nell'API REST, effettua una richiesta GET al seguente URI per ottenere un valore variable's:

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.

In caso di esito positivo, l'API restituisce una risposta con il valore codificato in 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 scoprire di più sul metodo, consulta la documentazione di variables().get.

Se vuoi ottenere un elenco di variabili per le quali disponi dell'autorizzazione runtimeconfig.variables.get e dei 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 disponi dell'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"
    }
  ]
}

Analogamente, devi decodificare il valore autonomamente per ottenere la stringa.

Per scoprire di più sul metodo, consulta la documentazione di variables().list.

Passaggi successivi