Helyszíni Bitbucket-adattárak létrehozása
Azure DevOps Services
Megjegyzés:
A Bitbucket Cloud és az Azure Pipelines integrálásához lásd: Bitbucket Cloud.
A helyszíni Bitbucket-kiszolgálót vagy egy másik Git-kiszolgálót integrálhatja az Azure Pipelines szolgáltatással. Előfordulhat, hogy a helyszíni kiszolgáló ki van téve az internetnek, vagy nem.
Ha a helyszíni kiszolgáló elérhető az Azure Pipelines szolgáltatást futtató kiszolgálókról, akkor:
- beállíthatja a klasszikus buildelést és a CI-triggerek konfigurálását
Ha a helyszíni kiszolgáló nem érhető el az Azure Pipelines szolgáltatást futtató kiszolgálókról, akkor:
- beállíthatja a klasszikus buildelési folyamatokat, és manuális buildeket indíthat el
- nem konfigurálhatók a CI-triggerek
Megjegyzés:
A YAML-folyamatok nem működnek a helyszíni Bitbucket-adattárakkal.
Megjegyzés:
A helyszíni Bitbucket-adattárakban nem érhetők el PR-eseményindítók.
Ha a helyszíni kiszolgáló elérhető az üzemeltetett ügynököktől, akkor az üzemeltetett ügynökökkel manuális, ütemezett vagy CI-buildeket futtathat. Ellenkező esetben olyan saját üzemeltetésű ügynököket kell beállítania, amelyek hozzáférhetnek a helyszíni kiszolgálóhoz, és lekérhetik a kódot.
Elérhető az Azure Pipelinesból
Ha a helyszíni Bitbucket-kiszolgáló elérhető az Azure Pipelines szolgáltatásból, hozzon létre egy másik Git-szolgáltatáskapcsolatot , és ezzel hozzon létre egy folyamatot. Ellenőrizze, hogy megkísérli-e elérni ezt a Git-kiszolgálót az Azure Pipelinesból.
A CI-triggerek lekérdezéssel működnek, és nem webhookon keresztül. Más szóval az Azure Pipelines rendszeres időközönként ellenőrzi a Bitbucket-kiszolgálót, ha vannak kódfrissítések. Ha vannak ilyenek, az Azure Pipelines új futtatásba kezd.
Nem érhető el az Azure Pipelinesból
Ha a Bitbucket-kiszolgáló nem érhető el az Azure Pipelinesból, két lehetősége van:
Az informatikai részleggel együttműködve nyisson meg egy hálózati útvonalat az Azure Pipelines és a helyszíni Git-kiszolgáló között. Hozzáadhat például kivételeket a tűzfalszabályokhoz, hogy az Azure Pipelinesból érkező forgalom áthaladhasson. Az Azure DevOps IP-címeinek szakaszában megtekintheti, hogy mely IP-címeket kell engedélyeznie. Emellett nyilvános DNS-bejegyzéssel kell rendelkeznie a Bitbucket-kiszolgálóhoz, hogy az Azure Pipelines feloldhassa a kiszolgáló teljes tartománynevét egy IP-címmel.
Használhat másik Git-kapcsolatot is, de azt is jelezheti az Azure Pipelinesnak, hogy ne próbálja meg elérni ezt a Git-kiszolgálót az Azure Pipelinesból. A CI- és PR-triggerek nem érhetők el más Git-adattárakban. Csak manuális vagy ütemezett folyamatfuttatásokat indíthat el.
Elérhető a Microsoft által üzemeltetett ügynököktől
Egy másik döntés, amelyet esetleg meg kell hoznia, hogy a Microsoft által üzemeltetett ügynököket vagy a saját üzemeltetésű ügynököket használja-e a folyamatok futtatásához. Ez a választás gyakran attól függ, hogy a Microsoft által üzemeltetett ügynökök elérhetik-e a kiszolgálót. Annak ellenőrzéséhez, hogy tudnak-e, hozzon létre egy folyamatot a Microsoft által üzemeltetett ügynökök használatára, és mindenképpen adjon hozzá egy lépést a forráskód kiszolgálóról való kivételéhez. Ha ez sikeres, akkor továbbra is használhatja a Microsoft által üzemeltetett ügynököket.
Nem érhető el a Microsoft által üzemeltetett ügynököktől
Ha a fenti szakaszban említett egyszerű tesztfolyamat a hibával TF401019: The Git repository with name or identifier <your repo name> does not exist or you do not have permissions for the operation you are attempting
meghiúsul, akkor a Bitbucket-kiszolgáló nem érhető el a Microsoft által üzemeltetett ügynököktől. Ezt valószínűleg az okozza, hogy a tűzfal blokkolja a kiszolgálókról érkező forgalmat. Ebben az esetben két lehetősége van:
Az informatikai részleggel együttműködve nyisson meg egy hálózati útvonalat a Microsoft által üzemeltetett ügynökök és a Bitbucket-kiszolgáló között. Lásd a Microsoft által üzemeltetett ügynökök hálózatkezeléséről szóló szakaszt.
Váltás saját üzemeltetésű ügynökök vagy méretezési csoportok ügynökeinek használatára. Ezek az ügynökök beállíthatók a hálózaton belül, és így hozzáférhetnek a Bitbucket-kiszolgálóhoz. Ezek az ügynökök csak kimenő kapcsolatokat igényelnek az Azure Pipelineshoz. A bejövő kapcsolatokhoz nincs szükség tűzfal megnyitására. Győződjön meg arról, hogy a szolgáltatáskapcsolat létrehozásakor megadott kiszolgáló neve feloldható a saját üzemeltetésű ügynököktől.
Azure DevOps IP-címek
Ha más Git-kapcsolattal állít be egy klasszikus folyamatot, letiltja az Azure Pipelines szolgáltatás és a Bitbucket-kiszolgáló közötti kommunikációt, és saját üzemeltetésű ügynökökkel készít kódokat, csökkentett szintű felhasználói élményt kap:
- A folyamat létrehozásakor manuálisan kell beírnia az adattár nevét
- Nem használhat CI-eseményindítókat, mert az Azure Pipelines nem fogja tudni lekérdezni a kód módosításait
- Az ütemezett eseményindítók nem használhatók úgy, hogy csak akkor legyenek létrehozva, ha változások történnek
- A felhasználói felületen nem tekintheti meg a legújabb véglegesítéssel kapcsolatos információkat
Ha szeretné továbbfejleszteni ezt a felületet, fontos engedélyeznie az Azure Pipelines és a Bitbucket Server közötti kommunikációt.
Ha engedélyezni szeretné, hogy az Azure DevOpsból érkező forgalom elérje a Bitbucket-kiszolgálót, adja hozzá a bejövő kapcsolatokban megadott IP-címeket vagy szolgáltatáscímkéket a tűzfal engedélyezési listájához. ExpressRoute használata esetén az ExpressRoute IP-tartományait is adja meg a tűzfal engedélyezési listájához.
Engedélyezze az Azure Pipelinesnak, hogy megkísérlje elérni a Git-kiszolgálót az Egyéb Git szolgáltatáskapcsolatban.
Információs futtatások
Egy információs futtatás azt jelzi, hogy az Azure DevOps nem tudta lekérni egy YAML-folyamat forráskódját. A forráskód lekérése külső eseményekre, például leküldéses véglegesítésre válaszul történik. Belső eseményindítókra is reagálva történik, például annak ellenőrzése, hogy vannak-e kódmódosítások, és ütemezett futtatás indítása vagy sem. A forráskód lekérése több okból is meghiúsulhat, mivel a git-adattár szolgáltatója gyakran kéri a szabályozást. Az információs futtatás megléte nem feltétlenül jelenti azt, hogy az Azure DevOps futtatni fogja a folyamatot.
Az információs futtatás az alábbi képernyőképen láthatóhoz hasonlóan néz ki.
A következő attribútumok által futtatott információk felismerhetők:
- Az állapot:
Canceled
- Az időtartam:
< 1s
- A futtatás neve a következő szövegek egyikét tartalmazza:
Could not retrieve file content for {file_path} from repository {repo_name} hosted on {host} using commit {commit_sha}.
Could not retrieve content for object {commit_sha} from repository {repo_name} hosted on {host}.
Could not retrieve the tree object {tree_sha} from the repository {repo_name} hosted on {host}.
Could not find {file_path} from repository {repo_name} hosted on {host} using version {commit_sha}. One of the directories in the path contains too many files or subdirectories.
- A futtatás neve általában azt a BitBucket/GitHub-hibát tartalmazza, amely miatt a YAML-folyamat betöltése meghiúsult
- Nincsenek fázisok / feladatok / lépések
További információ az információs futtatásokról.
Korlátozások
Az Azure Pipelines legfeljebb 2000 ágat tölt be egy adattárból az Azure Devops Portal legördülő listáiba, például a manuális és ütemezett buildek alapértelmezett ágába, vagy amikor egy folyamat manuális futtatásakor kiválaszt egy ágat. Ha nem látja a kívánt ágat a listában, manuálisan írja be a kívánt ágnevet.
GYIK
A Bitbucket Server integrációjával kapcsolatos problémák a következő kategóriákba sorolhatók:
- Sikertelen eseményindítók: A folyamat nem aktiválódik, amikor leküldök egy frissítést az adattárba.
- Sikertelen kivétel: A folyamat aktiválva van, de a kivételi lépésben meghiúsul.
Sikertelen eseményindítók
Leküldtem egy módosítást a kiszolgálómra, de a folyamat nem aktiválódik.
Kövesse az alábbi lépéseket a sikertelen eseményindítók hibaelhárításához:
Elérhető a Bitbucket-kiszolgáló az Azure Pipelinesból? Az Azure Pipelines rendszeresen lekérdezi a Bitbucket-kiszolgálót a módosításokról. Ha a Bitbucket-kiszolgáló tűzfal mögött található, előfordulhat, hogy ez a forgalom nem éri el a kiszolgálót. További információkért tekintse meg az Azure DevOps IP-címeit , és ellenőrizze, hogy kivételeket adott-e az összes szükséges IP-címhez. Előfordulhat, hogy ezek az IP-címek megváltoztak, mivel eredetileg beállította a kivételszabályokat. Csak akkor indíthat manuális futtatásokat, ha külső Git-kapcsolatot használt, és ha a kiszolgáló nem érhető el az Azure Pipelinesból.
A folyamat szüneteltetve van vagy le van tiltva? Nyissa meg a folyamat szerkesztőjében, majd válassza a Gépház az ellenőrzéshez. Ha a folyamat szüneteltetve van vagy le van tiltva, az eseményindítók nem működnek.
Kizárta azokat az ágakat vagy útvonalakat, amelyekbe leküldte a módosításokat? A teszteléshez küldjön egy módosítást egy belefoglalt ágban lévő elérési útra. Vegye figyelembe, hogy az eseményindítók elérési útjai megkülönböztetik a kis- és nagybetűket. Az eseményindítók elérési útjainak megadásakor győződjön meg arról, hogy ugyanazt a esetet használja, mint a valódi mappáké.
Nem küldtem le frissítéseket a kódomra, de a folyamat még mindig aktiválódik.
- A Bitbucket folyamatos integrációs eseményindítója lekérdezéssel működik. Minden lekérdezési időköz után az Azure Pipelines megpróbál kapcsolatba lépni a Bitbucket-kiszolgálóval, hogy ellenőrizze, történt-e frissítés a kódban. Ha az Azure Pipelines nem tudja elérni a Bitbucket-kiszolgálót (valószínűleg hálózati probléma miatt), akkor mégis elindítunk egy új futtatási műveletet, feltételezve, hogy kódmódosítások történtek. Ha az Azure Pipelines nem tudja lekérni egy YAML-folyamat kódját, információs futtatás jön létre.
Sikertelen kivétel
Amikor manuálisan próbálok elindítani egy új futtatást, 4-8 perc késés van, mielőtt elindulna.
- A Bitbucket-kiszolgáló nem érhető el az Azure Pipelinesból. Győződjön meg arról, hogy nem választotta ki a Git-kiszolgáló elérésének lehetőségét az Azure Pipelinesból a Bitbucket szolgáltatáskapcsolatban. Ha ezt a lehetőséget választja, az Azure Pipelines megpróbál kapcsolatba lépni a kiszolgálóval, és mivel a kiszolgáló nem érhető el, az időkorlát túllépi az időkorlátot, és mindenképpen elindítja a futtatást. Ha törli a jelölőnégyzet jelölését, azzal felgyorsítja a manuális futtatásokat.
A kivételi lépés meghiúsul azzal a hibával, hogy a kiszolgáló nem oldható fel.
Microsoft által üzemeltetett ügynököket használ? Ha igen, előfordulhat, hogy ezek az ügynökök nem tudják elérni a Bitbucket-kiszolgálót. További információt a Microsoft által üzemeltetett ügynökök nem érhetnek el.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: