Log di modifica API progetti

In questo log delle modifiche, puoi conoscere le ultime modifiche, miglioramenti e aggiornamenti per l'API Progetti. Il log delle modifiche elenca le modifiche apportate, ordinate in base alla data in cui sono state rilasciate. Le modifiche alle versioni API esistenti sono progettate per essere compatibili con le applicazioni client esistenti.

03 aprile 2024

L'API Progetti v1.0.0 è ora disponibile. Assicurati di aggiornare la tua versione dalla beta.

Le seguenti modifiche influiscono sulla paginazione delle operazioni list. Per ulteriori informazioni, consultare la sezione paginazione della documentazione dell'API Progetti.

elenco - progetti

GET /v1/projects

  • Il parametro di query del token della pagina è stato ridenominato da start a token.
    • Ad esempio, la chiamata dell'operazione list-projects è stata modificata da GET /v1/projects?limit=5&start={page_token} a GET /v1/projects?limit=5&token={page_token}.
  • La prima pagina viene restituita senza il parametro di query token nell'URL della richiesta. Ad esempio, GET /v1/projects?limit=5 OR GET /v1/projects.
    • La prima pagina viene restituita anche quando il token di pagina specificato non è valido.
  • I campi last e previous non sono più supportati né inclusi nel payload della risposta.

list - configs

GET /v1/projects/{project_id}/configs

  • Questa operazione è ora impaginata.
  • Viene restituito un valore predefinito di 10 record se la dimensione della pagina non è specificata nel parametro di query limit.
    • La dimensione massima della pagina è di 100 record.
  • La prima pagina viene restituita senza il parametro di query token nell'URL della richiesta. Ad esempio, GET /v1/projects/{project_id}/configs/?limit=5 OR GET /v1/projects/{project_id}/configs.
    • La prima pagina viene restituita anche quando il token di pagina specificato non è valido.

ambienti - elenco

GET /v1/projects/{project_id}/environments

  • Questa operazione è ora impaginata.
  • Viene restituito un valore predefinito di 10 record se la dimensione della pagina non è specificata nel parametro di query limit.
    • La dimensione massima della pagina è di 100 record.
  • La prima pagina viene restituita senza il parametro di query token nell'URL della richiesta. Ad esempio, GET /v1/projects/{project_id}/environments/?limit=5 OR GET /v1/projects/{project_id}/environments.
    • La prima pagina viene restituita anche quando il token di pagina specificato non è valido.

Metodi per supportare l'impilamento di architetture distribuibili

Sperimentale

Sono stati aggiunti metodi sperimentali per supportare lo stack delle architetture distribuibili.

06 novembre 2023

L'ultimo aggiornamento include la seguente modifica di interruzione:

  • I modelli configurations response per tutti i metodi non utilizzano più un pipeline_state. Tutte le informazioni sullo stato di un configuration sono disponibili nella proprietà state aumentata nello schema canonico di un configuration.

Modifiche ai progetti e alle configurazioni

create-project: POST /v1/projects

  • resource_group e location devono ora essere integrati nel payload request. Non sono più supportati come parametri di query.

delete-config: PATCH /v1/projects/{project_id}/configs/{id}

  • Il parametro di query draft_only è obsoleto.
  • L'API ora supporta l'eliminazione di configuration di un ID progetto specificato e version. Vedere progetti#delete-config - version.

Endpoint di configurazione ridenominati

I seguenti endpoint di configurazione vengono ridenominati come segue:

  • POST /v1/projects/{project_id}/configs/{id}/check viene modificato in POST /v1/projects/{project_id}/configs/{id}/validate.
  • POST /v1/projects/{project_id}/configs/{id}/install viene modificato in POST /v1/projects/{project_id}/configs/{id}/deploy.
  • POST /v1/projects/{project_id}/configs/{id}/uninstall viene modificato in POST /v1/projects/{project_id}/configs/{id}/undeploy.

Endpoint di configurazione sostituiti

I metodi drafts sono stati sostituiti dalle operazioni versions nel modo seguente:

  • GET /v1/projects/{project_id}/configs/{config_id}/drafts viene modificato in GET /v1/projects/{project_id}/configs/{id}/versions.
  • GET /v1/projects/{project_id}/configs/{config_id}/drafts/{version} viene modificato in GET /v1/projects/{project_id}/configs/{id}/versions/{version}

Stati di configurazione

Il modello di stato per configurations è appiattito. Il pipeline_state non è più disponibile e l'unica proprietà state è ora aumentata per catturare tutti gli stati possibili di un configuration.

Di seguito sono riportati i nuovi valori state:

  • approved
  • deleted
  • deleting
  • deleting_failed
  • discarded
  • deployed
  • deploying_failed
  • deploying
  • superceded
  • undeploying
  • undeploying_failed
  • validated
  • validating
  • validating_failed

Tutti gli endpoint configuration includono la proprietà state nel modello response. Per un esempio, vedi projects#get- config - version - response.

Configurazione nuovi metadati

Il modello response delle operazioni configurations definisce ora nuovi metadati nella root. Se un lavoro approve è stato eseguito su un configuration, una proprietà approved_version è inclusa nel payload response. Allo stesso modo, se un lavoro deploy è stato eseguito su un configuration, i metadati deployed_version e last_deployed sono disponibili nel corpo response. L'esecuzione di un lavoro validation produce i metadati last_validated, mentre l'esecuzione di un lavoro undeploy produce i metadati last_undeployed in response.

25 ottobre 2023

Nelle operazioni projects e configurations, come create e update, le proprietà di definizione come name e description devono ora essere fornite in un wrapper definition. Allo stesso modo, queste proprietà sono ora disponibili solo all'interno di un blocco definition nel payload response delle operazioni create, update, get e list. Questa è una modifica di rottura che è stata originariamente rilasciata il 06 luglio 2023. Le seguenti sezioni forniscono ulteriori informazioni sui metodi interessati da questo aggiornamento.

Progetti

create-project: POST /v1/projects

  • Sia per request & response che per name, description e destroy_on_delete sono ora racchiusi in un oggetto definition.
  • I chiamanti di questo endpoint ora devono fornire le proprietà di definizione all'interno di questo wrapper, ad esempio:
    • definition: {“name”: “test”, “description”: “This is a test project”, “destroy_on_delete”: false}.
      • Se destroy_on_delete non viene fornito, viene assegnato un valore predefinito di true in un'operazione di creazione del progetto.
    • Vedere progetti#create-project - request.
  • Allo stesso modo, nel body response, le proprietà precedentemente menzionate sono ora disponibili in un blocco definition.

update-project: PATCH /v1/projects/{id}

  • Sia per request & response che per name, description e destroy_on_delete sono ora racchiusi in un oggetto definition.
  • I chiamanti di questo endpoint ora devono fornire le proprietà di definizione all'interno di questo wrapper, ad esempio:
  • Allo stesso modo, nel body response, le proprietà precedentemente menzionate sono ora disponibili in un blocco definition.

get-projects: GET /v1/projects/{id}

  • Nel response di questa operazione, name, description e destroy_on_delete sono ora inclusi in un blocco definition.

list-project: GET /v1/projects

  • Ogni progetto restituito nell'array response include le proprietà name, description e destroy_on_delete in un blocco definition.

Configurazioni

create-config: POST /v1/projects/{project_id}/configs

  • Sia per request & response che per locator_id, name, labels, authorizations, compliance_profile, input, setting, description sono ora inclusi in un oggetto definition.
  • I chiamanti di questo endpoint ora devono fornire le proprietà di definizione all'interno di questo wrapper, ad esempio:
    • definition: {“name”: “test”, “description”: “This is a test config”, “locator_id”: “1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.cd596f95-95a2-4f21-9b84-477f21fd1e95-global”}.
    • Vedere progetti#create-config - request.
  • Allo stesso modo, nel body response, le proprietà precedentemente menzionate sono ora disponibili in un blocco definition.

update-config: PATCH /v1/projects/{project_id}/configs/{id}

  • Sia per request & response che per locator_id, name, labels, authorizations, compliance_profile, input, setting, description sono ora inclusi in un oggetto definition.
  • I chiamanti di questo endpoint ora devono fornire le proprietà di definizione all'interno di questo wrapper, ad esempio:
    • definition: {“name”: “test”, “description”: “This is a test config”, “locator_id”: “1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.cd596f95-95a2-4f21-9b84-477f21fd1e95-global”}.
    • Vedere progetti#update-config - request.
  • Allo stesso modo, nel corpo di response le proprietà precedentemente indicate vengono spostate in un blocco definition.

get-config: GET /v1/projects/{id}

  • In response di questa operazione, locator_id, name, labels, authorizations, compliance_profile, input, setting, description e setting sono ora inclusi in un oggetto definition.

list-configs: GET /v1/projects/{project_id}/configs

06 luglio 2023

I modelli di risposta per tutti i metodi ora applicano un formato di caratteri minuscoli in valori state. Questo formato è previsto nella risposta quando si richiamano gli endpoint di configurazione e progetto. Questo aggiornamento è un cambiamento di rottura.

I valori del progetto state possono ora essere ready, deleting e deleting_failed. Per un esempio, vedi lo schema di risposta per il metodo update-project.

I valori state di configurazione possono ora essere deleted, deleting, deleting_failed, installed, installed_failed, installing, not_installed, uninstalling uninstalling_failed e active. Per un esempio, vedi lo schema di risposta per il metodo get-config.