English | Deutsch

Bitbucket

Erfahren Sie, wie Sie automatische Preview Deployments aus Ihrem Bitbucket einrichten.

December 14, 2023 3 Min Lesezeit
Bitbucket
Bitbucket

Simon Pfeiffer

Head of Product @ Codesphere

Bitbucket ist ein Versionskontroll- und Hosting-Dienst für Git-Repositories. Er ermöglicht es Entwicklern, Code zu speichern und zu verwalten, an Projekten zusammenzuarbeiten und Funktionen wie Pull Requests und Code Review zu nutzen. Bitbucket bietet auch Funktionen für die kontinuierliche Integration und Bereitstellung (CI/CD) und ist mit verschiedenen Tools und Diensten integriert.

Arbeiten mit Bitbucket in Codesphere

Sie können sich mit Ihrem Bitbucket-Konto bei Codesphere anmelden, Repositories auschecken und automatisch Preview Deployments für jeden Pull Request erstellen.

Melden Sie sich entweder direkt mit Ihrem Bitbucket-Konto an oder verbinden Sie ein bestehendes Konto - beides dauert nur ein paar Klicks. Sobald Sie verbunden sind, können Sie Ihre Bitbucket-Repositories im Dialog "Create Workspace" durchsuchen. Das Klonen eines Repositorys, das Erstellen des Codes und die Live-Schaltung Ihrer Anwendung kann nur wenige Sekunden dauern (abhängig von der Größe Ihrer Anwendung). Selbst größere Anwendungen können in der Regel in einer Minute live geschaltet werden.

Bitbucket Integration in Codesphere "Create Workspace" Modal

Automatisieren von Preview Deployments für Bitbucket Pull Requests

Wenn Sie bereits mit dem Bitbucket CI vertraut sind, finden Sie hier den Pipeline-Code, den Sie anpassen können: https://bitbucket.org/codespherecloud/deploy/src/main/

Hier ist eine Schritt-für-Schritt-Anleitung, wie man Preview Deployments für jedes Bitbucket-Repository einrichtet

  1. Wenn Sie dies noch nicht getan haben, erstellen Sie einen Codesphere User mit einem Benutzernamen und Passwort (OAuth funktioniert nicht für die Verwendung von Bitbucket Pipelines) - wir empfehlen, dafür einen separaten Sysadmin User zu erstellen.
  2. Melden Sie sich bei Ihrem neuen User an und verbinden Sie ihn mit Bitbucket, indem Sie auf den Button "+ New Workspace" klicken und im Modal "Create Workspace" die Option "Connect Bitbucket" auswählen.
Codesphere Create Workspace Modal3.
  1. Stellen Sie sicher, dass das verbundene Bitbucket-Konto Zugriff auf das Repository hat, für das Sie die Preview Deployments einrichten.
  2. Vergewissern Sie sich, dass das Repository eine Codesphere CI-Pipeline mit Anweisungen zum Erstellen und Ausführen Ihrer Anwendung enthält, die Ihre Pipeline dann zum Erstellen Ihres Preview Deployments verwenden kann.
  3. Aktivieren Sie Pipelines für Ihr Bitbucket-Konto (2FA muss eingestellt sein).
  4. Erstellen Sie ein Bitbucket-Zugriffstoken mit Lese- und Schreibzugriff auf das Repo und die Pull Requests.
Bitbucket Zugangstoken erstellen
  1. Navigieren Sie zu Repository-Einstellungen/Pipelines/Repository-Variablen und fügen Sie die folgenden Geheimnisse zu den Umgebungsvariablen der Repositories hinzu - achten Sie darauf, dass das Kontrollkästchen gesichert aktiviert ist. Weitere Informationen darüber, welche Variablen gesetzt werden können, finden Sie weiter unten.
Bitbucket-Repository-Variablen
  1. Erstellen Sie eine bitbucket-pipelines.yml-Datei im Stammverzeichnis Ihres Repositorys und fügen Sie den folgenden Code hinzu.
image: atlassian/default-image:3

pipelines:
pull-requests:
    '**':
    - step:
        deployment: Test
        script:
        - pipe: docker://ghcr.io/codesphere-cloud/codesphere-monorepo/integrations/bitbucket-ci:latest
            variables:
            ACCESS_TOKEN: $ACCESS_TOKEN
            EMAIL: $CODESPHERE_EMAIL
            PASSWORD: $CODESPHERE_PASSWORD 
            TEAM: My Team
            PLAN: Micro
            VPN_CONFIG: vpnConfigName
            ENV: |
                testing=abc

Sie können Ihre Pipeline so konfigurieren, dass sie andere Auslöser als nur Pull Requests hat. Weitere Informationen zu den verfügbaren Pipeline-Einstellungen von Bitbucket finden Sie hier.

Verfügbare Variablen

Im Folgenden sind die Variablen aufgeführt, die Sie für Ihre Repository-Variablen verwenden können.

(*) = erforderliche Variable.

Variable Usage
ACCESS_TOKEN (*) The access token you created for the repository. It is recommended to use a secure repository variable.
EMAIL (*) Email of the Codesphere user
PASSWORD (*) Password of the codepshere user. It is recommended to use a secure repository/workspace variable.
TEAM (*) Name of the codesphere team.
PLAN Workspace plan of the workspace that will be created. Available options Micro, Boost, Pro. Default: Boost.
ON_DEMAND Decide whether this preview deployment should be deployed in always on or off when unused deployment mode. Available options true, false
ENV Set environment variables in your workspace. Define them in the same way you would, when using dotenv in a Node.js project. See https://www.npmjs.com/package/dotenv for details.
VPN_CONFIG If you have created a VPN configuration for this team you can reference it here by its config name. This will connect created preview deployments to this VPN connection.

Zusätzliche Informationen

Nachdem Sie diese Anleitung befolgt haben, wird Ihre Pipeline bei jedem Pull Request laufen und ein Preview Deployment erstellen, damit Sie Ihre Änderungen überprüfen können. Sie fügt Ihrem Pull Request einen neuen Kommentar hinzu, der die Domain für Ihr Preview Deployment enthält:

Bitbucket Preview Deployment Kommentar zum Pull Request

Über den Autor

Bitbucket

Simon Pfeiffer

Head of Product @ Codesphere

Simon ist verantwortlich für unser Produktmarketing und die Roadmap. Er ist ein ehemaliger Green-Tech-Gründer und IT-Berater bei KPMG. Er berichtet über Trends und Erkenntnisse aus dem Aufbau von Codesphere.

Weitere Beiträge

Deployment von Landscapes auf Codesphere

Deployment von Landscapes auf Codesphere

Lernen Sie, wie Sie mehrere Dienste, die unabhängig voneinander vertikal und horizontal skaliert werden können, innerhalb eines einzigen Workspace deployen und runen können. Geeignet für das Hosting ganzer Anwendungslandschaften.

Monitoring & Alerting

Monitoring & Alerting

Erfahren Sie, wie Sie auf das in Codesphere integrierte Ressourcen Monitoring zugreifen und die Betriebszeit Ihrer Anwendungen überprüfen können.

Pfadbasiertes Routing

Pfadbasiertes Routing

Erfahren Sie, wie Sie mehrere unabhängige Anwendungen mit einer einzigen Domäne verbinden, indem Sie verschiedene Pfade mit unterschiedlichen Workspaces verknüpfen