Трям, салам!
Мен BitBucket аркылуу GitLab жана AppCenter интеграциясын орнотуудагы тажрыйбам тууралуу айткым келет.
Мындай интеграциянын зарылдыгы Xamarin боюнча кросс-платформалык долбоор үчүн UI тесттерин автоматтык түрдө ишке киргизүүдө пайда болгон. Кесиптин астында деталдуу окуу куралы!
* Коомчулук кызыктырса, платформалар аралык шарттарда UI тестин автоматташтыруу жөнүндө өзүнчө макала жасайм.
Мен бир гана ушундай материалды казып алдым
маселе: Биздин команда GitLab версиясын башкаруу системасы катары колдонгонун эске алып, AppCenterде UI тесттерин автоматтык түрдө ишке киргизиңиз.
маселе AppCenter GitLab менен түз интеграцияланбайт экен. Чечимдердин бири катары BitBucket аркылуу айланып өтүү тандалды.
кадамдар
1. BitBucketте бош репозиторийди түзүңүз
Мен муну майда-чүйдөсүнө чейин сүрөттөп берүүнүн кереги жок :)
2. GitLab орнотуу
Репозиторийге түртүп/бириктиргенде, өзгөртүүлөр BitBucketке да жүктөлүшү керек. Бул үчүн, жөө күлүктү кошуңуз (же учурдагы .gitlab-ci.yml файлын түзөтүңүз).
Адегенде before_scripts бөлүмүнө буйруктарды кошобуз
- git config --global user.email "user@email"
- git config --global user.name "username"
Андан кийин каалаган баскычка төмөнкү буйрукту кошуу:
- git push --mirror https://username:[email protected]/username/projectname.git
Менин учурда, бул мен алган файл:
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
Биз курууну ишке киргизебиз, биздин өзгөртүүлөр/файлдар BitBucketте экенин текшеребиз.
* практика көрсөткөндөй, SSH ачкычтарын орнотуу милдеттүү эмес. Бирок, кандай болгон күндө да, мен төмөндө SSH аркылуу туташууну орнотуу алгоритмин берем
SSH аркылуу туташуу
Алгач сиз SSH ачкычын түзүшүңүз керек. Бул тууралуу көптөгөн макалалар жазылган. Мисалы, сиз карап көрө аласыз
Түзүлгөн ачкычтар төмөнкүдөй көрүнөт:
Далее Жашыруун ачкыч GitLab боюнча өзгөрмө катары кошуу керек. Бул үчүн, Орнотуулар > CI/CD > Айлана-чөйрө өзгөрмөлөрүнө өтүңүз. Жашыруун ачкыч сакталган файлдын БАРДЫК мазмунун кошуңуз. SSH_PRIVATE_KEY өзгөрмөсүн чакыралы.
* бул файл, ачык ачкыч файлынан айырмаланып, кеңейтүүгө ээ болбойт
Жакшы, андан кийин BitBucketке ачык ачкычты кошушуңуз керек. Бул үчүн, репозиторийди ачып, Орнотуулар > Кирүү баскычтарына өтүңүз.
Бул жерде биз Ачкычты кошуу баскычын чыкылдатып, ачык ачкыч менен файлдын мазмунун киргизебиз (кеңейтүү .pub файлы).
Кийинки кадам gitlab-runnerдеги ачкычтарды колдонуу. Бул буйруктарды колдонуңуз, бирок жылдызчаларды маалыматыңыз менен алмаштырыңыз
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 орнотуу
Биз AppCenterде жаңы тиркемени түзөбүз.
Тилди/платформаны көрсөтүңүз
Андан кийин, жаңы түзүлгөн тиркеменин Build бөлүмүнө өтүңүз. Ал жерден биз BitBucketти жана 1-кадамда түзүлгөн репозиторийди тандайбыз.
Жакшы, азыр биз курууну конфигурациялашыбыз керек. Бул үчүн, тиштүү сөлөкөтүн табыңыз
Негизи, ал жерде бардыгы интуитивдик. Долбоорду жана конфигурацияны тандаңыз. Зарыл болсо, куруудан кийин сыноолорду ишке киргизиңиз. Алар автоматтык түрдө башталат.
Негизинен ушуну менен бүттү. Бул жөнөкөй угулат, бирок, албетте, баары жылмакай эмес. Ошондуктан, мен иштеп жатканда жолуккан кээ бир каталарды сүрөттөп берем:
'ssh-keygen' ички же тышкы буйрук катары таанылбайт.
Бул ssh-keygen.exe жолу чөйрө өзгөрмөлөрүнө кошулбагандыктан да пайда болот.
Эки вариант бар: C:Program FilesGitusrbinди Environment Variables (машина кайра жүктөлгөндөн кийин колдонулат) кошуңуз же бул каталогдон консолду ишке киргизиңиз.
AppCenter туура эмес BitBucket каттоо эсебине туташтыбы?
Көйгөйдү чечүү үчүн BitBucket каттоо эсебиңизди AppCenter менен ажыратышыңыз керек. Биз туура эмес BitBucket эсебине кирип, колдонуучунун профилине барабыз.
Андан кийин, Орнотуулар> Мүмкүнчүлүктү башкаруу> OAuth дегенге өтүңүз
Каттоо эсебиңизди ажыратуу үчүн "Жокко чыгаруу" баскычын басыңыз.
Андан кийин, талап кылынган BitBucket каттоо эсеби менен кирүү керек.
* Акыркы чара катары браузериңиздин кэшин тазалаңыз.
Эми AppCenterге баралы. Build бөлүмүнө барып, BitBucket каттоо эсебин ажыратууну чыкылдатыңыз
Эски каттоо эсеби ажыратылганда, биз AppCenterди кайра байланыштырабыз. Эми каалаган эсепке.
"баалоо" ички же тышкы буйрук катары таанылбайт
Биз аны буйруктун ордуна колдонобуз
- eval $(ssh-agent -s)
Команда:
- ssh-agent
Кээ бир учурларда, сиз C:Program FilesGitusrbinssh-agent.exe файлына толук жолду көрсөтүшүңүз керек, же бул жолду жөө күлүк иштеп жаткан машинадагы система өзгөрмөлөрүнө кошушуңуз керек болот.
AppCenter Build эскирген bitBucket репозиторийинен долбоор үчүн курууну ишке киргизүүгө аракет кылууда
Менин учурда, көйгөй бир нече аккаунттар менен иштегендиктен келип чыкты. Мен кэшти тазалоону чечтим.
Source: www.habr.com