AppCenter da Haɗin GitLab

Tryam, hello!

Ina so in yi magana game da gwaninta na kafa GitLab da haɗin gwiwar AppCenter ta BitBucket.

Bukatar irin wannan haɗin kai ya taso lokacin da aka kafa ƙaddamar da gwajin UI ta atomatik don aikin giciye akan Xamarin. Cikakken koyawa a ƙasa da yanke!

* Zan yi wani labarin dabam game da sarrafa sarrafa gwajin UI a cikin yanayin dandamali idan jama'a suna sha'awar.

Na tono kayan guda ɗaya kawai labarin. Saboda haka, labarina zai iya taimakawa wani.

Manufar: Sanya ƙaddamar da gwajin UI ta atomatik akan AppCenter, ganin cewa ƙungiyarmu tana amfani da GitLab azaman tsarin sarrafa sigar.

matsala Ya juya cewa AppCenter ba ya haɗa kai tsaye tare da GitLab. An zaɓi Ketare ta BitBucket azaman ɗayan mafita.

Matakai

1. Ƙirƙirar ma'ajiyar fanko akan BitBucket

Ban ga bukatar yin bayanin wannan dalla-dalla ba :)

2. Saita GitLab

Muna buƙatar cewa lokacin turawa / haɗawa cikin ma'ajiyar, ana kuma loda canje-canje zuwa BitBucket. Don yin wannan, ƙara mai gudu (ko gyara fayil ɗin .gitlab-ci.yml da ke akwai).

Da farko muna ƙara umarni zuwa sashin kafin_scripts

 - git config --global user.email "user@email"
 - git config --global user.name "username"

Sannan ƙara umarni mai zuwa zuwa matakin da ake so:

- git push --mirror https://username:[email protected]/username/projectname.git

A cikin yanayina, wannan shine fayil ɗin da na samu:

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

Mun ƙaddamar da ginin, duba cewa canje-canje / fayilolin mu suna kan BitBucket.
* kamar yadda aikin ya nuna, kafa maɓallan SSH zaɓi ne. Amma, kawai idan akwai, zan samar da algorithm don kafa haɗin kai ta hanyar SSH a ƙasa

Haɗa ta hanyar SSH

Da farko kuna buƙatar ƙirƙirar maɓallin SSH. An yi rubuce-rubuce da yawa game da wannan. Misali, zaku iya duba a nan.
Maɓallan da aka ƙirƙira sunyi kama da haka:
AppCenter da Haɗin GitLab

m Makullin sirri yana buƙatar ƙara azaman mai canzawa zuwa GitLab. Don yin wannan, je zuwa Saituna> CI/CD> Canje-canje na Muhalli. Ƙara DUK abubuwan da ke cikin fayil ɗin da kuka ajiye maɓallin sirri a ciki. Mu kira mai canjin SSH_PRIVATE_KEY.
* wannan fayil, sabanin fayil ɗin maɓalli na jama'a, ba zai sami tsawo ba
AppCenter da Haɗin GitLab

Mai girma, na gaba kuna buƙatar ƙara maɓallin jama'a zuwa BitBucket. Don yin wannan, buɗe ma'ajin kuma je zuwa Saituna> Maɓallan shiga.

AppCenter da Haɗin GitLab

Anan zamu danna Ƙara Maɓalli kuma saka abubuwan da ke cikin fayil ɗin tare da maɓallin jama'a (fayil tare da tsawo .pub).

Mataki na gaba shine amfani da maɓallan a cikin gitlab-mai gudu. Yi amfani da waɗannan umarni, amma maye gurbin taurari tare da cikakkun bayanai

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. Saita AppCenter

Mun ƙirƙiri sabon aikace-aikace akan AppCenter.

AppCenter da Haɗin GitLab

Ƙayyade harshe/dandamali

AppCenter da Haɗin GitLab

Na gaba, je zuwa sashin Gina na sabon aikace-aikacen da aka ƙirƙira. A can za mu zaɓi BitBucket da ma'ajiyar da aka ƙirƙira a mataki na 1.

Mai girma, yanzu muna buƙatar saita ginin. Don yin wannan, nemo gunkin gear

AppCenter da Haɗin GitLab

A ka'ida, duk abin da akwai ilhama. Zaɓi aikin da daidaitawa. Idan ya cancanta, kunna ƙaddamar da gwaje-gwaje bayan ginin. Za su fara kai tsaye.

Ainihin, shi ke nan. Yana sauti mai sauƙi, amma, a zahiri, komai ba zai tafi daidai ba. Don haka, zan bayyana wasu kurakuran da na ci karo da su yayin aiki:

'ssh-keygen' ba a gane shi azaman umarni na ciki ko na waje ba.

Hakanan yana faruwa saboda hanyar zuwa ssh-keygen.exe ba a ƙara zuwa masu canjin yanayi ba.
Akwai zaɓuɓɓuka guda biyu: ƙara C: Fayilolin ShirinGitusrbin zuwa Canjin Muhalli (za a yi amfani da su bayan sake kunna na'ura), ko ƙaddamar da na'ura mai kwakwalwa daga wannan jagorar.

An haɗa AppCenter zuwa asusun BitBucket mara daidai?

Don magance matsalar, kuna buƙatar cire haɗin asusun ku na BitBucket daga AppCenter. Muna shiga cikin kuskuren asusun BitBucket kuma je zuwa bayanan mai amfani.

AppCenter da Haɗin GitLab

Na gaba, je zuwa Saituna> Gudanarwa Samun shiga> OAuth

AppCenter da Haɗin GitLab

Danna Revoke don cire haɗin asusun ku.

AppCenter da Haɗin GitLab

Bayan wannan, kuna buƙatar shiga tare da asusun BitBucket da ake buƙata.
* A matsayin maƙasudin ƙarshe, kuma share cache ɗin burauzar ku.

Yanzu bari mu je AppCenter. je zuwa sashin Gina, danna Cire haɗin asusun BitBucket

AppCenter da Haɗin GitLab

Lokacin da aka cire haɗin tsohon asusun, muna sake haɗa AppCenter. Yanzu zuwa asusun da ake so.

'eval' ba a gane shi azaman umarni na ciki ko na waje ba

Muna amfani da shi maimakon umarni

  - eval $(ssh-agent -s)

Tawaga:

  - ssh-agent

A wasu lokuta, dole ne ku ƙayyade cikakkiyar hanyar zuwa C: Fayilolin ShirinGitusrbinssh-agent.exe, ko ƙara wannan hanyar zuwa masu canjin tsarin akan injin inda mai gudu ke gudana.

AppCenter Build yana ƙoƙarin ƙaddamar da gini don aiki daga ma'ajin bitBucket da ya tsufa

A cikin yanayina, matsalar ta taso saboda ina aiki da asusu da yawa. Na yanke shawarar share cache.

source: www.habr.com

Add a comment