Bitbucket-integrering
Du kan konfigurera Bitbucket-databasen så att den automatiskt skapar och distribuerar en miljö när du skickar kodändringar. Den här integreringen synkroniserar Bitbucket-databasen med ditt Adobe Commerce på molninfrastrukturskontot.
Förutsättningar
- Administratörsåtkomst till Adobe Commerce i molninfrastrukturprojektet
- Verktyget
magento-cloud
CLI i din lokala miljö - Ett Bitbucket-konto
- Administratörsåtkomst till Bitbucket-databasen
- En SSH-åtkomstnyckel för Bitbucket-databasen
Förbered databasen
Klona ditt Adobe Commerce i molninfrastrukturprojekt från en befintlig miljö och migrera projektgrenarna till en ny, tom Bitbucket-databas, med samma filialnamn intakta. Det är viktigt att behålla ett identiskt Git-träd, så att du inte förlorar några befintliga miljöer eller grenar i ditt Adobe Commerce i molninfrastrukturprojekt.
-
Logga in på ditt Adobe Commerce i molninfrastrukturprojekt från terminalen.
code language-bash magento-cloud login
-
Lista dina projekt och kopiera projekt-ID:t.
code language-bash magento-cloud project:list
-
Klona projektet till din lokala miljö.
code language-bash magento-cloud project:get <project-ID>
-
Lägg till din Bitbucket-databas som en fjärrdatabas.
code language-bash git remote add origin git@bitbucket.org:<user-name>/<repo-name>.git
Standardnamnet för fjärranslutningen kan vara
origin
ellermagento
. Omorigin
finns kan du välja ett annat namn eller ändra namn på eller ta bort den befintliga referensen. Se git-remote-dokumentation. -
Kontrollera att du har lagt till Bitbucket-fjärrkontrollen korrekt.
code language-bash git remote -v
Förväntat svar:
code language-none origin git@bitbucket.org:<user-name>/<repo-name>.git (fetch) origin git@bitbucket.org:<user-name>/<repo-name>.git (push)
-
Skicka projektfilerna till din nya Bitbucket-databas. Kom ihåg att behålla samma namn på alla grenar.
code language-bash git push -u origin master
Om du börjar med en ny Bitbucket-databas kanske du måste använda alternativet
-f
eftersom fjärrdatabasen inte matchar din lokala kopia. -
Kontrollera att Bitbucket-databasen innehåller alla dina projektfiler.
Skapa en OAuth-kund
Bitbucket-integreringen kräver en OAuth-konsument. Du behöver OAuth key
och secret
från den här konsumenten för att slutföra nästa avsnitt.
Så här skapar du en OAuth-konsument i Bitbucket:
-
Logga in på ditt Bitbucket-konto.
-
Klicka på Inställningar > Åtkomsthantering > OAuth.
-
Klicka på Lägg till konsument och konfigurera den enligt följande:
note warning WARNING En giltig återanrops-URL krävs inte, men du måste ange ett värde i det här fältet för att integreringen ska slutföras. -
Klicka på Spara.
-
Klicka på konsumenten Name för att visa din OAuth
key
ochsecret
. -
Kopiera din OAuth
key
ochsecret
för att konfigurera integreringen.
Konfigurera integreringen
-
Gå till Adobe Commerce i molninfrastrukturprojekt från terminalen.
-
Skapa en temporär fil med namnet
bitbucket.json
och lägg till följande, och ersätt variablerna i vinkelparenteserna med dina värden:code language-json { "type": "bitbucket", "repository": "<bitbucket-user-name/bitbucket-repo-name>", "app_credentials": { "key": "<oauth-consumer-key>", "secret": "<oauth-consumer-secret>" }, "prune_branches": true, "fetch_branches": true, "build_pull_requests": true, "resync_pull_requests": true }
note tip TIP Var noga med att använda namnet på Bitbucket-databasen och inte URL:en. Integreringen misslyckas om du använder en URL. -
Lägg till integreringen i ditt projekt med CLI-verktyget
magento-cloud
.note warning WARNING Följande kommando skriver över all -kod i ditt Adobe Commerce-molninfrastrukturprojekt med kod från din Bitbucket-databas. Detta inkluderar alla grenar, inklusive grenen production
. Den här åtgärden utförs omedelbart och kan inte ångras. Det är en god vana att klona alla dina grenar från Adobe Commerce i molninfrastrukturprojektet och överföra dem till Bitbucket-databasen innan du lägger till Bitbucket-integrationen.code language-bash magento-cloud project:curl -p '<project-ID>' /integrations -i -X POST -d "$(< bitbucket.json)"
Detta returnerar ett långt HTTP-svar med rubriker. En lyckad integrering returnerar statuskoden 200 eller 201. Statusen 400 eller högre anger att ett fel har inträffat.
-
Ta bort den temporära
bitbucket.json
-filen. -
Verifiera projektintegreringen.
code language-bash magento-cloud integrations -p <project-ID>
code language-none +----------+-----------+--------------------------------------------------------------------------------+ | ID | Type | Summary | +----------+-----------+--------------------------------------------------------------------------------+ | <int-id> | bitbucket | Repository: bitbucket_Account/magento-int | | | | Hook URL: | | | | https://magento-url.cloud/api/projects/<project-id>/integrations/<int-id>/hook | +----------+-----------+--------------------------------------------------------------------------------+
Anteckna krok-URL:en för att konfigurera en webkrok i BitBucket.
Lägg till en webkrok i BitBucket
Om du vill kunna kommunicera händelser, till exempel en push-funktion, med din Creative Cloud Git-server, måste du ha en webkrok för din BitBucket-databas. Metoden för att konfigurera en Bitbucket-integrering som är detaljerad på den här sidan skapar automatiskt en webkrok när den följs korrekt. Det är viktigt att verifiera webbkroken för att undvika att skapa flera integreringar.
-
Logga in på ditt Bitbucket-konto.
-
Klicka på Databaser och välj projektet.
-
Klicka på Databasinställningar > Arbetsflöde > Webhooks.
-
Kontrollera webkroken innan du fortsätter.
Om kroken är aktiv hoppar du över de återstående stegen och Testa integreringen. Haken ska ha ett namn som liknar "Adobe Commerce i molninfrastrukturen <project_id>" och ett krok-URL-format som liknar:
https://<zone>.magento.cloud/api/projects/<project_id>/integrations/<id>/hook
-
Klicka på Lägg till webkrok.
-
Redigera följande fält i vyn Lägg till ny webkrok:
- Titel: Adobe Commerce-integrering
- URL: Använd URL-adressen för krok från integreringslistan för
magento-cloud
- Utlösare: Standardvärdet är en grundläggande databasöverföring
-
Klicka på Spara.
Testa integreringen
När du har konfigurerat Bitbucket-integreringen kan du verifiera att integreringen fungerar med CLI:n för magento-cloud
:
magento-cloud integration:validate
Du kan också testa den genom att göra en enkel ändring i Bitbucket-databasen.
-
Skapa en testfil.
code language-bash touch test.md
-
Verkställ och skicka ändringen till Bitbucket-databasen.
code language-bash git add . && git commit -m "Testing Bitbucket integration" && git push
-
Logga in på Cloud Console och verifiera att ditt implementeringsmeddelande visas och att ditt projekt distribueras.
Skapa en molngren
Bitbucket-integreringen kan inte aktivera nya miljöer i ditt Adobe Commerce i molninfrastrukturprojekt. Om du skapar en miljö med Bitbucket måste du aktivera miljön manuellt. För att undvika det här extra steget är det bäst att skapa miljöer med hjälp av CLI-verktyget magento-cloud
eller Cloud Console.
Så här aktiverar du en gren som skapats med Bitbucket:
-
Använd CLI:n för
magento-cloud
för att föra grenen framåt.code language-bash magento-cloud environment:push from-bitbucket
code language-none Pushing from-bitbucket to the new environment from-bitbucket Activate from-bitbucket after pushing? [Y/n] y Parent environment [master]: integration --- (Validation and activation messages)
-
Kontrollera att miljön är aktiv.
code language-bash magento-cloud environment:list
code language-none Your environments are: +---------------------+----------------+--------+ | ID | Name | Status | +---------------------+----------------+--------+ | master | Master | Active | | integration | integration | Active | | from-bitbucket * | from-bitbucket | Active | +---------------------+----------------+--------+ * - Indicates the current environment
När du har skapat en miljö kan du överföra motsvarande gren till din Bitbucket-fjärrdatabas med vanliga Git-kommandon. Efterföljande ändringar av din gren i Bitbucket skapar och driftsätter automatiskt miljön.
Ta bort integreringen
Du kan ta bort Bitbucket-integreringen från ditt projekt utan att koden påverkas.
Så här tar du bort Bitbucket-integreringen:
-
Logga in på ditt Adobe Commerce i molninfrastrukturprojekt från terminalen.
-
Visa en lista över era integreringar. Du behöver Bitbucket-integrerings-ID för att kunna slutföra nästa steg.
code language-bash magento-cloud integration:list
-
Ta bort integreringen.
code language-bash magento-cloud integration:delete <int-ID>
Du kan även ta bort Bitbucket-integreringen genom att logga in på ditt Bitbucket-konto och återkalla OAuth-anslaget på kontosidan Inställningar.
Bitbucket-serverintegration
Om du vill använda Bitbucket-serverintegreringen behöver du följande:
- Bitbucket-åtkomsttoken - Generera en token som ger åtkomst till Project
read
och Repositoryadmin
- URL för Bitbucket-server - Lägg till bas-URL:en för Bitbucket-instansen
Även om du kan använda Cloud CLI för att gå igenom integreringsstegen för Bitbucket-servern ser det fullständiga kommandot ut ungefär så här:
magento-cloud integration:add --type=bitbucket_server --base-url=<bitbucket-url> --username=<username> --token=<bitbucket-access-token> --project=<project-ID>
Använd hjälpkommandot om du vill ha fler användningskrav och alternativ: magento-cloud integration:add --help