Tryam, sveiks!
Es vÄlÄtos runÄt par savu pieredzi, iestatot GitLab un AppCenter integrÄciju, izmantojot BitBucket.
NepiecieÅ”amÄ«ba pÄc Å”Ädas integrÄcijas radÄs, iestatot automÄtisku lietotÄja interfeisa testu palaiÅ”anu starpplatformu projektam Xamarin. DetalizÄta apmÄcÄ«ba zem griezuma!
* Ja sabiedrÄ«ba ir ieinteresÄta, es izveidoÅ”u atseviŔķu rakstu par lietotÄja interfeisa testÄÅ”anas automatizÄciju starpplatformu apstÄkļos.
Es izraku tikai vienu tÄdu materiÄlu
Uzdevums: iestatiet automÄtisku lietotÄja interfeisa testu palaiÅ”anu pakalpojumÄ AppCenter, Åemot vÄrÄ, ka mÅ«su komanda izmanto GitLab kÄ versiju kontroles sistÄmu.
problÄma IzrÄdÄ«jÄs, ka AppCenter tieÅ”i neintegrÄjas ar GitLab. KÄ viens no risinÄjumiem tika izvÄlÄts apiet, izmantojot BitBucket.
Soļi
1. BitBucket izveidojiet tukŔu repozitoriju
Neredzu vajadzÄ«bu to sÄ«kÄk aprakstÄ«t :)
2. GitLab iestatīŔana
Mums ir nepiecieÅ”ams, lai, nospiežot / apvienojot repozitorijÄ, izmaiÅas tiktu augÅ”upielÄdÄtas arÄ« BitBucket. Lai to izdarÄ«tu, pievienojiet palaidÄju (vai rediÄ£Äjiet esoÅ”o .gitlab-ci.yml failu).
Vispirms sadaļai before_scripts pievienojam komandas
- git config --global user.email "user@email"
- git config --global user.name "username"
PÄc tam pievienojiet Å”o komandu vajadzÄ«gajam posmam:
- git push --mirror https://username:[email protected]/username/projectname.git
ManÄ gadÄ«jumÄ Å”is ir iegÅ«tais fails:
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
MÄs palaižam bÅ«vÄjumu, pÄrbaudÄm, vai mÅ«su izmaiÅas/faili ir BitBucket.
* KÄ liecina prakse, SSH atslÄgu iestatÄ«Å”ana nav obligÄta. Bet katram gadÄ«jumam zemÄk sniegÅ”u algoritmu savienojuma iestatÄ«Å”anai, izmantojot SSH
Savienojums caur SSH
Vispirms jums ir jÄÄ£enerÄ SSH atslÄga. Par to ir rakstÄ«ti daudzi raksti. PiemÄram, jÅ«s varat skatÄ«ties
Ä¢enerÄtÄs atslÄgas izskatÄs apmÄram Å”Ädi:
TÄlÄk SlepenÄ atslÄga jÄpievieno kÄ mainÄ«gais GitLab. Lai to izdarÄ«tu, dodieties uz IestatÄ«jumi > CI/CD > Vides mainÄ«gie. Pievienojiet VISU tÄ faila saturu, kurÄ saglabÄjÄt slepeno atslÄgu. Izsauksim mainÄ«go SSH_PRIVATE_KEY.
* Å”im failam, atŔķirÄ«bÄ no publiskÄs atslÄgas faila, nebÅ«s paplaÅ”inÄjuma
Lieliski, pÄc tam BitBucket jÄpievieno publiskÄ atslÄga. Lai to izdarÄ«tu, atveriet repozitoriju un dodieties uz IestatÄ«jumi > Piekļuves atslÄgas.
Å eit mÄs noklikŔķiniet uz Pievienot atslÄgu un ievietojam faila saturu ar publisko atslÄgu (fails ar paplaÅ”inÄjumu .pub).
NÄkamais solis ir izmantot atslÄgas programmÄ gitlab-runner. Izmantojiet Ŕīs komandas, bet aizstÄjiet zvaigznÄ«tes ar savu informÄciju
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. AppCenter iestatīŔana
MÄs izveidojam jaunu lietojumprogrammu AppCenter.
NorÄdiet valodu/platformu
PÄc tam atveriet jaunizveidotÄs lietojumprogrammas sadaļu Build. Tur mÄs atlasÄm BitBucket un 1. darbÄ«bÄ izveidoto repozitoriju.
Lieliski, tagad mums ir jÄkonfigurÄ bÅ«vÄjums. Lai to izdarÄ«tu, atrodiet zobrata ikonu
PrincipÄ tur viss ir intuitÄ«vi. IzvÄlieties projektu un konfigurÄciju. Ja nepiecieÅ”ams, iespÄjojiet testu palaiÅ”anu pÄc bÅ«vÄÅ”anas. Tie sÄksies automÄtiski.
BÅ«tÄ«bÄ tas arÄ« viss. IzklausÄs vienkÄrÅ”i, bet, protams, viss nenotiks gludi. TÄpÄc es aprakstÄ«Å”u dažas kļūdas, ar kurÄm saskÄros darba laikÄ:
'ssh-keygen' netiek atpazÄ«ta kÄ iekÅ”Äja vai ÄrÄja komanda.
Tas notiek arÄ« tÄpÄc, ka ceļŔ uz ssh-keygen.exe nav pievienots vides mainÄ«gajiem.
Ir divas iespÄjas: pievienot vides mainÄ«gajiem C:Program FilesGitusrbin (tiks lietots pÄc maŔīnas pÄrstartÄÅ”anas) vai palaist konsoli no Ŕī direktorija.
AppCenter ir izveidots savienojums ar nepareizo BitBucket kontu?
Lai atrisinÄtu problÄmu, jums ir jÄatvieno BitBucket konts no AppCenter. MÄs piesakÄmies nepareizajÄ BitBucket kontÄ un dodamies uz lietotÄja profilu.
PÄc tam dodieties uz IestatÄ«jumi > Piekļuves pÄrvaldÄ«ba > OAuth
NoklikŔķiniet uz Atsaukt, lai atsaistītu savu kontu.
PÄc tam jums jÄpiesakÄs ar nepiecieÅ”amo BitBucket kontu.
* KÄ pÄdÄjo lÄ«dzekli iztÄ«riet arÄ« pÄrlÅ«kprogrammas keÅ”atmiÅu.
Tagad ejam uz AppCenter. dodieties uz sadaļu Build, noklikŔķiniet uz Atvienot BitBucket kontu
Kad vecais konts ir atsaistÄ«ts, mÄs atkal saistÄm AppCenter. Tagad dodieties uz vÄlamo kontu.
āevalā netiek atpazÄ«ts kÄ iekÅ”Äja vai ÄrÄja komanda
MÄs to izmantojam komandas vietÄ
- eval $(ssh-agent -s)
Komanda:
- ssh-agent
Dažos gadÄ«jumos jums bÅ«s jÄnorÄda pilns ceļŔ uz C:Program FilesGitusrbinssh-agent.exe vai jÄpievieno Å”is ceļŔ sistÄmas mainÄ«gajiem datorÄ, kurÄ darbojas palaidÄjs.
AppCenter Build mÄÄ£ina palaist projekta bÅ«vÄjumu no novecojuÅ”as bitBucket krÄtuves
ManÄ gadÄ«jumÄ problÄma radÄs tÄpÄc, ka strÄdÄju ar vairÄkiem kontiem. Es nolÄmu notÄ«rÄ«t keÅ”atmiÅu.
Avots: www.habr.com