Este documento descreve as regras de automação, que são ações que podem ser realizadas no pipeline de entrega automaticamente. Por exemplo, é possível configurar pipeline de entrega para que a promoção para um destino específico aconteça automaticamente nas circunstâncias certas.
Você só pode usar regras de automação integradas ao Cloud Deploy. As regras de automação disponíveis estão listadas neste documento.
Regras de automação disponíveis
As seguintes regras de automação estão disponíveis no Cloud Deploy:
Regra | Descrição |
---|---|
promoteReleaseRule
|
Promove automaticamente uma versão no destino indicado após a conclusão
lançamento no destino anterior na progressão. |
advanceRolloutRule
|
Avanço automaticamente um lançamento do
fase para a próxima fase. |
Configurar regras de automação
A configuração de cada regra de automação depende da regra específica. Isso descreve as configurações que todas as regras têm em comum, além de como para configurar cada uma das regras disponíveis.
As seções a seguir descrevem a configuração específica de regras de automação individuais. Consulte Automatizar a implantação. para configurar a automação em si.
Configurar uma regra de automação promoteReleaseRule
A regra promoteReleaseRule
promove sua versão após um lançamento bem-sucedido no
um alvo. Por exemplo, se você tiver três metas, configure essa regra para que
quando a versão for implantada com sucesso no primeiro destino,
promovido automaticamente para o segundo destino.
Ao configurar uma automação promoteReleaseRule
, é possível especificar uma
segmentar para promover para (destinationTargetId
) ou @next
. Quando o lançamento
for concluído com sucesso no destino especificado na definição de Automation
, o
versão é promovida para o destino especificado em destinationTargetId
,
sujeito a um intervalo de tempo de wait
.
Também é possível promover uma versão para uma fase específica no destino pretendido usando
a propriedade destinationPhase
.
rules:
- promoteReleaseRule:
name: "[RULE_NAME]"
wait: [WAIT_TIME]
destinationTargetId: "[TO_TARGET]"
destinationPhase: "[TO_PHASE]"
Em que:
[RULE_NAME]
É qualquer nome que você queira dar a esta regra. Esse nome precisa ser exclusivo no recurso de automação.
[WAIT_TIME]
É a quantidade de tempo, em minutos, de espera após o lançamento estar pronto para promoção antes que ela seja promovida. Por exemplo,
1m
Om
é obrigatório.O valor padrão é
0
, ou seja, nenhum tempo de espera. O máximo é20160m
(ou 14 dias).[TO_TARGET]
É o
targetId
do destino para promover.Também pode ser
@next
, que promove o lançamento automaticamente para o próximo depois da especificada na propriedadeselector.targets
desta configuração de automação. Esse é o padrão se você omitir o valor dedestinationTargetId
.[TO_PHASE]
É o nome da fase para a qual você quer promover, por exemplo,
canary-25
oustable
. Essa propriedade é opcional. se você omiti-lo, o lançamento promovido para a primeira fase no destino.
Configurar uma regra de automação advanceRolloutRule
O advanceRolloutRule
avança o lançamento automaticamente após a conclusão.
conclusão de uma fase, para a próxima fase. Essa regra de automação é útil para
implantações canário. Por exemplo, se você tiver uma estratégia de implantação canário
configurada em um destino, com as fases 25%
, 50%
e stable
, é possível
configure uma regra de automação que avance a fase automaticamente para stable
.
após o término da fase 50%
.
Ao configurar uma automação advanceRolloutRule
, você identifica a fase para
avançar (o sourcePhase
).
rules:
- advanceRolloutRule:
id: "[RULE]"
sourcePhases: ["[START_PHASE]", "[START_PHASE]"...]
wait: [WAIT_TIME]
Em que:
[RULE]
É qualquer nome que você queira dar a esta regra. Esse nome precisa ser exclusivo no pipeline de entrega.
[WAIT_TIME]
É a quantidade de tempo, em minutos, de espera para avançar o lançamento após o e o lançamento está pronto. Por exemplo,
1m
Om
é obrigatório.O valor padrão é
0
, ou seja, nenhum tempo de espera. O máximo é20160m
(ou 14 dias).["[START_PHASE]", "[START_PHASE]"...]
São as fases em que o lançamento é avançado automaticamente. Isto é, quando qualquer uma das fases listadas for concluída com êxito, o lançamento será avançar automaticamente dessa fase para a próxima.
Os nomes das fases diferenciam maiúsculas de minúsculas. Além disso, os nomes dessas fases são opcionais. se você omitir
sourcePhases
, todas as fases do lançamento serão avançadas automaticamente.
A seguir
Confira o guia de início rápido: automatizar a criação de versões e o avanço do lançamento.
Saiba mais sobre automação de implantação no Cloud Deploy.