- Ressource: Automatisation
- Méthodes
Ressource: Automatisation
Une ressource Automation
dans l'API Cloud Deploy.
Un Automation
permet d'automatiser des actions manuelles pour un pipeline de livraison, ce qui inclut la promotion de publication parmi les cibles, la réparation du déploiement et l'avancement de la stratégie de déploiement. L'automatisation vise à réduire l'intervention manuelle dans le processus de livraison continue.
Représentation 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 ( |
Champs | |
---|---|
name |
Uniquement en sortie. Nom du |
uid |
Uniquement en sortie. Identifiant unique du |
description |
Facultatif. Description de |
createTime |
Uniquement en sortie. Heure à laquelle l'automatisation a été créée. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
updateTime |
Uniquement en sortie. Heure à laquelle l'automatisation a été mise à jour. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
annotations |
Facultatif. Annotations utilisateur Ces attributs ne peuvent être définis et utilisés que par l'utilisateur, et non par Cloud Deploy. Les annotations doivent respecter les contraintes suivantes:
Pour en savoir plus, consultez la page https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/#syntax-and-character-set. Objet contenant une liste de paires |
labels |
Facultatif. Les étiquettes sont des attributs qui peuvent être définis et utilisés à la fois par l'utilisateur et par Cloud Deploy. Les étiquettes doivent respecter les contraintes suivantes:
Les clés et les valeurs doivent par ailleurs contenir 63 caractères maximum. Objet contenant une liste de paires |
etag |
Facultatif. Etag faible de la ressource |
suspended |
Facultatif. Lorsque l'option "Suspendue" est suspendue, l'exécution est désactivée pour l'automatisation. |
serviceAccount |
Obligatoire. Adresse e-mail du compte de service IAM géré par l'utilisateur qui crée les ressources de version et de déploiement Cloud Deploy. |
selector |
Obligatoire. Ressources sélectionnées auxquelles l'automatisation sera appliquée. |
rules[] |
Obligatoire. Liste des règles d'automatisation associées à la ressource Automation. Doit avoir au moins une règle, avec un maximum de 250 règles par pipeline de livraison. Remarque: l'ordre des règles n'est pas le même que celui d'exécution. |
AutomationResourceSelector
"AutomationResourceSélecteur" contient les informations permettant de sélectionner les ressources auxquelles une automatisation va être appliquée.
Représentation JSON |
---|
{
"targets": [
{
object ( |
Champs | |
---|---|
targets[] |
Contient des attributs concernant une cible. |
TargetAttribute
Contient les critères de sélection des cibles.
Représentation JSON |
---|
{ "id": string, "labels": { string: string, ... } } |
Champs | |
---|---|
id |
ID de |
labels |
Libellés cibles. Objet contenant une liste de paires |
AutomationRule
AutomationRule
définit les activités d'automatisation.
Représentation JSON |
---|
{ // Union field |
Champs | |
---|---|
Champ d'union rule . Configuration de la règle d'automatisation. rule ne peut être qu'un des éléments suivants : |
|
promoteReleaseRule |
Facultatif. |
advanceRolloutRule |
Facultatif. |
repairRolloutRule |
Facultatif. Le |
PromoteReleaseRule
La règle PromoteRelease
promouvoira automatiquement une version de la cible actuelle vers une cible spécifiée.
Représentation JSON |
---|
{
"id": string,
"wait": string,
"destinationTargetId": string,
"condition": {
object ( |
Champs | |
---|---|
id |
Obligatoire. Identifiant de la règle. Cet ID doit être unique dans la ressource |
wait |
Facultatif. La durée pendant laquelle la version doit être mise en pause avant d'être promue sur la cible suivante. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
destinationTargetId |
Facultatif. ID de l'étape du pipeline dans laquelle ce
|
condition |
Uniquement en sortie. Informations sur l'état de la règle d'automatisation. |
destinationPhase |
Facultatif. Phase de début du déploiement créée par cette opération. La première phase est utilisée par défaut. |
AutomationRuleCondition
AutomationRuleCondition
contient des conditions pertinentes pour une règle Automation
.
Représentation JSON |
---|
{
"targetsPresentCondition": {
object ( |
Champs | |
---|---|
targetsPresentCondition |
Facultatif. Détails sur les cibles énumérées dans la règle. |
AdvanceRolloutRule
La règle d'automatisation rollouts.advance
fera automatiquement passer un déploiement réussi à la phase suivante.
Représentation JSON |
---|
{
"id": string,
"sourcePhases": [
string
],
"wait": string,
"condition": {
object ( |
Champs | |
---|---|
id |
Obligatoire. Identifiant de la règle. Cet ID doit être unique dans la ressource |
sourcePhases[] |
Facultatif. Ne se poursuit que lorsque le nom de la phase correspond à l'un des noms de la liste. Cette valeur doit être composée de lettres minuscules, de chiffres et de traits d'union. Elle doit commencer par une lettre et se terminer par une lettre ou un chiffre. Elle ne doit pas dépasser 63 caractères. En d'autres termes, il doit correspondre à l'expression régulière suivante: |
wait |
Facultatif. Délai d'attente après la fin d'un déploiement. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
condition |
Uniquement en sortie. Informations sur l'état de la règle d'automatisation. |
RepairRolloutRule
La règle d'automatisation RepairRolloutRule
réparera automatiquement une Rollout
ayant échoué.
Représentation JSON |
---|
{ "id": string, "sourcePhases": [ string ], "jobs": [ string ], "repairModes": [ { object ( |
Champs | |
---|---|
id |
Obligatoire. Identifiant de la règle. Cet ID doit être unique dans la ressource |
sourcePhases[] |
Facultatif. Phases au cours desquelles les tâches sont soumises à des actions de réparation automatique en cas d'échec. Ne se poursuit que lorsque le nom de la phase correspond à l'un des éléments de la liste ou pour toutes les phases s'il n'est pas spécifié. Cette valeur doit être composée de lettres minuscules, de chiffres et de traits d'union. Elle doit commencer par une lettre et se terminer par une lettre ou un chiffre. Elle ne doit pas dépasser 63 caractères. En d'autres termes, il doit correspondre à l'expression régulière suivante: |
jobs[] |
Facultatif. Jobs à réparer. Ne se poursuit qu'une fois que le nom de la tâche correspond à l'une des tâches de la liste, ou lorsqu'elle n'est pas spécifiée ou est vide. La phase qui inclut le job doit correspondre à l'ID de phase spécifié dans |
repairModes[] |
Obligatoire. Définit les types d'actions de réparation automatique pour les jobs ayant échoué. |
condition |
Uniquement en sortie. Informations sur l'état de la règle "Automatisation". |
RepairMode
Configuration de l'action de réparation.
Représentation JSON |
---|
{ // Union field |
Champs | |
---|---|
Champ d'union mode . Action de réparation à effectuer. mode ne peut être qu'un des éléments suivants : |
|
retry |
Facultatif. Relance une tâche ayant échoué. |
rollback |
Facultatif. Annule une |
Réessayer
Il relance la tâche ayant échoué.
Représentation JSON |
---|
{
"attempts": string,
"wait": string,
"backoffMode": enum ( |
Champs | |
---|---|
attempts |
Obligatoire. Nombre total de tentatives. La nouvelle tentative est ignorée si elle est définie sur 0. La valeur minimale est 1, et la valeur maximale est 10. |
wait |
Facultatif. Délai d'attente avant la première nouvelle tentative. La valeur par défaut est 0 et la valeur maximale est 14 j. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
backoffMode |
Facultatif. Schéma montrant comment le temps d'attente sera augmenté. La valeur par défaut est "linéaire". Le mode d'intervalle entre les tentatives est ignoré si |
Rollback
Annule une Rollout
.
Représentation JSON |
---|
{ "destinationPhase": string } |
Champs | |
---|---|
destinationPhase |
Facultatif. ID de la phase de début pour |
Méthodes |
|
---|---|
|
Crée une automatisation dans un projet et un emplacement donnés. |
|
Supprime une seule ressource d'automatisation. |
|
Récupère les détails d'une seule automatisation. |
|
Répertorie les automatisations pour un projet et un emplacement donnés. |
|
Met à jour les paramètres d'une seule ressource d'automatisation. |