Per ogni implementazione, Deployment Manager crea variabili di ambiente predefinite che contengono informazioni dedotte dall'implementazione. Utilizza queste variabili di ambiente nei modelli Python o Jinja2 per ottenere informazioni sul progetto o sul deployment.
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 API.
- Comprendi come crea un modello di base.
- Scopri come creare una configurazione
Variabili di ambiente disponibili
Le seguenti variabili di ambiente vengono impostate automaticamente da Deployment Manager.
Vengono sostituiti ovunque li utilizzi nei tuoi modelli. Ad esempio:
utilizza la variabile project_number
per aggiungere il numero di progetto al nome di un
l'account di servizio.
Variabile di ambiente | Valore |
---|---|
deployment |
Il nome del deployment. |
name |
Il name dichiarato nella configurazione che utilizza il
modello. Questo può essere utile se vuoi che il nome che hai dichiarato nel
predefinita in modo che sia il nome della risorsa nell'elenco
modelli di machine learning. |
project |
L'ID progetto per questo deployment. |
project_number |
Il numero del progetto per questo deployment. |
current_time |
Il timestamp UTC in cui è iniziata l'espansione per il deployment. |
type |
Il tipo di risorsa dichiarato nella configurazione di primo livello. |
username |
L'utente corrente di Deployment Manager. |
Utilizzo di una variabile di ambiente
Utilizza la seguente sintassi per aggiungere una variabile di ambiente ai modelli:
{{ env["deployment"] }} # Jinja context.env["deployment"] # Python
Nel modello, utilizza le variabili come in questi esempi:
Jinja
- type: compute.v1.instance name: vm-{{ env["deployment"] }} properties: machineType: zones/us-central1-a/machineTypes/f1-micro serviceAccounts: - email: {{ env['project_number'] }}-compute@developer.gserviceaccount.com scopes: - ...
Python
def GenerateConfig(context): resources = [] resources.append ({ 'name': 'vm-' + context.env["deployment"], 'type': 'compute.v1.instance', 'properties': { 'serviceAccounts': [{ 'email': context.env['project_number'] + '-compute@developer.gserviceaccount.com', 'scopes': [...] }] } ...}] return {'resources': resources}
Passaggi successivi
- Aggiungi definitivamente un modello al progetto come tipo composto.
- Ospita i modelli esternamente per condividerli con altri utenti.
- Aggiungi schemi per assicurarti che gli utenti interagiscano correttamente con i tuoi modelli.