Tryam, halo!
Abdi hoyong ngobrol ngeunaan pangalaman abdi dina nyetel GitLab na integrasi AppCenter via BitBucket.
Kabutuhan integrasi sapertos kitu timbul nalika nyetél peluncuran otomatis tés UI pikeun proyék cross-platform dina Xamarin. Tutorial lengkep di handap cut!
* Kuring gé nyieun artikel misah ngeunaan automating nguji UI dina kaayaan cross-platform lamun publik museurkeun.
Kuring ngan ukur ngali hiji bahan sapertos kitu
tugas: Nyetél peluncuran otomatis tés UI dina AppCenter, nunjukkeun yen tim kami ngagunakeun GitLab salaku sistem kontrol versi.
masalah Tétéla yén AppCenter henteu ngahijikeun langsung sareng GitLab. Bypass via BitBucket dipilih salaku salah sahiji solusi.
Léngkah-léngkahna
1. Jieun gudang kosong dina BitBucket
Abdi henteu kedah ngajelaskeun ieu langkung rinci :)
2. Nyetél GitLab
Urang peryogi yén nalika ngadorong / ngahijikeun kana gudang, parobahan ogé diunggah ka BitBucket. Jang ngalampahkeun ieu, tambahkeun runner a (atawa édit aya file .gitlab-ci.yml).
Mimiti urang tambahkeun paréntah kana bagian before_scripts
- git config --global user.email "user@email"
- git config --global user.name "username"
Teras tambahkeun paréntah di handap ieu kana tahap anu dipikahoyong:
- git push --mirror https://username:[email protected]/username/projectname.git
Dina kasus kuring, ieu mangrupikeun file anu kuring kéngingkeun:
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
Urang ngajalankeun ngawangun, pariksa yen parobahan / file urang aya dina BitBucket.
* sakumaha prakték geus ditémbongkeun, nyetel konci SSH pilihan. Tapi, bisi waé, kuring bakal nyayogikeun algoritma pikeun nyetél sambungan liwat SSH di handap ieu
Sambungan via SSH
Mimiti anjeun kedah ngahasilkeun konci SSH. Loba artikel geus ditulis ngeunaan ieu. Contona, Anjeun bisa nempo
Konci anu dihasilkeun katingali sapertos kieu:
saterusna Konci rusiah perlu ditambahkeun salaku variabel kana GitLab. Jang ngalampahkeun ieu, buka Setélan> CI/CD> Variabel Lingkungan. Tambihkeun ALL eusi file anu anjeun simpen konci rusiah. Hayu urang nelepon variabel SSH_PRIVATE_KEY.
* file ieu, teu kawas file konci publik, moal boga extension
Hébat, salajengna anjeun kedah nambihan konci umum ka BitBucket. Jang ngalampahkeun ieu, buka Repository tur buka Setélan> Access Keys.
Di dieu urang klik Tambahkeun Key terus selapkeun eusi file jeung konci publik (file kalawan extension .pub).
Lengkah saterusna nyaéta ngagunakeun konci dina gitlab-runner. Anggo paréntah ieu, tapi ganti tanda bintang ku detil anjeun
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. Nyetél AppCenter
Urang nyieun aplikasi anyar dina AppCenter.
Sebutkeun basa/platform
Teras, angkat ka bagian Bangun tina aplikasi anu nembé diciptakeun. Di dinya kami milih BitBucket sareng gudang anu didamel dina léngkah 1.
Hébat, ayeuna urang kedah ngonpigurasikeun ngawangun. Jang ngalampahkeun ieu, panggihan ikon gear
Sacara prinsip, sagalana aya intuitif. Pilih proyék sareng konfigurasi. Upami diperlukeun, aktipkeun peluncuran tés saatos ngawangun. Aranjeunna bakal ngamimitian otomatis.
Dasarna, éta sadayana. Éta disada basajan, tapi, sacara alami, sadayana moal lancar. Ku alatan éta, kuring bakal ngajelaskeun sababaraha kasalahan anu kuring mendakan nalika damel:
'ssh-keygen' teu dipikawanoh salaku paréntah internal atawa éksternal.
Éta ogé lumangsung kusabab jalur ka ssh-keygen.exe henteu ditambahkeun kana variabel lingkungan.
Aya dua pilihan: tambahkeun C: Program FilesGitusrbin kana Variabel Lingkungan (bakal diterapkeun saatos rebooting mesin), atanapi ngaluncurkeun konsol tina diréktori ieu.
AppCenter disambungkeun ka akun BitBucket salah?
Pikeun ngajawab masalah, Anjeun kudu unlink akun BitBucket anjeun ti AppCenter. Kami asup kana akun BitBucket anu salah sareng angkat ka profil pangguna.
Salajengna, buka Setélan> Manajemén Aksés> OAuth
Pencét Cabut pikeun ngabatalkeun tautan akun anjeun.
Saatos ieu, anjeun kedah log in sareng akun BitBucket anu diperyogikeun.
* Salaku jalan terakhir, hapus ogé cache panyungsi anjeun.
Ayeuna hayu urang angkat ka AppCenter. buka bagian Ngawangun, klik Pegatkeun sambungan akun BitBucket
Nalika akun heubeul unlinked, urang numbu AppCenter deui. Ayeuna ka akun anu dipikahoyong.
'eval' teu dipikawanoh salaku paréntah internal atawa éksternal
Urang make eta tinimbang paréntah a
- eval $(ssh-agent -s)
Tim:
- ssh-agent
Dina sababaraha kasus, anjeun kudu nangtukeun jalur pinuh ka C: Program FilesGitusrbinssh-agent.exe, atawa tambahkeun jalur ieu kana variabel sistem dina mesin dimana runner ngajalankeun.
AppCenter Build nyobian ngaluncurkeun ngawangun pikeun proyék tina gudang bitBucket anu luntur
Dina kasus kuring, masalahna timbul kusabab kuring damel sareng sababaraha akun. Kuring mutuskeun pikeun mupus cache.
sumber: www.habr.com