REST Resource: projects.locations.deliveryPipelines.releases

Ressource: Release

Une ressource Release dans l'API Cloud Deploy

Un Release définit une instance de configuration Skaffold spécifique pouvant être déployée.

Représentation JSON
{
  "name": string,
  "uid": string,
  "description": string,
  "annotations": {
    string: string,
    ...
  },
  "labels": {
    string: string,
    ...
  },
  "abandoned": boolean,
  "createTime": string,
  "renderStartTime": string,
  "renderEndTime": string,
  "skaffoldConfigUri": string,
  "skaffoldConfigPath": string,
  "buildArtifacts": [
    {
      object (BuildArtifact)
    }
  ],
  "deliveryPipelineSnapshot": {
    object (DeliveryPipeline)
  },
  "targetSnapshots": [
    {
      object (Target)
    }
  ],
  "customTargetTypeSnapshots": [
    {
      object (CustomTargetType)
    }
  ],
  "renderState": enum (RenderState),
  "etag": string,
  "skaffoldVersion": string,
  "targetArtifacts": {
    string: {
      object (TargetArtifact)
    },
    ...
  },
  "targetRenders": {
    string: {
      object (TargetRender)
    },
    ...
  },
  "condition": {
    object (ReleaseCondition)
  },
  "deployParameters": {
    string: string,
    ...
  }
}
Champs
name

string

Facultatif. Nom du Release. Le format est le suivant : projects/{project}/locations/{location}/deliveryPipelines/{deliveryPipeline}/releases/{release}. Le composant release doit correspondre à [a-z]([a-z0-9-]{0,61}[a-z0-9])?

uid

string

Uniquement en sortie. Identifiant unique du Release.

description

string

Description de Release. Ne doit pas dépasser 255 caractères

annotations

map (key: string, value: string)

Annotations utilisateur Ces attributs ne peuvent être définis et utilisés que par l'utilisateur, et non par Cloud Deploy. Consultez https://google.aip.dev/128#annotations pour en savoir plus sur les limites de format et de taille.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

labels

map (key: string, value: string)

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 ne peuvent contenir que des lettres minuscules, des chiffres, des traits de soulignement et des tirets.
  • Tous les caractères doivent être encodés au format UTF-8. Les caractères internationaux sont acceptés.
  • Les clés doivent commencer par une lettre minuscule ou un caractère international.
  • Chaque ressource est limitée à un maximum de 64 libellés.

Les clés et les valeurs doivent également avoir une taille inférieure ou égale à 128 octets.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

abandoned

boolean

Uniquement en sortie. Indique s'il s'agit d'une version abandonnée.

createTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle le Release a été créé.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

renderStartTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle le rendu a commencé.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

renderEndTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle le rendu s'est terminé.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

skaffoldConfigUri

string

URI Cloud Storage de l'archive tar.gz contenant la configuration Skaffold.

skaffoldConfigPath

string

Chemin d'accès de la configuration Skaffold dans l'URI de la configuration.

buildArtifacts[]

object (BuildArtifact)

Liste des artefacts à transmettre à la commande Skaffold.

deliveryPipelineSnapshot

object (DeliveryPipeline)

Uniquement en sortie. Instantané du pipeline parent pris au moment de la création de la version.

targetSnapshots[]

object (Target)

Uniquement en sortie. Instantané des cibles pris au moment de la création de la version.

customTargetTypeSnapshots[]

object (CustomTargetType)

Uniquement en sortie. Instantané des types de cibles personnalisées référencés par les cibles pris au moment de la création de la version.

renderState

enum (RenderState)

Uniquement en sortie. État actuel de l'opération de rendu.

etag

string

Cette somme de contrôle est calculée par le serveur en fonction de la valeur d'autres champs. Elle peut être envoyée lors des requêtes de mise à jour et de suppression pour s'assurer que le client dispose d'une valeur à jour avant de poursuivre.

skaffoldVersion

string

Version Skaffold à utiliser lorsque vous utilisez cette version, telle que "1.20.0". Toutes les versions ne sont pas valides. Cloud Deploy est compatible avec un ensemble spécifique de versions.

Si cette règle n'est pas configurée, la dernière version de Skaffold compatible est utilisée.

targetArtifacts

map (key: string, value: object (TargetArtifact))

Uniquement en sortie. Mapper l'ID cible avec les artefacts cibles créés lors de l'opération de rendu.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

targetRenders

map (key: string, value: object (TargetRender))

Uniquement en sortie. Mappez l'ID de la cible avec les détails de l'opération de rendu pour cette cible.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

condition

object (ReleaseCondition)

Uniquement en sortie. Informations sur l'état de la Version.

deployParameters

map (key: string, value: string)

Facultatif. Paramètres de déploiement à utiliser pour toutes les cibles de cette version.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

BuildArtifact

Description d'une image à utiliser lors du rendu Skaffold.

Représentation JSON
{
  "image": string,
  "tag": string
}
Champs
image

string

Nom de l'image dans la configuration Skaffold.

tag

string

Tag d'image à utiliser. Il s'agit généralement du chemin d'accès complet à une image, par exemple "gcr.io/my-project/acceleratorbox:1.2.3" ou "gcr.io/my-project/occupationbox@sha256:abc123".

RenderState

États valides de l'opération de rendu.

Enums
RENDER_STATE_UNSPECIFIED L'état de rendu n'est pas spécifié.
SUCCEEDED Toutes les opérations de rendu ont bien été effectuées.
FAILED Toutes les opérations de rendu sont terminées, et une ou plusieurs d'entre elles ont échoué.
IN_PROGRESS L'affichage a commencé et n'est pas terminé.

TargetArtifact

Artefacts produits par une opération de rendu cible.

Représentation JSON
{
  "skaffoldConfigPath": string,
  "manifestPath": string,
  "phaseArtifacts": {
    string: {
      object (PhaseArtifact)
    },
    ...
  },

  // Union field uri can be only one of the following:
  "artifactUri": string
  // End of list of possible types for union field uri.
}
Champs
skaffoldConfigPath

string

Uniquement en sortie. Chemin d'accès au fichier de la configuration Skaffold résolue par rapport à l'URI.

manifestPath

string

Uniquement en sortie. Chemin d'accès du fichier manifeste affiché par rapport à l'URI.

phaseArtifacts

map (key: string, value: object (PhaseArtifact))

Uniquement en sortie. Mappez l'ID de la phase avec les artefacts de phase de Target.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Champ d'union uri.

uri ne peut être qu'un des éléments suivants :

artifactUri

string

Uniquement en sortie. URI d'un répertoire contenant les artefacts. Il contient la configuration de déploiement utilisée par Skaffold lors d'un déploiement, et tous les chemins d'accès sont relatifs à cet emplacement.

PhaseArtifact

Contient les chemins d'accès aux artefacts, relatifs à l'URI, pour une phase.

Représentation JSON
{
  "skaffoldConfigPath": string,
  "manifestPath": string,
  "jobManifestsPath": string
}
Champs
skaffoldConfigPath

string

Uniquement en sortie. Chemin d'accès au fichier de la configuration Skaffold résolue par rapport à l'URI.

manifestPath

string

Uniquement en sortie. Chemin d'accès du fichier manifeste affiché par rapport à l'URI.

jobManifestsPath

string

Uniquement en sortie. Chemin du fichier du répertoire des fichiers manifestes de tâche rendus par rapport à l'URI. Ce champ n'est défini que si c'est applicable.

TargetRender

Détails du rendu pour une seule cible.

Représentation JSON
{
  "renderingBuild": string,
  "renderingState": enum (TargetRenderState),
  "metadata": {
    object (RenderMetadata)
  },
  "failureCause": enum (FailureCause),
  "failureMessage": string
}
Champs
renderingBuild

string

Uniquement en sortie. Nom de ressource de l'objet Build Cloud Build utilisé pour afficher le fichier manifeste pour cette cible. Le format est le suivant : projects/{project}/locations/{location}/builds/{build}.

renderingState

enum (TargetRenderState)

Uniquement en sortie. État actuel de l'opération de rendu pour cette cible.

metadata

object (RenderMetadata)

Uniquement en sortie. Métadonnées associées au rendu Release pour cette cible.

failureCause

enum (FailureCause)

Uniquement en sortie. Motif de l'échec de l'affichage. Ce paramètre n'est toujours pas spécifié pendant le rendu.

failureMessage

string

Uniquement en sortie. Informations supplémentaires sur l'échec de l'affichage, si disponibles.

TargetRenderState

États valides de l'opération de rendu.

Enums
TARGET_RENDER_STATE_UNSPECIFIED L'état de l'opération de rendu n'est pas spécifié.
SUCCEEDED L'opération de rendu a bien été effectuée.
FAILED Échec de l'opération de rendu.
IN_PROGRESS L'opération de rendu est en cours.

RenderMetadata

RenderMetadata inclut les informations associées à un rendu Release.

Représentation JSON
{
  "cloudRun": {
    object (CloudRunRenderMetadata)
  },
  "custom": {
    object (CustomMetadata)
  }
}
Champs
cloudRun

object (CloudRunRenderMetadata)

Uniquement en sortie. Métadonnées associées au rendu pour Cloud Run.

custom

object (CustomMetadata)

Uniquement en sortie. Métadonnées personnalisées fournies par l'opération de rendu définie par l'utilisateur.

CloudRunRenderMetadata

CloudRunRenderMetadata contient les informations Cloud Run associées à un rendu Release.

Représentation JSON
{
  "service": string
}
Champs
service

string

Uniquement en sortie. Nom du service Cloud Run dans le fichier manifeste affiché. Format : projects/{project}/locations/{location}/services/{service}

FailureCause

Échecs connus de rendu.

Enums
FAILURE_CAUSE_UNSPECIFIED Aucun motif d'échec n'est spécifié.
CLOUD_BUILD_UNAVAILABLE Cloud Build n'est pas disponible, soit parce qu'il n'est pas activé, soit parce que Cloud Deploy ne dispose pas des autorisations nécessaires. Consultez Autorisation requise.
EXECUTION_FAILED L'opération de rendu ne s'est pas terminée correctement. Consultez les journaux Cloud Build.
CLOUD_BUILD_REQUEST_FAILED Cloud Build n'a pas pu traiter la requête de Cloud Deploy. Pour en savoir plus, consultez la section "failMessage".
VERIFICATION_CONFIG_NOT_FOUND L'opération de rendu n'a pas abouti, car le bloc de validation requis pour la vérification est introuvable dans la configuration Skaffold.
CUSTOM_ACTION_NOT_FOUND L'opération de rendu n'a pas abouti, car l'action personnalisée requise pour le prédéploiement ou le post-déploiement est introuvable dans la configuration Skaffold. Pour en savoir plus, consultez la section "failMessage".
DEPLOYMENT_STRATEGY_NOT_SUPPORTED La version a échoué lors de l'affichage, car sa configuration n'est pas compatible avec la stratégie de déploiement spécifiée.
RENDER_FEATURE_NOT_SUPPORTED Une fonctionnalité configurée pour l'opération de rendu n'est pas compatible.

ReleaseCondition

"ReleaseCondition" contient toutes les conditions pertinentes pour un élément "Release".

Représentation JSON
{
  "releaseReadyCondition": {
    object (ReleaseReadyCondition)
  },
  "skaffoldSupportedCondition": {
    object (SkaffoldSupportedCondition)
  }
}
Champs
releaseReadyCondition

object (ReleaseReadyCondition)

Informations sur l'état général des albums

skaffoldSupportedCondition

object (SkaffoldSupportedCondition)

Détails sur l'état de compatibilité de la version Skaffold de la version.

ReleaseReadyCondition

"ReleaseReadyCondition" contient des informations sur l'état de la release. Si une version n'est pas prête, vous ne pouvez pas créer de déploiement avec elle.

Représentation JSON
{
  "status": boolean
}
Champs
status

boolean

"True" si l'état de la release est valide. Sinon, l'état d'au moins une condition de ReleaseCondition n'est pas valide. Revoyez ces conditions et identifiez celles dont l'état est "false" afin d'identifier le problème avec la version.

SkaffoldSupportedCondition

"SkaffoldSupportedCondition" contient des informations sur la date à laquelle la version de Skaffold prendra fin.

Représentation JSON
{
  "status": boolean,
  "skaffoldSupportState": enum (SkaffoldSupportState),
  "maintenanceModeTime": string,
  "supportExpirationTime": string
}
Champs
status

boolean

"True" si la version de Skaffold utilisée par cette version est compatible.

skaffoldSupportState

enum (SkaffoldSupportState)

État de prise en charge Skaffold pour la version de Skaffold de cette version.

maintenanceModeTime

string (Timestamp format)

Heure à laquelle la version de Skaffold de cette version passe en mode maintenance.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

supportExpirationTime

string (Timestamp format)

Date à laquelle la version de Skaffold de cette version ne sera plus prise en charge.

Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

SkaffoldSupportState

État de prise en charge d'une version Skaffold spécifique.

Enums
SKAFFOLD_SUPPORT_STATE_UNSPECIFIED Valeur par défaut. Cette valeur n'est pas utilisée.
SKAFFOLD_SUPPORT_STATE_SUPPORTED Cette version de Skaffold est actuellement compatible.
SKAFFOLD_SUPPORT_STATE_MAINTENANCE_MODE Cette version de Skaffold est en mode maintenance.
SKAFFOLD_SUPPORT_STATE_UNSUPPORTED Cette version de Skaffold n'est plus compatible.

Méthodes

abandon

Abandonne une version dans le pipeline de livraison.

create

Crée une release dans un projet et un emplacement donnés.

get

Obtient les détails d'un single.

list

Répertorie les versions dans un projet et un emplacement donnés.