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 . Horregatik, nire artikuluak norbait lagun dezake.
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:password@bitbucket.org/username/projectname.gitNire 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.gitEraikuntza 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 git@bitbucket.org
mirror:
stage: mirror
script:
- git push --mirror https://****:****@bitbucket.org/*****/*****.git3. 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-agentZenbait 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
