Intégration Bitbucket Pipelines
Copiez un prompt de configuration avec les étapes d'installation et la guide markdown complet pour ce plugin.
Intégrez les mises à jour en direct Capgo avec Bitbucket Pipelines pour déployer automatiquement les mises à jour de votre application chaque fois que vous poussez code des modifications. Ce guide couvre la configuration des workflows de build automatique, de test et de déploiement.
Prérequis
Section intitulée « Prérequis »Avant de configurer l'intégration Bitbucket Pipelines, assurez-vous d'avoir :
- Abitbucket compte avec un dépôt
- Un Capgo compte avec une application configurée
- Node.js et npm/yarn configurés dans votre projet
Configuration des pipelines Bitbucket
Section intitulée “Configuration des pipelines Bitbucket”Étape 1 : Configurez les variables de dépôt
Section intitulée “Étape 1 : Configurez les variables de dépôt”Configurez d'abord les variables nécessaires dans votre dépôt Bitbucket :
- Naviguez vers votre dépôt Bitbucket
- Allez à Paramètres du dépôt → Pipelines → Variables du dépôt
- Ajoutez les variables suivantes :
| Nom de la variable | Valeur | Sécurisé |
|---|---|---|
CAPGO_TOKEN | Votre jeton Capgo API | ✅ Oui |
Configuration de base qui déploie en production à chaque push sur la branche principale :
# bitbucket-pipelines.yml - Simple Configurationimage: node:22
pipelines: branches: main: - step: name: Build and Deploy to Production script: - npm ci - npm run test - npm run build - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel production artifacts: - dist/**Déploiements de branches de fonctionnalité
Section intitulée “Déploiements de branches de fonctionnalité”Déployez les branches de fonctionnalité dans les canaux de test pour la revue et les tests :
# Feature branch deploymentpipelines: branches: feature/*: - step: name: Deploy Feature Branch script: - npm ci - npm run test - npm run build - BRANCH_NAME=$(echo $BITBUCKET_BRANCH | sed 's/[^a-zA-Z0-9-]/-/g') - CHANNEL_NAME="feature-$BRANCH_NAME" - npm install -g @capgo/cli - npx @capgo/cli channel create $CHANNEL_NAME --apikey $CAPGO_TOKEN || true - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel $CHANNEL_NAME artifacts: - dist/**Utilisation de l'encryption
Si vous utilisez la fonctionnalité d'encryption de __CAPGO_KEEP_0__, vous devrez stocker votre clé privée de manière sécurisée dans votre environnement CI/CD. Capgo’s encryption featurel'installation des clés d'encryption
locale, ajoutez votre clé privée aux variables Bitbucket : Utilisation de l'encryption Si vous utilisez la fonctionnalité d'encryption de __CAPGO_KEEP_0__
# Display your private key content (copy this output)cat .capgo_key_v2Ajoutez ce contenu comme CAPGO_PRIVATE_KEY dans vos variables de votre dépôt Bitbucket (marquez comme sécurisé), puis utilisez-les dans les pipelines :
# Deploy with encryption- step: name: Deploy to Capgo with Encryption script: - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --key-data-v2 "$CAPGO_PRIVATE_KEY" --channel productionConfiguration de plusieurs canaux
Section intitulée « Configuration de plusieurs canaux »Pour obtenir des informations complètes sur la configuration et la gestion de plusieurs canaux de déploiement, consultez la documentation des canaux.
Configuration complète avec plusieurs environnements et déploiements de demande de tirage :
# bitbucket-pipelines.yml - Advanced Multi-Channel Configurationimage: node:22
definitions: steps: - step: &build-step name: Build Application script: - npm ci - npm run test - npm run build artifacts: - dist/**
- step: &deploy-step name: Deploy to Capgo script: - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel $CHANNEL_NAME
pipelines: branches: main: - step: <<: *build-step - step: <<: *deploy-step name: Deploy to Production deployment: production trigger: manual script: - export CHANNEL_NAME=production - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel $CHANNEL_NAME
develop: - step: <<: *build-step - step: <<: *deploy-step name: Deploy to Development deployment: development script: - export CHANNEL_NAME=development - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel $CHANNEL_NAME
pull-requests: '**': - step: <<: *build-step - step: name: Deploy PR to Test Channel script: - CHANNEL_NAME="pr-$BITBUCKET_PR_ID" - npm install -g @capgo/cli - npx @capgo/cli channel create $CHANNEL_NAME --apikey $CAPGO_TOKEN || true - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel $CHANNEL_NAME artifacts: - dist/**Stratégie de pipeline multi-environnement
Section intitulée « Stratégie de pipeline multi-environnement »Pour des scénarios de déploiement complexes avec des environnements de mise en scène et de production :
# Multi-environment pipelineimage: node:22
pipelines: branches: main: - step: name: Build script: - npm ci - npm run test - npm run build artifacts: - dist/** - step: name: Deploy to Staging deployment: staging script: - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel staging - step: name: Deploy to Production deployment: production trigger: manual script: - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel production
develop: - step: name: Build and Deploy to Development script: - npm ci - npm run test - npm run build - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel development artifacts: - dist/**Stratégie de déploiement basée sur la branche
Section intitulée « Stratégie de déploiement basée sur la branche »Déployez automatiquement différentes branches vers les canaux appropriés :
# Dynamic channel deploymentimage: node:22
definitions: scripts: - script: &determine-channel | if [ "$BITBUCKET_BRANCH" = "main" ]; then export CHANNEL_NAME="production" elif [ "$BITBUCKET_BRANCH" = "develop" ]; then export CHANNEL_NAME="staging" else export CHANNEL_NAME="development" fi echo "Deploying to channel: $CHANNEL_NAME"
pipelines: default: - step: name: Build and Deploy script: - npm ci - npm run test - npm run build - *determine-channel - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel $CHANNEL_NAME artifacts: - dist/**Exécution parallèle de pipeline
Section intitulée “Exécution parallèle de pipeline”Optimisez les temps de build avec des étapes parallèles :
# Parallel execution pipelineimage: node:22
pipelines: branches: main: - parallel: - step: name: Run Tests script: - npm ci - npm run test - step: name: Lint Code script: - npm ci - npm run lint - step: name: Build Application script: - npm ci - npm run build artifacts: - dist/** - step: name: Deploy to Production deployment: production script: - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel productionMeilleures Pratiques de Sécurité
Section intitulée “Meilleures Pratiques de Sécurité”Variables du Répertoire
Section intitulée “Variables du Répertoire”- Variables Chiffrées : Toujours marquez les jetons API comme chiffrés
- Variables d'environnement: Utilisez les variables spécifiques à la déploiement lorsque nécessaire
- Contrôle d'accès: Limitez l'accès au repository aux membres de l'équipe autorisés
- Rotation de jetons: Rotez régulièrement vos Capgo API jetons
Environnements de déploiement
Section intitulée “Environnements de déploiement”Configurez les environnements de déploiement pour une meilleure sécurité :
# Deployment with environment restrictionspipelines: branches: main: - step: name: Deploy to Production deployment: production trigger: manual script: - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel productionSurveillance et notifications
Section intitulée “Surveillance et notifications”Intégration Slack
Section intitulée “Intégration Slack”Ajoutez des notifications Slack à votre pipeline :
# Pipeline with Slack notificationspipelines: branches: main: - step: name: Build and Deploy script: - npm ci - npm run test - npm run build - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel production after-script: - | if [ $BITBUCKET_EXIT_CODE -eq 0 ]; then curl -X POST -H 'Content-type: application/json' \ --data '{"text":"✅ Capgo deployment successful for '$BITBUCKET_BRANCH'"}' \ $SLACK_WEBHOOK_URL else curl -X POST -H 'Content-type: application/json' \ --data '{"text":"❌ Capgo deployment failed for '$BITBUCKET_BRANCH'"}' \ $SLACK_WEBHOOK_URL fiNotifications par e-mail
Section intitulée “Notifications par e-mail”Configurez les notifications par e-mail à l'aide des fonctionnalités intégrées de Bitbucket ou en utilisant des services externes :
# Email notification step- step: name: Send Notification script: - | curl -X POST \ -H "Content-Type: application/json" \ -d '{ "to": "team@yourcompany.com", "subject": "Capgo Deployment Status", "body": "Deployment of '$BITBUCKET_BRANCH' completed with status: '$BITBUCKET_EXIT_CODE'" }' \ $EMAIL_SERVICE_URL condition: result: [successful, failed]Dépannage
Section intitulée “Dépannage”Problèmes courants
Section intitulée “Problèmes courants”La pipeline échoue avec “Capgo CLI non trouvé” :
# Debug CLI installation- step: name: Debug CLI script: - npm install -g @capgo/cli - which capgo || echo "Capgo CLI not found" - npx @capgo/cli --versionErreurs d'authentification :
# Verify token configuration- step: name: Debug Auth script: - | if [ -z "$CAPGO_TOKEN" ]; then echo "CAPGO_TOKEN is not set" exit 1 fi echo "Token length: ${#CAPGO_TOKEN}"Les artefacts de construction non trouvés :
# List build outputs- step: name: Debug Build script: - ls -la dist/ - find dist/ -type f -name "*.js" -o -name "*.html"Pipeline de débogage
Section intitulée “Pipeline de débogage”Ajouter des informations de débogage pour résoudre les problèmes :
# Debug pipelinepipelines: branches: main: - step: name: Debug Information script: - echo "Branch: $BITBUCKET_BRANCH" - echo "Commit: $BITBUCKET_COMMIT" - echo "Build: $BITBUCKET_BUILD_NUMBER" - env | grep BITBUCKET_ | sort - step: name: Build and Deploy script: - npm ci - npm run test - npm run build - npm install -g @capgo/cli - npx @capgo/cli bundle upload --apikey $CAPGO_TOKEN --channel productionValidation de la pipeline
Section intitulée “Validation de la pipeline”Activer la validation de pipeline pour détecter les erreurs de configuration :
# Enable pipeline validationoptions: docker: true size: 2x
pipelines: branches: main: - step: name: Validate Pipeline script: - echo "Pipeline validation successful" - step: name: Build and Deploy script: # ... deployment stepsÉtapes suivantes
Section intitulée « Étapes suivantes »- En savoir plus sur Canaux pour gérer différents environnements de déploiement
- Explorer Stockage personnalisé pour des scénarios de déploiement avancés
- Configurer Chiffrage For des déploiements sécurisés
- Configurer Mise à jour du comportement Pour personnaliser la façon dont les mises à jour sont appliquées
Avec l'intégration de Bitbucket Pipelines, vous pouvez automatiser vos Capgo déploiements et vous assurer d'une mise à jour cohérente et fiable pour vos utilisateurs de l'application mobile.
Continuez depuis l'intégration de Bitbucket Pipelines
Section intitulée “Continuez depuis l'intégration de Bitbucket Pipelines”Si vous utilisez L'intégration de Bitbucket Pipelines pour planifier l'automatisation CI/CD, connectez-la avec Capgo CI/CD pour le flux de travail du produit dans Capgo CI/CD, Capgo Builds natifs pour le flux de travail du produit dans Capgo Builds natifs, Capgo Intégrations pour le flux de travail du produit dans Capgo Intégrations, Intégration CI/CD pour le détail d'implémentation dans Intégration CI/CD, et GitHub Intégration d'actions pour le détail d'implémentation dans GitHub Intégration d'actions.