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.
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
- 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.
- 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.
- Stellen Sie sicher, dass das verbundene Bitbucket-Konto Zugriff auf das Repository hat, für das Sie die Preview Deployments einrichten.
- 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.
- Aktivieren Sie Pipelines für Ihr Bitbucket-Konto (2FA muss eingestellt sein).
- Erstellen Sie ein Bitbucket-Zugriffstoken mit Lese- und Schreibzugriff auf das Repo und die Pull Requests.
- 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.
- 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: