Log de mudanças da API de projetos

Nesse log de mudanças, é possível aprender sobre mudanças, melhorias e atualizações mais recentes para a API de projetos. O log de mudanças lista mudanças que foram feitas, ordenadas pela data em que foram liberadas. As mudanças nas versões existentes da API são projetadas para serem compatíveis com os aplicativos clientes existentes.

03 de abril de 2024

A API de Projetos v1.0.0 agora está disponível Certifique-se de atualizar sua versão de beta.

As mudanças a seguir impactam a paginação de operações do list Para obter mais informações, consulte a seção paginação dos documentos da API de projetos.

list-projetos

GET /v1/projects

  • O parâmetro de consulta do token de página foi renomeado de start para token
    • Por exemplo, chamar a operação list-projects mudou de GET /v1/projects?limit=5&start={page_token} para GET /v1/projects?limit=5&token={page_token}.
  • A primeira página é retornada sem o parâmetro de consulta do token na URL de solicitação Por exemplo, GET /v1/projects?limit=5 ou GET /v1/projects.
    • A primeira página também é retornada quando o token de página especificado é inválido
  • Os campos last e previous não são mais suportados nem incluídos na carga útil de resposta.

list-configs

GET /v1/projects/{project_id}/configs

  • Esta operação agora é paginada
  • Um padrão de 10 registros será retornado se o tamanho da página não for especificado no parâmetro de consulta limit..
    • O tamanho máximo da página é de 100 registros
  • A primeira página é retornada sem o parâmetro de consulta do token na URL de solicitação Por exemplo, GET /v1/projects/{project_id}/configs/?limit=5 ou GET /v1/projects/{project_id}/configs.
    • A primeira página também é retornada quando o token de página especificado é inválido

list-ambientes

GET /v1/projects/{project_id}/environments

  • Esta operação agora é paginada
  • Um padrão de 10 registros será retornado se o tamanho da página não for especificado no parâmetro de consulta limit.
    • O tamanho máximo da página é de 100 registros
  • A primeira página é retornada sem o parâmetro de consulta token na URL de solicitação.. Por exemplo, GET /v1/projects/{project_id}/environments/?limit=5 ou GET /v1/projects/{project_id}/environments.
    • A primeira página também é retornada quando o token de página especificado é inválido

Métodos para suportar arquiteturas implementáveis de empilhamento

Experimental

Métodos experimentais incluídos para suportar arquiteturas implementáveis empilhadas.

06 novembro 2023

A atualização mais recente inclui a seguinte mudança que afeta o processamento da mensagem:

  • Os modelos do configurations response para todos os métodos não usam mais um pipeline_state Todas as informações de status de um configuration estão disponíveis na propriedade state aumentada no esquema canônico de um configuration..

Mudanças de projetos e configurações

create-project: POST /v1/projects

  • O resource_group e o location agora devem ser integrados na carga útil do request Eles não são mais suportados como parâmetros de consulta

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

  • O parâmetro de consulta draft_only foi descontinuado
  • A API agora suporta a exclusão de configuration de um ID do projeto especificado e de version Consulte projects#delete-config-version.

Terminais de configuração renomeados

Os seguintes terminais de configuração são renomeados da seguinte forma:

  • POST /v1/projects/{project_id}/configs/{id}/check é alterado para POST /v1/projects/{project_id}/configs/{id}/validate
  • POST /v1/projects/{project_id}/configs/{id}/install é alterado para POST /v1/projects/{project_id}/configs/{id}/deploy
  • POST /v1/projects/{project_id}/configs/{id}/uninstall é alterado para POST /v1/projects/{project_id}/configs/{id}/undeploy

Terminais de configuração substituídos

Os métodos drafts foram substituídos pelas operações versions da seguinte forma:

  • GET /v1/projects/{project_id}/configs/{config_id}/drafts é alterado para GET /v1/projects/{project_id}/configs/{id}/versions
  • GET /v1/projects/{project_id}/configs/{config_id}/drafts/{version} é alterado para GET /v1/projects/{project_id}/configs/{id}/versions/{version}..

Estados de configurações

O modelo de estado para configurations é achatado O pipeline_state não está mais disponível e a propriedade state agora é aumentada para capturar todos os status possíveis de um configuration..

A seguir estão os novos valores state :

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

Todos os terminais do configuration incluem essa propriedade state no modelo response Para obter um exemplo, consulte projects#get-config-version-response

Configurar novos metadados

O modelo response de operações configurations agora define novos metadados na raiz.. Se uma tarefa approve foi executada em um configuration, uma propriedade approved_version será incluída na carga útil response. Da mesma forma, se uma tarefa deploy tiver sido executada em um configuration, os metadados deployed_version e last_deployed estarão disponíveis no corpo response Executar uma tarefa validation produz os metadados last_validated, enquanto executar uma tarefa undeploy produz os metadados last_undeployed no response.

25 de outubro de 2023

Em operações projects e configurations, como create e update, propriedades de definição como name e description agora devem ser fornecidas em um wrapper definition. Da mesma forma que essas propriedades agora estão disponíveis apenas dentro de um bloco definition na response carga útil de operações create, update, get, e list. Esta é uma mudança radical que foi originalmente lançada em 06 de julho de 2023. As seções a seguir fornecem mais informações sobre os métodos afetados por essa atualização.

Projetos

create-project: POST /v1/projects

  • Para o request & response, o name, description e destroy_on_delete agora são agrupados dentro de um objeto definition.
  • Espera-se agora que os responsáveis pela chamada deste terminal forneçam as propriedades de definição dentro deste wrapper, por exemplo:
    • definition: {“name”: “test”, “description”: “This is a test project”, “destroy_on_delete”: false}.
      • Se destroy_on_delete não for fornecido, um valor padrão true será designado em uma operação de criação de projeto.
    • Consulte projects#create-project-request.
  • Da mesma forma, no corpo do response, as propriedades mencionadas anteriormente agora estão disponíveis em um bloco definition

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

  • Para o request & response, o name, description e destroy_on_delete agora são agrupados dentro de um objeto definition.
  • Espera-se agora que os responsáveis pela chamada deste terminal forneçam as propriedades de definição dentro deste wrapper, por exemplo:
  • Da mesma forma, no corpo do response, as propriedades mencionadas anteriormente agora estão disponíveis em um bloco definition

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

  • No response desta operação, o name, description e destroy_on_delete agora são agrupados dentro de um bloco definition.

list-project: GET /v1/projects

  • Cada projeto retornado na matriz response agrupa as propriedades name, description e destroy_on_delete em um bloco definition.

Configurações

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

  • Para ambos request & response, o locator_id, name, labels, authorizations, compliance_profile, input, setting, description agora são agrupados dentro de um objeto definition
  • Espera-se agora que os responsáveis pela chamada deste terminal forneçam as propriedades de definição dentro deste wrapper, por exemplo:
    • definition: {“name”: “test”, “description”: “This is a test config”, “locator_id”: “1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.cd596f95-95a2-4f21-9b84-477f21fd1e95-global”}.
    • Consulte projects#create-config-request..
  • Da mesma forma, no corpo do response, as propriedades mencionadas anteriormente agora estão disponíveis em um bloco definition

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

  • Para ambos request & response, o locator_id, name, labels, authorizations, compliance_profile, input, setting, description agora são agrupados dentro de um objeto definition
  • Espera-se agora que os responsáveis pela chamada deste terminal forneçam as propriedades de definição dentro deste wrapper, por exemplo:
    • definition: {“name”: “test”, “description”: “This is a test config”, “locator_id”: “1082e7d2-5e2f-0a11-a3bc-f88a8e1931fc.cd596f95-95a2-4f21-9b84-477f21fd1e95-global”}.
    • Consulte projects#update-config-request..
  • Da mesma forma, no corpo response as propriedades mencionadas anteriormente são movidas para um bloco definition.

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

  • No response dessa operação, o locator_id, name, labels, authorizations, compliance_profile, input, setting, description e setting agora são agrupados dentro de um objeto definition

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

06 de julho de 2023

Os modelos de resposta para todos os métodos agora impingem um formato de maiúsculas e minúsculas em valores state. Esse formato deve ser esperado na resposta quando você estiver chamando os terminais de projeto e de configuração Esta atualização é uma mudança de quebra.

Os valores de state do projeto agora podem ser ready, deleting e deleting_failed Para obter um exemplo, consulte o esquema de resposta para o método update-project

Os valores de state de configuração agora podem ser deleted, deleting, deleting_failed, installed, installed_failed, installing, not_installed, uninstalling, uninstalling_failed e active Para obter um exemplo, consulte o esquema de resposta para o método get-config