Progetto JSON
Ogni configurazione in un progetto viene memorizzata come JSON in un file denominato project.json. I progetti richiedono la governance delle modifiche alla configurazione archiviate in project.json, ad esempio richiedendo
approvazioni e assicurando che i controlli automatici vengano superati prima che le modifiche vengano salvate.
Cosa contiene il mio file Project.json ?
Il file project.json è composto da diverse parti:
- ID e descrizione del progetto, valori definiti dall'utente.
- I metadati del progetto, che includono CRN, posizione, gruppo di risorse e stato del progetto.
- Un array di configurazioni che contiene un riferimento all'architettura distribuibile e tutti i valori di input.
Si consiglia di creare il codice project.json iniziale dalla pagina Progetti nella console. Questo fornisce un file project.json iniziale che può essere modificato. Quando crei un progetto nella
console, il file project.json viene creato automaticamente.
Metadati del progetto
I metadati del progetto potrebbero contenere cumulative_needs_attention_view, se si sono verificati eventi correlati al progetto su cui l'utente deve ora intervenire. event_notifications_crn è anche un valore facoltativo,
se il progetto è configurato come origine per Event Notifications. Per ulteriori informazioni, vedere Abilitazione delle notifiche degli eventi per i progetti.
...
"id": "cfbf9050-ab8e-ac97-b01b-ab5af830be8a",
"name": "CRA Test",
"description": "",
"metadata": {
"crn": "crn:v1:staging:public:project:us-south:a/<account_id>:cfbf9050-ab8e-ac97-b01b-ab5af830be8a::",
"location": "us-south",
"resource_group": "Default",
"state": "READY",
"cumulative_needs_attention_view": [
{
"event": "config.defn.update"
},
{
"event_id": "489f0090-6d7c-4af5-8f20-9106543e4974"
},
{
"config_id": "069ab83e-5016-4bf2-bd50-cc95cf678293"
},
{
"config_version": 1
}
],
"event_notifications_crn": "crn:v1:staging:public:event-notifications:us-south:a/<account_id>:instance-id::"
}
...
L'ID e il CRN di un progetto non possono essere modificati e vengono memorizzati da IBM Cloud. Inoltre, i tag sull'istanza del progetto stesso vengono memorizzati nella ricerca e nel tagging globali.
Configurazioni
Ogni configurazione convalidata e approvata in un progetto ha un oggetto nell'array configs. Ogni oggetto di configurazione ha un nome, un array di input e un tipo. Se il tipo è un modello IaC, viene incluso un catalogo locator_id.
...
"configs": [
{
"id": "cfbf9050-ab8e-ac97-b01b-ab5af830be8a",
"name": "my-deployment",
"description": "A microservice to deploy on top of ACME infrastructure.",
"locator_id": "1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.018edf04-e772-4ca2-9785-03e8e03bef72-global",
"type": "terraform_template",
"input": [
{
"name": "cos_bucket_name",
"type": "string",
"required": true,
"default": "sample-cos-bucket",
"value": ""
},
{
"name": "ibmcloud_api_key",
"type": "password",
"required": true,
"default": "__NOT_SET__",
"value": ""
},
],
"output": [
{
"name": "resource_group_id"
},
{
"name": "logdna_id"
}
]
]
...
Esportazione del progetto JSON tramite la console
In qualità di utente che lavora con i progetti, puoi esportare il file JSON del progetto per eseguire il backup delle informazioni del progetto al di fuori del servizio Progetti IBM Cloud.
Vuoi gestire il tuo progetto nel tuo repository Git ? Sebbene sia possibile esportare il progetto JSON per gestirlo manualmente, è anche possibile integrarlo direttamente con un repository Git. Per ulteriori informazioni, consultare Integrazione di un progetto con un repository Git.
Per esportare il JSON del progetto, completare i seguenti passaggi:
- Nella console IBM Cloud, fare clic sull'icona del menu di navigazione
> Progetti.
- Dalla dashboard del progetto, fare clic sull'icona Azioni Icona
> Esporta JSON
- Dalla finestra di dialogo, fare clic su Esporta.
Impostazione del formato di output JSON tramite CLI
Utilizzando la seguente opzione --output json sulla riga di comando, è possibile impostare l'output di un comando su JSON:
--output json
Esportazione del progetto JSON tramite CLI
In qualità di utente che lavora con i progetti, puoi esportare il file JSON del progetto per eseguire il backup delle informazioni del progetto al di fuori del servizio Progetti IBM Cloud.
Vuoi gestire il tuo progetto nel tuo repository Git ? Sebbene sia possibile esportare il progetto JSON per gestirlo manualmente, è anche possibile integrarlo direttamente con un repository Git. Per ulteriori informazioni, consultare Integrazione di un progetto con un repository Git.
Per esportare il progetto JSON utilizzando la CLI, eseguire il seguente comando ibmcloud project get :
ibmcloud project get --id ID
Per un comando di esempio e per maggiori informazioni sui parametri del comando, vedere ibmcloud project get.
Esportazione del progetto JSON tramite API
In qualità di utente che lavora con i progetti, puoi esportare il file JSON del progetto per eseguire il backup delle informazioni del progetto al di fuori del servizio Progetti IBM Cloud.
Vuoi gestire il tuo progetto nel tuo repository Git ? Sebbene sia possibile esportare il progetto JSON per gestirlo manualmente, è anche possibile integrarlo direttamente con un repository Git. Per ulteriori informazioni, consultare Integrazione di un progetto con un repository Git.
È possibile esportare a livello di programmazione il JSON del progetto chiamando l'API dei progetti come mostrato nella seguente richiesta di esempio:
curl -X GET --location --header "Authorization: Bearer {iam_token}" \
--header "Accept: application/json" \
"{base_url}/v1/projects/{id}"