Tryam, hello!
Ina so in yi magana game da gwaninta na kafa GitLab da haɗin gwiwar AppCenter ta BitBucket.
Bukatar irin wannan haɗin kai ya taso lokacin da aka kafa ƙaddamar da gwajin UI ta atomatik don aikin giciye akan Xamarin. Cikakken koyawa a ƙasa da yanke!
* Zan yi wani labarin dabam game da sarrafa sarrafa gwajin UI a cikin yanayin dandamali idan jama'a suna sha'awar.
Na tono kayan guda ɗaya kawai
Manufar: Sanya ƙaddamar da gwajin UI ta atomatik akan AppCenter, ganin cewa ƙungiyarmu tana amfani da GitLab azaman tsarin sarrafa sigar.
matsala Ya juya cewa AppCenter ba ya haɗa kai tsaye tare da GitLab. An zaɓi Ketare ta BitBucket azaman ɗayan mafita.
Matakai
1. Ƙirƙirar ma'ajiyar fanko akan BitBucket
Ban ga bukatar yin bayanin wannan dalla-dalla ba :)
2. Saita GitLab
Muna buƙatar cewa lokacin turawa / haɗawa cikin ma'ajiyar, ana kuma loda canje-canje zuwa BitBucket. Don yin wannan, ƙara mai gudu (ko gyara fayil ɗin .gitlab-ci.yml da ke akwai).
Da farko muna ƙara umarni zuwa sashin kafin_scripts
- git config --global user.email "user@email"
- git config --global user.name "username"
Sannan ƙara umarni mai zuwa zuwa matakin da ake so:
- git push --mirror https://username:[email protected]/username/projectname.git
A cikin yanayina, wannan shine fayil ɗin da na samu:
before_script:
- git config --global user.email "user@email"
- git config --global user.name "username"
stages:
- mirror
mirror:
stage: mirror
script:
- git push --mirror https://****:*****@bitbucket.org/****/testapp.git
Mun ƙaddamar da ginin, duba cewa canje-canje / fayilolin mu suna kan BitBucket.
* kamar yadda aikin ya nuna, kafa maɓallan SSH zaɓi ne. Amma, kawai idan akwai, zan samar da algorithm don kafa haɗin kai ta hanyar SSH a ƙasa
Haɗa ta hanyar SSH
Da farko kuna buƙatar ƙirƙirar maɓallin SSH. An yi rubuce-rubuce da yawa game da wannan. Misali, zaku iya duba
Maɓallan da aka ƙirƙira sunyi kama da haka:
m Makullin sirri yana buƙatar ƙara azaman mai canzawa zuwa GitLab. Don yin wannan, je zuwa Saituna> CI/CD> Canje-canje na Muhalli. Ƙara DUK abubuwan da ke cikin fayil ɗin da kuka ajiye maɓallin sirri a ciki. Mu kira mai canjin SSH_PRIVATE_KEY.
* wannan fayil, sabanin fayil ɗin maɓalli na jama'a, ba zai sami tsawo ba
Mai girma, na gaba kuna buƙatar ƙara maɓallin jama'a zuwa BitBucket. Don yin wannan, buɗe ma'ajin kuma je zuwa Saituna> Maɓallan shiga.
Anan zamu danna Ƙara Maɓalli kuma saka abubuwan da ke cikin fayil ɗin tare da maɓallin jama'a (fayil tare da tsawo .pub).
Mataki na gaba shine amfani da maɓallan a cikin gitlab-mai gudu. Yi amfani da waɗannan umarni, amma maye gurbin taurari tare da cikakkun bayanai
image: timbru31/node-alpine-git:latest
stages:
- mirror
before_script:
- eval $(ssh-agent -s)
- echo "$SSH_PRIVATE_KEY" | tr -d 'r' | ssh-add - > /dev/null
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- ssh-keyscan bitbucket.org >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
- git config --global user.email "*****@***"
- git config --global user.name "****"
- ssh -T [email protected]
mirror:
stage: mirror
script:
- git push --mirror https://****:****@bitbucket.org/*****/*****.git
3. Saita AppCenter
Mun ƙirƙiri sabon aikace-aikace akan AppCenter.
Ƙayyade harshe/dandamali
Na gaba, je zuwa sashin Gina na sabon aikace-aikacen da aka ƙirƙira. A can za mu zaɓi BitBucket da ma'ajiyar da aka ƙirƙira a mataki na 1.
Mai girma, yanzu muna buƙatar saita ginin. Don yin wannan, nemo gunkin gear
A ka'ida, duk abin da akwai ilhama. Zaɓi aikin da daidaitawa. Idan ya cancanta, kunna ƙaddamar da gwaje-gwaje bayan ginin. Za su fara kai tsaye.
Ainihin, shi ke nan. Yana sauti mai sauƙi, amma, a zahiri, komai ba zai tafi daidai ba. Don haka, zan bayyana wasu kurakuran da na ci karo da su yayin aiki:
'ssh-keygen' ba a gane shi azaman umarni na ciki ko na waje ba.
Hakanan yana faruwa saboda hanyar zuwa ssh-keygen.exe ba a ƙara zuwa masu canjin yanayi ba.
Akwai zaɓuɓɓuka guda biyu: ƙara C: Fayilolin ShirinGitusrbin zuwa Canjin Muhalli (za a yi amfani da su bayan sake kunna na'ura), ko ƙaddamar da na'ura mai kwakwalwa daga wannan jagorar.
An haɗa AppCenter zuwa asusun BitBucket mara daidai?
Don magance matsalar, kuna buƙatar cire haɗin asusun ku na BitBucket daga AppCenter. Muna shiga cikin kuskuren asusun BitBucket kuma je zuwa bayanan mai amfani.
Na gaba, je zuwa Saituna> Gudanarwa Samun shiga> OAuth
Danna Revoke don cire haɗin asusun ku.
Bayan wannan, kuna buƙatar shiga tare da asusun BitBucket da ake buƙata.
* A matsayin maƙasudin ƙarshe, kuma share cache ɗin burauzar ku.
Yanzu bari mu je AppCenter. je zuwa sashin Gina, danna Cire haɗin asusun BitBucket
Lokacin da aka cire haɗin tsohon asusun, muna sake haɗa AppCenter. Yanzu zuwa asusun da ake so.
'eval' ba a gane shi azaman umarni na ciki ko na waje ba
Muna amfani da shi maimakon umarni
- eval $(ssh-agent -s)
Tawaga:
- ssh-agent
A wasu lokuta, dole ne ku ƙayyade cikakkiyar hanyar zuwa C: Fayilolin ShirinGitusrbinssh-agent.exe, ko ƙara wannan hanyar zuwa masu canjin tsarin akan injin inda mai gudu ke gudana.
AppCenter Build yana ƙoƙarin ƙaddamar da gini don aiki daga ma'ajin bitBucket da ya tsufa
A cikin yanayina, matsalar ta taso saboda ina aiki da asusu da yawa. Na yanke shawarar share cache.
source: www.habr.com