Tryam, moni!
Ndikufuna kulankhula za zomwe ndakumana nazo pakukhazikitsa kuphatikiza kwa GitLab ndi AppCenter kudzera pa BitBucket.
Kufunika kophatikizana kotereku kudayamba pakukhazikitsa zoyeserera za UI pa projekiti ya nsanja pa Xamarin. Mwatsatanetsatane phunziro pansipa odulidwa!
* Ndipanga nkhani ina yongoyesa kuyesa kwa UI pamapulatifomu ngati anthu ali ndi chidwi.
Ndinakumba chinthu chimodzi chokha
Cholinga: Konzani zoyeserera zokha za UI pa AppCenter, popeza gulu lathu limagwiritsa ntchito GitLab ngati njira yowongolera mtundu.
vuto Zinapezeka kuti AppCenter sichiphatikizana mwachindunji ndi GitLab. Bypass kudzera BitBucket idasankhidwa ngati imodzi mwamayankho.
Mapazi
1. Pangani malo opanda kanthu pa BitBucket
Sindikuwona kufunikira kofotokozera izi mwatsatanetsatane :)
2. Kukhazikitsa GitLab
Timafunikira kuti tikakankhira / kuphatikiza munkhokwe, zosintha zimatsitsidwanso ku BitBucket. Kuti muchite izi, onjezani wothamanga (kapena sinthani fayilo yomwe ilipo ya .gitlab-ci.yml).
Choyamba timawonjezera malamulo kugawo lakale_scripts
- git config --global user.email "user@email"
- git config --global user.name "username"
Kenako onjezani lamulo ili kugawo lomwe mukufuna:
- git push --mirror https://username:[email protected]/username/projectname.git
Kwa ine, iyi ndi fayilo yomwe ndili nayo:
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
Timayambitsa kumanga, fufuzani kuti zosintha / mafayilo athu ali pa BitBucket.
* monga momwe zasonyezera, kukhazikitsa makiyi a SSH ndikosankha. Koma, pokhapokha, ndipereka algorithm yokhazikitsa kulumikizana kudzera pa SSH pansipa
Kulumikizana kudzera pa SSH
Choyamba muyenera kupanga kiyi ya SSH. Nkhani zambiri zalembedwa zokhudza zimenezi. Mwachitsanzo, mukhoza kuyang'ana
Mafungulo opangidwa amawoneka motere:
anapitiriza Chinsinsi chachinsinsi iyenera kuwonjezeredwa ngati chosinthika pa GitLab. Kuti muchite izi, pitani ku Zikhazikiko> CI/CD> Zosintha Zachilengedwe. Onjezani zonse zomwe zili mufayilo momwe mudasungira kiyi yachinsinsi. Tiyeni tiyimbe zosinthika SSH_PRIVATE_KEY.
* fayiloyi, mosiyana ndi fayilo yachinsinsi ya anthu onse, sikhala ndi zowonjezera
Zabwino, kenako muyenera kuwonjezera kiyi yapagulu ku BitBucket. Kuti muchite izi, tsegulani posungira ndikupita ku Zikhazikiko> Mafungulo Ofikira.
Apa tikudina Add Key ndikuyika zomwe zili mufayilo ndi kiyi yapagulu (fayilo yokhala ndi extension .pub).
Chotsatira ndikugwiritsa ntchito makiyi mu gitlab-runner. Gwiritsani ntchito malamulo awa, koma m'malo mwa nyenyezi ndi zambiri zanu
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. Kukhazikitsa AppCenter
Timapanga pulogalamu yatsopano pa AppCenter.
Tchulani chinenero/nsanja
Kenako, pitani kugawo la Build la pulogalamu yomwe yangopangidwa kumene. Kumeneko timasankha BitBucket ndi malo omwe adapangidwa mu sitepe 1.
Chabwino, tsopano tiyenera kukonza kumanga. Kuti muchite izi, pezani chizindikiro cha gear
M'malo mwake, chilichonse chomwe chilipo ndi mwachilengedwe. Sankhani polojekiti ndi kasinthidwe. Ngati ndi kotheka, yambitsani zoyeserera pambuyo pomanga. Iwo adzayamba basi.
Kwenikweni, ndizo zonse. Zikumveka zosavuta, koma, mwachibadwa, zonse sizingayende bwino. Chifukwa chake, ndifotokoza zolakwika zina zomwe ndidakumana nazo ndikugwira ntchito:
'ssh-keygen' sichidziwika ngati lamulo lamkati kapena lakunja.
Zimachitikanso chifukwa njira yopita ku ssh-keygen.exe sikuwonjezeredwa pazosintha zachilengedwe.
Pali njira ziwiri: onjezani C: Program FilesGitusrbin ku Zosintha Zachilengedwe (zidzagwiritsidwa ntchito mukayambiranso makinawo), kapena yambitsani cholumikizira kuchokera mu bukhuli.
AppCenter yolumikizidwa ku akaunti yolakwika ya BitBucket?
Kuti muthane ndi vutoli, muyenera kuchotsa akaunti yanu ya BitBucket ku AppCenter. Timalowa mu akaunti yolakwika ya BitBucket ndikupita ku mbiri ya ogwiritsa ntchito.
Kenako, pitani ku Zikhazikiko> Access Management> OAuth
Dinani Chotsani kuti musalumikize akaunti yanu.
Pambuyo pake, muyenera kulowa ndi akaunti yofunikira ya BitBucket.
* Monga chomaliza, chotsaninso cache ya msakatuli wanu.
Tsopano tiyeni tipite ku AppCenter. kupita Kumanga gawo, dinani Chotsani akaunti ya BitBucket
Akaunti yakale ikalumikizidwa, timalumikizanso AppCenter. Tsopano ku akaunti yomwe mukufuna.
'eval' sichidziwika ngati lamulo lamkati kapena lakunja
Timagwiritsa ntchito m'malo mwa lamulo
- eval $(ssh-agent -s)
Gulu:
- ssh-agent
Nthawi zina, muyenera kufotokoza njira yonse yopita ku C: Program FilesGitusrbinssh-agent.exe, kapena kuwonjezera njira iyi kumitundu yosiyanasiyana pamakina omwe wothamanga akuyenda.
AppCenter Build ikuyesera kukhazikitsa ntchito yomanga kuchokera kumalo osungira akale a bitBucket
Kwa ine, vuto lidayamba chifukwa ndimagwira ntchito ndi maakaunti angapo. Ndinaganiza zochotsa cache.
Source: www.habr.com