REST Resource: projects.locations.targets

Ressource: Target

Une ressource Target dans l'API Cloud Deploy

Un Target définit un emplacement où une configuration Skaffold peut être déployée.

Représentation JSON
{
  "name": string,
  "targetId": string,
  "uid": string,
  "description": string,
  "annotations": {
    string: string,
    ...
  },
  "labels": {
    string: string,
    ...
  },
  "requireApproval": boolean,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "executionConfigs": [
    {
      object (ExecutionConfig)
    }
  ],
  "deployParameters": {
    string: string,
    ...
  },

  // Union field deployment_target can be only one of the following:
  "gke": {
    object (GkeCluster)
  },
  "anthosCluster": {
    object (AnthosCluster)
  },
  "run": {
    object (CloudRunLocation)
  },
  "multiTarget": {
    object (MultiTarget)
  },
  "customTarget": {
    object (CustomTarget)
  }
  // End of list of possible types for union field deployment_target.
}
Champs
name

string

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

targetId

string

Uniquement en sortie. ID de ressource de Target.

uid

string

Uniquement en sortie. Identifiant unique du Target.

description

string

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

annotations

map (key: string, value: string)

Facultatif. 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)

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 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" }.

requireApproval

boolean

Facultatif. Indique si Target nécessite une approbation.

createTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle le Target 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".

updateTime

string (Timestamp format)

Uniquement en sortie. Heure de la dernière mise à jour de Target.

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".

etag

string

Facultatif. 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.

executionConfigs[]

object (ExecutionConfig)

Configurations pour toutes les exécutions associées à ce Target. Chaque valeur ExecutionEnvironmentUsage ne peut être utilisée que dans une seule configuration. Utiliser la même valeur plusieurs fois est une erreur. Lorsqu'une ou plusieurs configurations sont spécifiées, elles doivent inclure les valeurs ExecutionEnvironmentUsage RENDER et DEPLOY. Si aucune configuration n'est spécifiée, l'exécution utilise la valeur par défaut spécifiée dans DefaultPool.

deployParameters

map (key: string, value: string)

Facultatif. Paramètres de déploiement à utiliser pour cette cible.

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

Champ d'union deployment_target. Destination à laquelle la configuration Skaffold est appliquée lors d'un déploiement. deployment_target ne peut être qu'un des éléments suivants :
gke

object (GkeCluster)

Facultatif. Informations spécifiant un cluster GKE.

anthosCluster

object (AnthosCluster)

Facultatif. Informations sur la spécification d'un cluster Anthos.

run

object (CloudRunLocation)

Facultatif. Informations spécifiant une cible de déploiement Cloud Run.

multiTarget

object (MultiTarget)

Facultatif. Informations spécifiant un multiTarget.

customTarget

object (CustomTarget)

Facultatif. Informations spécifiant une cible personnalisée.

GkeCluster

Informations spécifiant un cluster GKE.

Représentation JSON
{
  "cluster": string,
  "internalIp": boolean
}
Champs
cluster

string

Facultatif. Informations spécifiant un cluster GKE. Format : projects/{projectId}/locations/{locationId}/clusters/{cluster_id}

internalIp

boolean

Facultatif. Si la valeur est "true", l'accès à cluster est effectué à l'aide de l'adresse IP privée du point de terminaison du plan de contrôle. Sinon, l'adresse IP par défaut du point de terminaison du plan de contrôle est utilisée. L'adresse IP par défaut est l'adresse IP privée pour les clusters avec des points de terminaison privés du plan de contrôle, et l'adresse IP publique dans les autres cas.

Ne spécifiez cette option que lorsque cluster est un cluster GKE privé.

AnthosCluster

Informations sur la spécification d'un cluster Anthos.

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

string

Facultatif. Appartenance au cluster enregistré sur GKE Hub auquel appliquer la configuration Skaffold. Format : projects/{project}/locations/{location}/memberships/{membership_name}

CloudRunLocation

Informations indiquant où déployer un service Cloud Run.

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

string

Obligatoire. Emplacement du service Cloud Run. Le format doit être projects/{project}/locations/{location}.

MultiTarget

Informations spécifiant un multiTarget.

Représentation JSON
{
  "targetIds": [
    string
  ]
}
Champs
targetIds[]

string

Obligatoire. Les targetId de ce multiTarget.

CustomTarget

Informations spécifiant une cible personnalisée.

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

string

Obligatoire. Nom du CustomTargetType. Le format doit être projects/{project}/locations/{location}/customTargetTypes/{customTargetType}.

ExecutionConfig

Configuration de l'environnement à utiliser lors de l'appel de Skaffold.

Représentation JSON
{
  "usages": [
    enum (ExecutionEnvironmentUsage)
  ],
  "workerPool": string,
  "serviceAccount": string,
  "artifactStorage": string,
  "executionTimeout": string,
  "verbose": boolean,

  // Union field execution_environment can be only one of the following:
  "defaultPool": {
    object (DefaultPool)
  },
  "privatePool": {
    object (PrivatePool)
  }
  // End of list of possible types for union field execution_environment.
}
Champs
usages[]

enum (ExecutionEnvironmentUsage)

Obligatoire. Utilisations dans lesquelles cette configuration doit être appliquée.

workerPool

string

Facultatif. Nom de ressource du WorkerPool, au format projects/{project}/locations/{location}/workerPools/{workerPool}. Si ce champ facultatif n'est pas spécifié, le pool Cloud Build par défaut est utilisé.

serviceAccount

string

Facultatif. Compte de service Google à utiliser pour l'exécution. S'il n'est pas spécifié, le compte de service d'exécution du projet (-compute@developer.gserviceaccount.com) est utilisé.

artifactStorage

string

Facultatif. Emplacement Cloud Storage dans lequel stocker les résultats d'exécution. Il peut s'agir d'un bucket ("gs://my-bucket") ou d'un chemin d'accès à l'intérieur d'un bucket ("gs://my-bucket/my-dir"). S'il n'est pas spécifié, un bucket par défaut situé dans la même région sera utilisé.

executionTimeout

string (Duration format)

Facultatif. Expiration du délai d'exécution pour une exécution Cloud Build. La durée doit être comprise entre 10 min et 24 h (au format secondes). Si aucune valeur n'est spécifiée, un délai avant expiration par défaut de 1 h est utilisé.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

verbose

boolean

Facultatif. Si la valeur est "true", une journalisation supplémentaire est activée pour les exécutions Cloud Build en cours d'exécution dans cet environnement d'exécution.

Champ d'union execution_environment. Détails de l'environnement execution_environment ne peut être qu'un des éléments suivants :
defaultPool

object (DefaultPool)

Facultatif. Utilisez le pool Cloud Build par défaut.

privatePool

object (PrivatePool)

Facultatif. Utilisez un pool Cloud Build privé.

ExecutionEnvironmentUsage

Utilisations possibles de cette configuration.

Enums
EXECUTION_ENVIRONMENT_USAGE_UNSPECIFIED Valeur par défaut. Cette valeur n'est pas utilisée.
RENDER À utiliser pour le rendu.
DEPLOY À utiliser pour le déploiement et les hooks de déploiement.
VERIFY À utiliser pour la validation du déploiement.
PREDEPLOY À utiliser pour l'exécution d'un job de prédéploiement.
POSTDEPLOY À utiliser pour l'exécution d'un job de post-déploiement.

DefaultPool

Exécution à l'aide du pool Cloud Build par défaut

Représentation JSON
{
  "serviceAccount": string,
  "artifactStorage": string
}
Champs
serviceAccount

string

Facultatif. Compte de service Google à utiliser pour l'exécution. S'il n'est pas spécifié, le compte de service d'exécution du projet (-compute@developer.gserviceaccount.com) sera utilisé.

artifactStorage

string

Facultatif. Emplacement Cloud Storage où les résultats de l'exécution doivent être stockés. Il peut s'agir d'un bucket ("gs://my-bucket") ou d'un chemin d'accès à l'intérieur d'un bucket ("gs://my-bucket/my-dir"). S'il n'est pas spécifié, un bucket par défaut situé dans la même région sera utilisé.

PrivatePool

Exécution à l'aide d'un pool Cloud Build privé

Représentation JSON
{
  "workerPool": string,
  "serviceAccount": string,
  "artifactStorage": string
}
Champs
workerPool

string

Obligatoire. Nom de ressource du pool de nœuds de calcul Cloud Build à utiliser. Il a le format suivant : projects/{project}/locations/{location}/workerPools/{pool}.

serviceAccount

string

Facultatif. Compte de service Google à utiliser pour l'exécution. S'il n'est pas spécifié, le compte de service d'exécution du projet (-compute@developer.gserviceaccount.com) sera utilisé.

artifactStorage

string

Facultatif. Emplacement Cloud Storage où les résultats de l'exécution doivent être stockés. Il peut s'agir d'un bucket ("gs://my-bucket") ou d'un chemin d'accès à l'intérieur d'un bucket ("gs://my-bucket/my-dir"). S'il n'est pas spécifié, un bucket par défaut situé dans la même région sera utilisé.

Méthodes

create

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

delete

Supprime une seule cible.

get

Récupère les détails d'une cible unique.

getIamPolicy

Récupère la stratégie de contrôle d'accès d'une ressource.

list

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

patch

Met à jour les paramètres d'une cible unique.

setIamPolicy

Définit la stratégie de contrôle d'accès de la ressource spécifiée.

testIamPermissions

Renvoie les autorisations qu'un appelant a sur la ressource spécifiée.