Cette page explique comment se connecter à un dépôt Bitbucket Data Center à Cloud Build.
Avant de commencer
-
Activer les API Cloud Build, Secret Manager, and Compute Engine.
- Suivez les instructions pour connecter un hôte de centre de données Bitbucket avant de connecter un dépôt.
Se connecter à un dépôt de centre de données Bitbucket
Console
Pour connecter un dépôt de centre de données Bitbucket à Cloud Build à l'aide de la console Google Cloud:
Ouvrez la page Dépôts de la console Google Cloud.
En haut de la page, sélectionnez l'onglet 1re génération.
Cliquez sur Connecter un dépôt.
Sélectionnez Bitbucket Data Center (Centre de données Bitbucket).
Le panneau Connecter un dépôt s'affiche. Procédez comme suit Pour connecter votre dépôt Bitbucket Data Center, procédez comme suit:
Région: sélectionnez la région dans laquelle se trouve votre connexion.
Sous Sélectionner un fournisseur de gestion de code source, sélectionnez Bitbucket Centre de données.
Connexion hôte: sélectionnez le nom de votre connexion hôte dans le champ dans le menu déroulant.
Cliquez sur Continuer.
Sous Sélectionner un dépôt, sélectionnez les dépôts du centre de données Bitbucket. que vous voulez connecter à Cloud Build.
Une fois que vous avez sélectionné votre compte et vos dépôts Bitbucket Data Center, lisez la clause de non-responsabilité et cochez la case correspondante pour l'indiquer que vous acceptez les conditions présentées.
Cliquez sur Connecter pour connecter vos dépôts.
Cliquez sur OK. Vous pouvez également cliquer sur Créer un déclencheur pour en créer un.
API
Pour connecter votre dépôt Bitbucket Data Center à Cloud Build : à l'aide de l'API, procédez comme suit:
Créez un fichier json contenant les éléments suivants :
{ "parent": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/BITBUCKET_DATA_CENTER_CONFIG_NAME", "requests": { "parent": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/BITBUCKET_DATA_CENTER_CONFIG_NAME", "bitbucketServerConnectedRepository": { "parent": "projects/PROJECT_NUMBER/locations/REGION/bitbucketServerConfigs/BITBUCKET_DATA_CENTER_CONFIG_NAME", "repo": { "projectKey":"PROJECT_KEY", "repoSlug": "REPO_SLUG", } } } }
Où :
- PROJECT_NUMBER est le numéro de projet de votre Google Cloud.
- REGION est la région à la configuration de votre centre de données Bitbucket.
- BITBUCKET_DATA_CENTER_CONFIG_NAME est le nom de votre configuration de centre de données Bitbucket.
- PROJECT_KEY est la clé de vos données Bitbucket.
du projet Center. Si vous souhaitez connecter un dépôt personnel, votre projet
doit contenir le symbole tilde (
~
) devant votre nom d'utilisateur. Exemple :~${USERNAME}
. L'URL complète d'un dépôt hôte est semblable àhttps://${HOST_URI}/projects/~${USER_NAME}/repos/${REPO_SLUG}
. - REPO_SLUG est le limace de votre dépôt de centre de données Bitbucket.
Exécutez la commande
curl
suivante dans votre terminal à partir du même répertoire dans le fichier JSON:
curl -X POST -H "Authorization: Bearer "$(gcloud auth print-access-token) -H "Content-Type: application/json; charset=utf-8" -H "x-goog-user-project: PROJECT_NUMBER" https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/bitbucketServerConfigs/BITBUCKET_DATA_CENTER_CONFIG_NAME/connectedRepositories:batchCreate -d @requests.json
Où :
- PROJECT_NUMBER est votre projet Google Cloud. numéro.
- PROJECT_ID est l'ID de votre projet Google Cloud.
- REGION est la région à la configuration de votre centre de données Bitbucket.
- BITBUCKET_DATA_CENTER_CONFIG_NAME est le nom de votre configuration de centre de données Bitbucket. Si la requête aboutit, le corps de la réponse contient une nouvelle instance de Opération :
Exécutez la commande
curl
suivante dans votre terminal:curl -X GET -H "Authorization: Bearer "$(gcloud auth print-access-token) -H "Content-Type: application/json; charset=utf-8" -H "x-goog-user-project: PROJECT_NUMBER" https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID
Où :
- PROJECT_NUMBER est votre projet Google Cloud. numéro.
- PROJECT_ID est votre ID Google Cloud.
- REGION est la région à la configuration de votre centre de données Bitbucket.
- OPERATION_ID est l'ID de vos données Bitbucket.
Opération de création d'une configuration Center. Vous trouverez l'ID d'opération
dans le champ
name
de votre réponse. Format du champname
dans votre réponse se présente comme suit:projects/project-id/locations/region/operations/operation-id
Vous devrez peut-être continuer à exécuter la commande d'API
GetOperation
jusqu'à ce que le la réponse contientdone: true
, ce qui indique que l'opération est terminé. Si le dépôt du centre de données Bitbucket est connecté vous pouvez voir le dépôt connectéresponse.bitbucketServerConnectedRepositories
. Sinon, consultez les Champerror
pour un rapport d'erreurs détaillé.
Lorsqu'un dépôt est connecté, Cloud Build configure un webhook dans le dépôt de votre instance Bitbucket. Le dépôt envoie des webhooks pour appeler les déclencheurs du centre de données Bitbucket correspondants vous apportez des modifications à votre dépôt. Un dépôt peut aussi être connecté plusieurs fois avec plusieurs connexions hôtes. Pour apprendre à gérer des webhooks, consultez Gérer les webhooks
Pour localiser le webhook, vous avez besoin de son ID. L'ID de webhook pour chaque
dépôt connecté se trouve dans BitbucketServerConfig
.
Saisissez la commande suivante pour récupérer l'ID du webhook:
gcloud alpha builds enterprise-config bitbucketserver describe CONFIG_NAME --region=REGION
Où :
- CONFIG_NAME est le nom du bucket Bitbucket Data. Configuration de Center
- REGION est la région de Bitbucket Data. Centrer la connexion hôte
Étape suivante
- Découvrez comment créer des dépôts à partir du centre de données Bitbucket.
- Découvrez comment créer des dépôts à partir d'un centre de données Bitbucket dans un réseau privé.
- Découvrez comment effectuer des déploiements bleu-vert sur Compute Engine.