Como se inscrever para criar notificações

O Cloud Build publica mensagens em um tópico do Google Pub/Sub quando o estado do build é alterado. Por exemplo, quando o build é criado quando ele começa a funcionar e quando ele é concluído.

O tópico do Pub/Sub em que o Cloud Build publica essas mensagens de atualização do build é chamado de cloud-builds. Quando você ativa a API Pub/Sub, o tópico cloud-builds é criado automaticamente. Cada mensagem contém uma representação de string JSON em base64 do recurso do build no atributo message.data. O código exclusivo e o status do build estão no campo message.attributes.

É possível usar um modelo push ou pull nas assinaturas do Pub/Sub.

Push

As inscrições push entregam mensagens para um ponto de extremidade HTTP definido por você. As mensagens são entregues assim que são publicadas no tópico.

As mensagens enviadas a partir de inscrições push são assim:

{
  "message": {
    "attributes": {
      "buildId": "abcd-efgh...",
      "status": "SUCCESS"
    },
    "data": "SGVsbG8gQ2xvdWQgUHViL1N1YiEgSGVyZSBpcyBteSBtZXNzYWdlIQ==",
    "message_id": "136969346945"
  },
  "subscription": "projects/myproject/subscriptions/mysubscription"
}

Pull

As inscrições pull entregam mensagens quando pesquisadas pelo aplicativo inscrito. As mensagens são entregues quando a inscrição é pesquisada.

As mensagens enviadas a partir de inscrições pull são assim:

{
  "receivedMessages": [
    {
      "ackId": "dQNNHlAbEGEIBERNK0EPKVgUWQYyODM2LwgRHFEZDDsLRk1SK...",
      "message": {
        "attributes": {
          "buildId": "abcd-efgh-...",
          "status": "SUCCESS"
        },
        "data": "SGVsbG8gQ2xvdWQgUHViL1N1YiEgSGVyZSBpcyBteSBtZXNzYWdlIQ==",
        "messageId": "19917247034"
      }
    }
  ]
}

Como faço para assinar e criar notificações de atualização?

Você tem várias opções para assinar e criar notificações de atualização. Por exemplo, é possível enviar mensagens por push para um endpoint ou gravar um aplicativo Python para pesquisar sua assinatura.

Para saber como configurar assinaturas do Pub/Sub para atualizações de build, leia o Guia de assinantes do Pub/Sub. Aprenda também sobre as bibliotecas de cliente do Pub/Sub, que facilitam o desenvolvimento de aplicativos de assinantes.

Se você quiser saber como usar o Pub/Sub para enviar atualizações de versão ao Slack ou e-mail, consulte Como configurar notificações do Slack ou Como configurar notificações SMTP.