AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

ட்ரையம், வணக்கம்!

BitBucket வழியாக GitLab மற்றும் AppCenter ஒருங்கிணைப்பை அமைப்பதில் எனது அனுபவத்தைப் பற்றி பேச விரும்புகிறேன்.

Xamarin இல் குறுக்கு-தளம் திட்டத்திற்கான UI சோதனைகளின் தானியங்கி வெளியீட்டை அமைக்கும் போது அத்தகைய ஒருங்கிணைப்பின் தேவை எழுந்தது. வெட்டுக்கு கீழே விரிவான பயிற்சி!

* பொது மக்கள் ஆர்வமாக இருந்தால், க்ராஸ்-பிளாட்ஃபார்ம் நிலைகளில் UI சோதனையை தானியங்குபடுத்துவது பற்றி ஒரு தனி கட்டுரையை உருவாக்குகிறேன்.

நான் அத்தகைய ஒரு பொருளை மட்டுமே தோண்டி எடுத்தேன் ஒரு கட்டுரை. எனவே, எனது கட்டுரை ஒருவருக்கு உதவக்கூடும்.

பணி: AppCenter இல் UI சோதனைகளின் தானியங்கி வெளியீட்டை அமைக்கவும், எங்கள் குழு GitLab ஐ பதிப்புக் கட்டுப்பாட்டு அமைப்பாகப் பயன்படுத்துகிறது.

பிரச்சனை 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 விசையை உருவாக்க வேண்டும். இதைப் பற்றி பல கட்டுரைகள் எழுதப்பட்டுள்ளன. உதாரணமாக, நீங்கள் பார்க்கலாம் இங்கே.
உருவாக்கப்பட்ட விசைகள் இப்படி இருக்கும்:
AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

மேலும் இரகசிய திறவுகோல் GitLab இல் ஒரு மாறியாக சேர்க்கப்பட வேண்டும். இதைச் செய்ய, அமைப்புகள் > CI/CD > சுற்றுச்சூழல் மாறிகள் என்பதற்குச் செல்லவும். நீங்கள் ரகசிய விசையைச் சேமித்த கோப்பின் அனைத்து உள்ளடக்கங்களையும் சேர்க்கவும். மாறியை SSH_PRIVATE_KEY என்று அழைப்போம்.
* இந்தக் கோப்பு, பொது விசைக் கோப்பைப் போலன்றி, நீட்டிப்பைக் கொண்டிருக்காது
AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

நல்லது, அடுத்து நீங்கள் பொது விசையை BitBucket இல் சேர்க்க வேண்டும். இதைச் செய்ய, களஞ்சியத்தைத் திறந்து அமைப்புகள் > அணுகல் விசைகளுக்குச் செல்லவும்.

AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

இங்கே நாம் சேர் கீ என்பதைக் கிளிக் செய்து, கோப்பின் உள்ளடக்கங்களை பொது விசையுடன் செருகுவோம் (நீட்டிப்பு .pub உடன் கோப்பு).

அடுத்த கட்டமாக கிட்லாப்-ரன்னரில் விசைகளைப் பயன்படுத்த வேண்டும். இந்த கட்டளைகளைப் பயன்படுத்தவும், ஆனால் உங்கள் விவரங்களுடன் நட்சத்திரக் குறிகளை மாற்றவும்

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 இல் புதிய பயன்பாட்டை உருவாக்குகிறோம்.

AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

மொழி/தளத்தை குறிப்பிடவும்

AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

அடுத்து, புதிதாக உருவாக்கப்பட்ட பயன்பாட்டின் உருவாக்கப் பகுதிக்குச் செல்லவும். அங்கு நாம் பிட்பக்கெட் மற்றும் படி 1 இல் உருவாக்கப்பட்ட களஞ்சியத்தைத் தேர்ந்தெடுக்கிறோம்.

நல்லது, இப்போது நாம் கட்டமைப்பை உள்ளமைக்க வேண்டும். இதைச் செய்ய, கியர் ஐகானைக் கண்டறியவும்

AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

கொள்கையளவில், அங்கு உள்ள அனைத்தும் உள்ளுணர்வு. ஒரு திட்டம் மற்றும் கட்டமைப்பைத் தேர்ந்தெடுக்கவும். தேவைப்பட்டால், கட்டமைத்த பிறகு சோதனைகளின் துவக்கத்தை இயக்கவும். அவை தானாகவே தொடங்கும்.

அடிப்படையில், அவ்வளவுதான். இது எளிமையானதாகத் தெரிகிறது, ஆனால், இயற்கையாகவே, எல்லாம் சீராக நடக்காது. எனவே, வேலை செய்யும் போது நான் சந்தித்த சில பிழைகளை விவரிக்கிறேன்:

'ssh-keygen' உள் அல்லது வெளிப்புற கட்டளையாக அங்கீகரிக்கப்படவில்லை.

சூழல் மாறிகளில் ssh-keygen.exeக்கான பாதை சேர்க்கப்படாததால் இது நிகழ்கிறது.
இரண்டு விருப்பங்கள் உள்ளன: C:Program FilesGitusrbin ஐ சுற்றுச்சூழல் மாறிகளில் சேர்க்கவும் (இயந்திரத்தை மறுதொடக்கம் செய்த பிறகு பயன்படுத்தப்படும்), அல்லது இந்த கோப்பகத்தில் இருந்து பணியகத்தை துவக்கவும்.

AppCenter தவறான BitBucket கணக்குடன் இணைக்கப்பட்டுள்ளதா?

சிக்கலைத் தீர்க்க, AppCenter இலிருந்து உங்கள் BitBucket கணக்கின் இணைப்பை நீக்க வேண்டும். நாங்கள் தவறான BitBucket கணக்கில் உள்நுழைந்து பயனர் சுயவிவரத்திற்குச் செல்கிறோம்.

AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

அடுத்து, அமைப்புகள் > அணுகல் மேலாண்மை > OAuth என்பதற்குச் செல்லவும்

AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

உங்கள் கணக்கின் இணைப்பை நீக்க, ரத்துசெய் என்பதைக் கிளிக் செய்யவும்.

AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

இதற்குப் பிறகு, நீங்கள் தேவையான BitBucket கணக்கில் உள்நுழைய வேண்டும்.
* கடைசி முயற்சியாக, உங்கள் உலாவி தற்காலிக சேமிப்பையும் அழிக்கவும்.

இப்போது AppCenter க்குச் செல்வோம். பில்ட் பிரிவுக்குச் சென்று, பிட்பக்கெட் கணக்கைத் துண்டிக்கவும் என்பதைக் கிளிக் செய்யவும்

AppCenter மற்றும் GitLab ஒருங்கிணைப்பு

பழைய கணக்கு துண்டிக்கப்படும்போது, ​​மீண்டும் AppCenterஐ இணைக்கிறோம். இப்போது விரும்பிய கணக்கிற்கு.

'eval' ஒரு உள் அல்லது வெளிப்புற கட்டளையாக அங்கீகரிக்கப்படவில்லை

கட்டளைக்குப் பதிலாக அதைப் பயன்படுத்துகிறோம்

  - eval $(ssh-agent -s)

குழு:

  - ssh-agent

சில சந்தர்ப்பங்களில், நீங்கள் C:Program FilesGitusrbinssh-agent.exe க்கு முழு பாதையையும் குறிப்பிட வேண்டும் அல்லது ரன்னர் இயங்கும் கணினியில் உள்ள கணினி மாறிகளில் இந்தப் பாதையைச் சேர்க்க வேண்டும்.

AppCenter Build ஒரு காலாவதியான bitBucket களஞ்சியத்திலிருந்து ஒரு திட்டத்திற்கான உருவாக்கத்தை தொடங்க முயற்சிக்கிறது

என் விஷயத்தில், நான் பல கணக்குகளுடன் பணிபுரிந்ததால் சிக்கல் எழுந்தது. தற்காலிக சேமிப்பை அழிக்க முடிவு செய்தேன்.

ஆதாரம்: www.habr.com

கருத்தைச் சேர்