Tryam, kaixo!
BitBucket bidez GitLab eta AppCenter integrazioa konfiguratzean dudan esperientziaz hitz egin nahiko nuke.
Integrazio horren beharra sortu zen Xamarin-en plataforma anitzeko proiektu baterako UI probak automatikoki abiaraztean konfiguratzean. Tutorial zehatza ebakiaren azpian!
* Banako artikulu bat egingo dut plataforma anitzeko baldintzetan UI probak automatizatzeari buruz, publikoa interesa bada.
Horrelako material bakarra atera nuen
Task: Konfiguratu UI probak abiarazteko automatikoa AppCenter-en, gure taldeak GitLab erabiltzen duela bertsio-kontrol sistema gisa.
arazoa Agertu zen AppCenter ez dela GitLab-ekin zuzenean integratzen. BitBucket bidezko saihesbidea irtenbideetako bat aukeratu zen.
urrats
1. Sortu biltegi huts bat BitBucket-en
Ez dut hau zehatzago deskribatzeko beharrik ikusten :)
2. GitLab konfiguratzea
Biltegira bultzatzean/bateratzean, aldaketak BitBucket-era ere igotzen dira. Horretarako, gehitu korrikalari bat (edo editatu lehendik dagoen .gitlab-ci.yml fitxategia).
Lehenik eta behin komandoak gehitzen ditugu before_scripts atalean
- git config --global user.email "user@email"
- git config --global user.name "username"
Ondoren, gehitu komando hau nahi duzun fasera:
- git push --mirror https://username:[email protected]/username/projectname.git
Nire kasuan, hau da lortu dudan fitxategia:
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
Eraikuntza abiarazten dugu, egiaztatu gure aldaketak/fitxategiak BitBucket-en daudela.
* Praktikak erakutsi duen bezala, SSH gakoak konfiguratzea aukerakoa da. Baina, badaezpada, SSH bidez konexio bat konfiguratzeko algoritmo bat emango dut behean
SSH bidez konektatzen
Lehenik eta behin SSH gako bat sortu behar duzu. Artikulu asko idatzi dira honi buruz. Adibidez, begiratu dezakezu
Sortutako gakoek honelako itxura dute:
Gehiago Gako sekretua GitLab-en aldagai gisa gehitu behar da. Horretarako, joan Ezarpenak > CI/CD > Inguruko aldagaiak atalera. Gehitu gako sekretua gorde duzun fitxategiaren eduki GUZTIA. Dei diezaiogun SSH_PRIVATE_KEY aldagaiari.
* fitxategi honek, gako publikoaren fitxategiak ez bezala, ez du luzapenik izango
Bikaina, hurrengo gako publikoa gehitu behar duzu BitBucket-en. Horretarako, ireki biltegia eta joan Ezarpenak > Sarbide-gakoak atalera.
Hemen Gehitu gakoa sakatu eta fitxategiaren edukia gako publikoarekin txertatuko dugu (.pub luzapena duen fitxategia).
Hurrengo urratsa giltzak erabiltzea da gitlab-runner-en. Erabili komando hauek, baina ordezkatu izartxoak zure xehetasunekin
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 konfiguratzea
Aplikazio berri bat sortzen dugu AppCenter-en.
Zehaztu hizkuntza/plataforma
Ondoren, joan sortu berri den aplikazioaren Eraiki atalera. Bertan BitBucket eta 1. urratsean sortutako biltegia hautatuko ditugu.
Bikaina, orain konfigurazioa konfiguratu behar dugu. Horretarako, bilatu engranajearen ikonoa
Printzipioz, han dena intuitiboa da. Hautatu proiektu bat eta konfigurazioa. Beharrezkoa bada, gaitu probak abiarazteko eraikitze ondoren. Automatikoki hasiko dira.
Funtsean, hori da dena. Sinplea dirudi, baina, jakina, dena ez da ondo joango. Hori dela eta, lanean ari nintzenean aurkitu ditudan akats batzuk deskribatuko ditut:
'ssh-keygen' ez da barneko edo kanpoko komando gisa ezagutzen.
Gainera, ssh-keygen.exe-rako bidea ingurune-aldagaietan gehitzen ez delako gertatzen da.
Bi aukera daude: gehitu C:Program FilesGitusrbin Inguruneko aldagaietara (makina berrabiarazi ondoren aplikatuko da), edo abiarazi kontsola direktorio honetatik.
AppCenter BitBucket kontu okerrera konektatuta?
Arazoa konpontzeko, zure BitBucket kontua AppCenter-etik deslotu behar duzu. BitBucket-eko kontu okerrean saioa hasi eta erabiltzailearen profilera joaten gara.
Ondoren, joan Ezarpenak > Sarbideen kudeaketa > OAuth atalera
Sakatu Errebokatu kontua lotura kentzeko.
Horren ondoren, behar den BitBucket kontuarekin saioa hasi behar duzu.
* Azken aukera gisa, garbitu arakatzailearen cachea ere.
Orain goazen AppCenter-era. joan Eraiki atalera, egin klik Deskonektatu BitBucket kontua
Kontu zaharra deskonektatzen denean, AppCenter lotuko dugu berriro. Orain nahi duzun kontura.
'eval' ez da barneko edo kanpoko komando gisa ezagutzen
Komando baten ordez erabiltzen dugu
- eval $(ssh-agent -s)
Taldea:
- ssh-agent
Zenbait kasutan, C:Program FilesGitusrbinssh-agent.exe-rako bide osoa zehaztu beharko duzu, edo bide hau exekutatzen ari den makinako sistema-aldagaietan gehitu beharko duzu.
AppCenter Build proiektu baten eraikuntza bat abiarazten saiatzen ari da bitBucket biltegi zaharkitu batetik
Nire kasuan, arazoa hainbat konturekin lanean ari nintzelako sortu zen. Cachea garbitzea erabaki nuen.
Iturria: www.habr.com