AppCenter እና GitLab ውህደት

ሰላም፣ ሰላም!

በ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:password@bitbucket.org/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 ቁልፍ ማመንጨት ያስፈልግዎታል። ስለዚህ ጉዳይ ብዙ ጽሑፎች አሉ። ለምሳሌ፣ የሚከተሉትን መመልከት ይችላሉ እዚህ.
የተፈጠሩት ቁልፎች እንደዚህ ይመስላሉ፦
AppCenter እና GitLab ውህደት

ከዚህ በላይ ሚስጥራዊ ቁልፍ በGitLab ውስጥ እንደ ተለዋዋጭ ማከል ያስፈልግዎታል። ይህንን ለማድረግ ወደ ቅንብሮች > CI/CD > Environment Variables ይሂዱ። ሚስጥራዊ ቁልፉን ያስቀመጡበትን የፋይል ሙሉ ይዘቶች ያክሉ። ተለዋዋጭ SSH_PRIVATE_KEY ብለን እንጠራው።
* ይህ ፋይል፣ ከሕዝብ ቁልፍ ፋይል በተለየ መልኩ፣ ቅጥያ አይኖረውም
AppCenter እና GitLab ውህደት

በጣም ጥሩ፣ አሁን የህዝብ ቁልፉን ወደ BitBucket ማከል አለብን። ይህንን ለማድረግ ማከማቻውን ይክፈቱ እና ወደ ቅንብሮች > የመዳረሻ ቁልፎች ይሂዱ።

AppCenter እና GitLab ውህደት

እዚህ ላይ "አክል" የሚለውን ጠቅ እናደርጋለን እና የፋይሉን ይዘቶች ከህዝብ ቁልፍ ጋር (ፋይሉን ከ.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 git@bitbucket.org

mirror:
  stage: mirror
  script:
    - git push --mirror https://****:****@bitbucket.org/*****/*****.git

3. AppCenterን ማዋቀር

በAppCenter ላይ አዲስ መተግበሪያ ይፍጠሩ።

AppCenter እና GitLab ውህደት

ቋንቋውን/መድረክን ይግለጹ

AppCenter እና GitLab ውህደት

ቀጥሎ፣ ወደ አዲሱ የተፈጠረው መተግበሪያ የግንባታ ክፍል ይሂዱ። BitBucket ን እና በደረጃ 1 የተፈጠረውን ማከማቻ ይምረጡ።

በጣም ጥሩ፣ አሁን ግንባታውን ማዋቀር አለብን። ይህንን ለማድረግ የማርሽ አዶውን ያግኙ።

AppCenter እና GitLab ውህደት

በመሠረቱ፣ ሁሉም ነገር በቀላሉ የሚታወቅ ነው። ፕሮጀክት እና ውቅር ይምረጡ። አስፈላጊ ከሆነ፣ ከግንባታው በኋላ ሙከራዎችን ያንቁ። በራስ-ሰር ይሰራሉ።

በመሠረቱ ያ ነው። ቀላል ይመስላል፣ ግን በተፈጥሮው ሁሉም ነገር በተቀላጠፈ ሁኔታ አይሄድም። ስለዚህ፣ በመንገድ ላይ ያጋጠሙኝን አንዳንድ ስህተቶች እገልጻለሁ፡

'ssh-keygen' እንደ ውስጣዊ ወይም ውጫዊ ትዕዛዝ አይታወቅም።

ይህ ደግሞ የሚከሰተው ወደ ssh-keygen.exe የሚወስደው መንገድ ወደ አካባቢ ተለዋዋጮች ስለማይታከል ነው።
ሁለት አማራጮች አሉ፡ C:\Program Files\Gitus\rbin ን ወደ Environment Variables ያክሉ (ይህ ማሽኑን እንደገና ከጀመሩ በኋላ ይተገበራል) ወይም ኮንሶሉን ከዚህ ማውጫ ያስጀምሩ።

AppCenter ከተሳሳተ የBitBucket መለያ ጋር ተገናኝቷል?

ይህንን ችግር ለመፍታት የBitBucket መለያዎን ከAppCenter ማገናኘት ያስፈልግዎታል። የተሳሳተውን የBitBucket መለያ ይግቡ እና ወደ የተጠቃሚ መገለጫዎ ይሂዱ።

AppCenter እና GitLab ውህደት

ቀጥሎ፣ ወደ ቅንብሮች > የመዳረሻ አስተዳደር > OAuth ይሂዱ

AppCenter እና GitLab ውህደት

የመለያዎን ግንኙነት ለማቋረጥ ሻር የሚለውን ጠቅ ያድርጉ።

AppCenter እና GitLab ውህደት

ከዚህ በኋላ፣ በሚፈለገው የBitBucket መለያ መግባት ያስፈልግዎታል።
* እንደ የመጨረሻ አማራጭ፣ የአሳሽዎን መሸጎጫ ያጽዱ።

አሁን ወደ AppCenter ይሂዱ። ወደ ግንባታ ክፍል ይሂዱ እና የ BitBucket መለያውን ያላቅቁ የሚለውን ጠቅ ያድርጉ።

AppCenter እና GitLab ውህደት

የድሮው መለያ አንዴ ከተቋረጠ፣ AppCenterን ከትክክለኛው መለያ ጋር እንደገና ያገናኙት።

'ቫል' እንደ ውስጣዊ ወይም ውጫዊ ትዕዛዝ እውቅና አይሰጥም

ከትእዛዝ ይልቅ እንጠቀማለን

  - eval $(ssh-agent -s)

ቡድን፡

  - ssh-agent

በአንዳንድ ሁኔታዎች፣ ወደ C:\Program Files\Gitusrbinssh-agent.exe የሚወስደውን ሙሉ መንገድ መግለጽ ወይም ይህንን መንገድ ሯጩ በሚሰራበት ማሽን ላይ ወዳለው የስርዓት ተለዋዋጮች ማከል ይኖርብዎታል።

AppCenter Build ጊዜው ያለፈበት የቢትቡኬት ማከማቻ ፕሮጀክት ለመገንባት እየሞከረ ነው።

በእኔ ሁኔታ ችግሩ የተፈጠረው ከብዙ መለያዎች ጋር ስለምሰራ ነው። መሸጎጫውን ማጽዳት ችግሩን ፈታው።

ምንጭ: hab.com

በDDoS ጥበቃ፣ VPS VDS አገልጋዮች ለጣቢያዎች አስተማማኝ ማስተናገጃ ይግዙ 🔥 አስተማማኝ የድር ጣቢያ ማስተናገጃ በዲዶኤስ ጥበቃ፣ በቪፒኤስ ቪዲኤስ አገልጋዮች ይግዙ | ProHoster