Kuphatikiza kwa AppCenter ndi GitLab

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 nkhani. Choncho, nkhani yanga ingathandize munthu.

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 apa.
Mafungulo opangidwa amawoneka motere:
Kuphatikiza kwa AppCenter ndi GitLab

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
Kuphatikiza kwa AppCenter ndi GitLab

Zabwino, kenako muyenera kuwonjezera kiyi yapagulu ku BitBucket. Kuti muchite izi, tsegulani posungira ndikupita ku Zikhazikiko> Mafungulo Ofikira.

Kuphatikiza kwa AppCenter ndi GitLab

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.

Kuphatikiza kwa AppCenter ndi GitLab

Tchulani chinenero/nsanja

Kuphatikiza kwa AppCenter ndi GitLab

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

Kuphatikiza kwa AppCenter ndi GitLab

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.

Kuphatikiza kwa AppCenter ndi GitLab

Kenako, pitani ku Zikhazikiko> Access Management> OAuth

Kuphatikiza kwa AppCenter ndi GitLab

Dinani Chotsani kuti musalumikize akaunti yanu.

Kuphatikiza kwa AppCenter ndi GitLab

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

Kuphatikiza kwa AppCenter ndi GitLab

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

Kuwonjezera ndemanga