- Recurso: automação
- Métodos
Recurso: Automation
Um recurso Automation
na API Cloud Deploy.
Um Automation
permite a automação de ações orientadas manualmente para um pipeline de entrega, que inclui promoção de lançamento entre Destinos, reparo de lançamento e avanço da estratégia de implantação de lançamento. A intenção da Automation é reduzir a intervenção manual no processo de entrega contínua.
Representação JSON |
---|
{ "name": string, "uid": string, "description": string, "createTime": string, "updateTime": string, "annotations": { string: string, ... }, "labels": { string: string, ... }, "etag": string, "suspended": boolean, "serviceAccount": string, "selector": { object ( |
Campos | |
---|---|
name |
Apenas saída. Nome da |
uid |
Apenas saída. Identificador exclusivo do |
description |
Opcional. Descrição do |
createTime |
Apenas saída. Hora em que a automação foi criada. Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
updateTime |
Apenas saída. Hora em que a automação foi atualizada. Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: |
annotations |
Opcional. Anotações do usuário. Esses atributos só podem ser definidos e usados pelo usuário, e não pelo Cloud Deploy. As anotações precisam atender às seguintes restrições:
Consulte https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/#syntax-and-character-set para saber mais detalhes. Um objeto com uma lista de pares |
labels |
Opcional. Rótulos são atributos que podem ser definidos e usados pelo usuário e pelo Cloud Deploy. Os rótulos precisam atender às seguintes restrições:
As chaves e os valores são restritos a <= 63 caracteres. Um objeto com uma lista de pares |
etag |
Opcional. A ETag fraca do recurso |
suspended |
Opcional. Quando suspensa, a automação é desativada da execução. |
serviceAccount |
Obrigatório. Endereço de e-mail da conta de serviço do IAM gerenciada pelo usuário que cria os recursos de lançamento e lançamento do Cloud Deploy. |
selector |
Obrigatório. Recursos selecionados em que a automação será aplicada. |
rules[] |
Obrigatório. Lista de regras de Automation associadas ao recurso de Automation. É preciso ter pelo menos uma regra e um limite de 250 por pipeline de entrega. Observação: a ordem das regras aqui não é igual à ordem de execução. |
AutomationResourceSelector
AutomationResourceSeletor contém as informações para selecionar os recursos em que uma Automation será aplicada.
Representação JSON |
---|
{
"targets": [
{
object ( |
Campos | |
---|---|
targets[] |
Contém atributos sobre um destino. |
TargetAttribute
Contém critérios para selecionar Destinos.
Representação JSON |
---|
{ "id": string, "labels": { string: string, ... } } |
Campos | |
---|---|
id |
ID do |
labels |
Marcadores de destino. Um objeto com uma lista de pares |
AutomationRule
AutomationRule
define as atividades de automação.
Representação JSON |
---|
{ // Union field |
Campos | |
---|---|
Campo de união rule . A configuração da regra de Automation. rule só pode ser de um dos seguintes tipos: |
|
promoteReleaseRule |
Opcional. |
advanceRolloutRule |
Opcional. O |
repairRolloutRule |
Opcional. O |
PromoteReleaseRule
A regra PromoteRelease
promoverá automaticamente uma versão do destino atual para um destino especificado.
Representação JSON |
---|
{
"id": string,
"wait": string,
"destinationTargetId": string,
"condition": {
object ( |
Campos | |
---|---|
id |
Obrigatório. ID da regra. Esse ID precisa ser exclusivo no recurso |
wait |
Opcional. Por quanto tempo a versão precisa ficar pausada até ser promovida para o próximo destino. Duração em segundos com até nove dígitos fracionários, terminando em " |
destinationTargetId |
Opcional. O ID do estágio no pipeline em que este
|
condition |
Apenas saída. Informações sobre o estado da regra Automation. |
destinationPhase |
Opcional. A fase inicial do lançamento criado por esta operação. O padrão é a primeira fase. |
AutomationRuleCondition
AutomationRuleCondition
contém condições relevantes para uma regra Automation
.
Representação JSON |
---|
{
"targetsPresentCondition": {
object ( |
Campos | |
---|---|
targetsPresentCondition |
Opcional. Detalhes sobre os destinos enumerados na regra. |
AdvanceRolloutRule
A regra de automação rollouts.advance
avançará automaticamente um lançamento bem-sucedido para a próxima fase.
Representação JSON |
---|
{
"id": string,
"sourcePhases": [
string
],
"wait": string,
"condition": {
object ( |
Campos | |
---|---|
id |
Obrigatório. ID da regra. Esse ID precisa ser exclusivo no recurso |
sourcePhases[] |
Opcional. Prossegue somente depois que o nome da fase corresponde a qualquer um na lista. Esse valor precisa conter letras minúsculas, números e hifens, começar com uma letra e terminar com uma letra ou um número e ter no máximo 63 caracteres. Em outras palavras, ele precisa corresponder ao seguinte regex: |
wait |
Opcional. Tempo de espera após a conclusão de um lançamento. Duração em segundos com até nove dígitos fracionários, terminando em " |
condition |
Apenas saída. Informações sobre o estado da regra Automation. |
RepairRolloutRule
A regra de automação RepairRolloutRule
repara automaticamente uma Rollout
com falha.
Representação JSON |
---|
{ "id": string, "sourcePhases": [ string ], "jobs": [ string ], "repairModes": [ { object ( |
Campos | |
---|---|
id |
Obrigatório. ID da regra. Esse ID precisa ser exclusivo no recurso |
sourcePhases[] |
Opcional. Fases em que os jobs estão sujeitos a ações de reparo automático em caso de falha. Prossegue somente depois que o nome da fase corresponde a qualquer um na lista ou para todas as fases, se não for especificado. Esse valor precisa conter letras minúsculas, números e hifens, começar com uma letra e terminar com uma letra ou um número e ter no máximo 63 caracteres. Em outras palavras, ele precisa corresponder ao seguinte regex: |
jobs[] |
Opcional. Tarefas a serem reparadas. Prossegue somente depois que o nome do job corresponde a qualquer um na lista ou para todos os jobs, se não especificado ou vazio. A fase que inclui o job precisa corresponder ao ID de fase especificado em |
repairModes[] |
Obrigatório. Define os tipos de ações de reparo automático para jobs com falha. |
condition |
Apenas saída. Informações sobre o estado da regra de "Automation". |
RepairMode
Configuração da ação de reparo.
Representação JSON |
---|
{ // Union field |
Campos | |
---|---|
Campo de união mode . A ação de reparo a ser realizada. mode só pode ser de um dos seguintes tipos: |
|
retry |
Opcional. Repete um job com falha. |
rollback |
Opcional. Reverte um |
Tentar de novo
Repete o job com falha.
Representação JSON |
---|
{
"attempts": string,
"wait": string,
"backoffMode": enum ( |
Campos | |
---|---|
attempts |
Obrigatório. Número total de novas tentativas. A nova tentativa será ignorada se o valor for 0. O valor mínimo é 1, e o valor máximo é 10. |
wait |
Opcional. Tempo de espera pela primeira nova tentativa. O padrão é 0, e o valor máximo é 14d. Duração em segundos com até nove dígitos fracionários, terminando em " |
backoffMode |
Opcional. O padrão de aumento do tempo de espera. O padrão é linear. O modo de espera será ignorado se |
Reverter
Reverte um Rollout
.
Representação JSON |
---|
{ "destinationPhase": string } |
Campos | |
---|---|
destinationPhase |
Opcional. O ID da fase inicial para o |
Métodos |
|
---|---|
|
Cria uma nova Automation em um determinado projeto e local. |
|
Exclui um único recurso de Automation. |
|
Recebe detalhes de uma única Automation. |
|
Lista as automações em um determinado projeto e local. |
|
Atualiza os parâmetros de um único recurso de Automation. |