Como visualizar uma configuração

Esta página descreve como visualizar um arquivo de configuração antes de criar uma implantação. Para saber mais, leia a Visão geral das configurações.

Após escrever o arquivo de configuração, você pode ver essa configuração antes de criar uma implantação. Ao visualizá-la, é possível ver os recursos que o Deployment Manager criaria, sem instanciar, de fato, qualquer recurso real. O serviço do Deployment Manager visualiza a configuração ao:

  1. expandi-la inteiramente, incluindo os modelos;
  2. criar uma implantação e recursos de "shell".

É possível visualizar a configuração usando o parâmetro de consulta preview ao fazer uma solicitação insert().

Antes de começar

Como visualizar uma nova configuração

Visualizar uma configuração usando o Google Cloud CLI ou fazendo uma solicitação direta à API.

gcloud

Se você estiver usando a Google Cloud CLI, use o subcomando create com a sinalização --preview:

gcloud deployment-manager deployments create example-config --config configuration-file.yaml \
     --preview

O servidor retorna uma lista de recursos cujo estado é IN_PREVIEW para você analisar:

The fingerprint of the deployment is ulPDrJON8E5ySHKC5fcukw==
Waiting for create [operation-1492785372594-54dae2ddbff50-58d45d53-12d483cf]...done.
Create operation operation-1492785372594-54dae2ddbff50-58d45d53-12d483cf completed successfully.
NAME                      TYPE                 STATE       ERRORS  INTENT
datadisk-example  compute.v1.disk      IN_PREVIEW  []      CREATE_OR_ACQUIRE
vm-example        compute.v1.instance  IN_PREVIEW  []      CREATE_OR_ACQUIRE

API

Na API, use o método insert() com um corpo de solicitação que contenha os campos target e name e o parâmetro de consulta preview=true. Forneça a configuração no campo target.

Por exemplo, com a solicitação de API a seguir é possível visualizar um modelo simples:

POST https://www.googleapis.com/deploymentmanager/v2/projects/myproject/global/deployments?preview=true

{
 "name": "example-config",
 "target": {
  "config": {
    "content":  "resources:\n- name: vm-created-by-cloud-config\n  type: compute.v1.instance\n  properties:\n    zone: us-central1-a\n    machineType: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes/n1-standard-1\n    disks:\n    - deviceName: boot\n      type: PERSISTENT\n      boot: true\n      autoDelete: true\n      initializeParams:\n        diskName: disk-created-by-cloud-config\n        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-7-wheezy-v20140619\n    networkInterfaces:\n    networkInterfaces:\n    - network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default"
   }
  }
}

No modo de visualização, você pode continuar com a implantação adotando uma destas três maneiras:

Como realizar várias visualizações

Se você quer alterar a configuração e executar outra visualização, use o comando update com o sinalizador --preview:

gcloud deployment-manager deployments update example-config \
    --config new-config.yaml --preview

Na API, faça uma solicitação PUT() com uma implantação atual e forneça o parâmetro de consulta preview=true. O corpo da solicitação precisa conter os campos intent, target e name. Por exemplo, a seguinte solicitação de API visualiza uma atualização simples:

PUT https://www.googleapis.com/deploymentmanager/v2/projects/myproject/global/deployments/example-config?preview=true

{
 "target": {
  "config": {
   "content": "resources:\n- name: vm-created-by-cloud-config\n  type: compute.v1.instance\n  properties:\n    zone: us-central1-a\n    machineType: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/machineTypes/n1-standard-1\n    disks:\n    - deviceName: boot\n      type: PERSISTENT\n      boot: true\n      autoDelete: true\n      initializeParams:\n        diskName: disk-created-by-cloud-config\n        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-7-wheezy-v20140619\n    networkInterfaces:\n    - network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default"
  }
 },
 "name": "example-config"
}

Como implantar ou cancelar uma visualização

Depois de visualizar uma implantação, é possível avançar com a implantação executando uma atualização e confirmando a configuração. Por exemplo, suponha que você tenha uma implantação chamada "example-config" atualmente em modo de visualização. Você pode continuar com a implantação executando o comando a seguir:

gcloud deployment-manager deployments update example-config

O Deployment Manager usa a última configuração visualizada para criar uma implantação.

Como alternativa, se você não quiser avançar com a configuração, poderá cancelar a visualização e excluir a implantação:

gcloud deployment-manager deployments cancel-preview example-config

Enquanto uma implantação estiver em modo de visualização, não será possível continuar com outra configuração. Por exemplo, suponha que você tenha uma implantação chamada example-config que esteja no modo de visualização usando uma configuração chamada vm.yaml. Você decide que quer implantar uma nova configuração denominada two_vms.yaml na mesma implantação, ignorando o processo de visualização. Enquanto example-config estiver em modo de visualização, não será possível implantar uma nova configuração. Cancele a visualização e atualize a implantação com a nova configuração.

A seguir