ማጣቀሻ፡ ቀጣይነት ያለው ውህደት ሂደት እንዴት እንደሚሰራ

ዛሬ የቃሉን ታሪክ እንመለከታለን, CI ን በመተግበር ላይ ያሉትን ችግሮች እንነጋገራለን እና ከእሱ ጋር አብሮ ለመስራት የሚያግዙ በርካታ ታዋቂ መሳሪያዎችን እናቀርባለን.

ማጣቀሻ፡ ቀጣይነት ያለው ውህደት ሂደት እንዴት እንደሚሰራ
/ፍሊከር/ አልቱግ ካራኮክ / CC BY / ፎቶ ተስተካክሏል

ቃሉ

ቀጣይነት ያለው ውህደት በተደጋጋሚ የፕሮጀክት ግንባታ እና የኮድ ሙከራን የሚያካትት የመተግበሪያ ልማት አቀራረብ ነው።

ግቡ የውህደት ሂደቱን ሊተነበይ የሚችል እና ሊፈጠሩ የሚችሉ ስህተቶችን እና ስህተቶችን ገና በመነሻ ደረጃ መለየት ነው፣ ስለዚህም እነሱን ለማስተካከል ብዙ ጊዜ እንዲኖር ማድረግ ነው።

ቀጣይነት ያለው ውህደት የሚለው ቃል ለመጀመሪያ ጊዜ በ1991 ታየ። በኡኤምኤል ቋንቋ ፈጣሪ አስተዋወቀ ግራዲ ቡች (ግራዲ ቡክ) መሐንዲሱ የ CI ጽንሰ-ሀሳብን እንደ የራሱ የእድገት ልምምድ አስተዋውቋል - ቡሽ ዘዴ. ነገር ተኮር ሥርዓቶችን ሲነድፉ የሕንፃውን ተጨማሪ ማሻሻያ ያመለክታል። ግራዲ ለቀጣይ ውህደት ምንም አይነት መስፈርቶችን አልገለጸም። በኋላ ግን በመጽሐፉ ውስጥ "የነገር ተኮር ትንተና እና ዲዛይን ከመተግበሪያዎች ጋር"የዘዴው ግብ "የውስጥ ልቀቶችን" መልቀቅን ማፋጠን ነው ብሏል።

История

እ.ኤ.አ. በ 1996 ፣ CI በአሠራሩ ፈጣሪዎች ተቀባይነት አግኝቷል ጽንፈኛ ፕሮግራሚንግ (ኤክስፒ) - ኬንት ቤክ (ኬንት ቤክ) እና ሮን ጄፍሪስ (ሮን ጄፍሪስ) ቀጣይነት ያለው ውህደት ከአስራ ሁለቱ የአቀራረብ መርሆች አንዱ ሆነ። የ XP መሥራቾች ለ CI ዘዴ የሚያስፈልጉትን መስፈርቶች በማብራራት በቀን ውስጥ ብዙ ጊዜ ፕሮጀክቱን መገንባት አስፈላጊ መሆኑን አመልክተዋል.

በ 2000 ዎቹ መጀመሪያ ላይ የአጊል አሊያንስ መስራቾች አንዱ ቀጣይነት ያለው የመዋሃድ ዘዴን ማስተዋወቅ ጀመረ ማርቲን ፎለር (ማርቲን ፎለር) ከ CI ጋር ያደረጋቸው ሙከራዎች በዚህ አካባቢ ወደ መጀመሪያው የሶፍትዌር መሳሪያ - ክሩዝ መቆጣጠሪያ. መገልገያው የተፈጠረው በማርቲን ባልደረባ ማቲው ፎሜል ነው።

በመሳሪያው ውስጥ ያለው የግንባታ ዑደት በኮድ መሠረት ላይ ለውጦችን በየጊዜው የስሪት ቁጥጥር ስርዓቱን የሚፈትሽ እንደ ዴሞን ነው የሚተገበረው። መፍትሄው ዛሬ ሊወርድ ይችላል - እሱ የተሰራጨው በ በቢኤስዲ በሚመስል ፈቃድ።

ለ CI የሶፍትዌር አሰራር መምጣት, ብዙ እና ብዙ ኩባንያዎች ይህንን አሰራር መከተል ጀመሩ. እንደ ፎረስተር ጥናት [ገጽ 5] ሪፖርት አድርግ]፣ በ2009 ጥናቱ ከተካሄደባቸው ሃምሳ የቴክኖሎጂ ኩባንያዎች 86% ያህሉ የCI ዘዴዎችን ተጠቅመዋል ወይም ተግባራዊ አድርገዋል።

ዛሬ, የቀጣይ ውህደት አሠራር ከተለያዩ ኢንዱስትሪዎች የተውጣጡ ድርጅቶች ይጠቀማሉ. እ.ኤ.አ. በ 2018 አንድ ትልቅ የደመና አቅራቢ በአገልግሎቶች ፣ በትምህርት እና በፋይናንስ ዘርፎች ውስጥ ካሉ ኩባንያዎች በ IT ስፔሻሊስቶች መካከል የዳሰሳ ጥናት አካሂዷል። ከስድስት ሺህ ምላሽ ሰጪዎች ውስጥ 58% የሚሆኑት በስራቸው ውስጥ የሲአይ መሳሪያዎችን እና መርሆዎችን እንደሚጠቀሙ ተናግረዋል ።

ይህን ሥራ የሚያደርገው እንዴት ነው?

ቀጣይነት ያለው ውህደት በሁለት መሳሪያዎች ላይ የተመሰረተ ነው-የስሪት ቁጥጥር ስርዓት እና የ CI አገልጋይ. የኋለኛው አካላዊ መሣሪያ ወይም በደመና አካባቢ ውስጥ ምናባዊ ማሽን ሊሆን ይችላል። ገንቢዎች በቀን አንድ ወይም ተጨማሪ ጊዜ አዲስ ኮድ ይሰቅላሉ። የCI አገልጋይ በራስ ሰር ከሁሉም ጥገኞች ጋር ይገለብጣል እና ይገነባዋል። ከዚያ በኋላ የመዋሃድ እና የዩኒት ሙከራዎችን ያካሂዳል. ፈተናዎቹ በተሳካ ሁኔታ ካለፉ, የ CI ስርዓቱ ኮዱን ያሰማራቸዋል.

አጠቃላይ የሂደቱ ንድፍ እንደሚከተለው ሊወከል ይችላል-

ማጣቀሻ፡ ቀጣይነት ያለው ውህደት ሂደት እንዴት እንደሚሰራ

የ CI ዘዴ ለገንቢዎች በርካታ መስፈርቶችን ይሰጣል፡-

  • ችግሮችን ወዲያውኑ ያርሙ. ይህ መርህ ከጽንፈኛ ፕሮግራሚንግ ወደ CI መጣ። ሳንካዎችን ማስተካከል የገንቢዎች ከፍተኛ ቅድሚያ የሚሰጠው ጉዳይ ነው።
  • ሂደቶችን በራስ-ሰር ያድርጉ። ገንቢዎች እና አስተዳዳሪዎች በውህደት ሂደት ውስጥ ማነቆዎችን ያለማቋረጥ መፈለግ እና እነሱን ማስወገድ አለባቸው። ለምሳሌ በውህደት ውስጥ ብዙ ጊዜ ማነቆ አለ። ሁኔታው ግልጽ ሆነ ሙከራ.
  • በተቻለ መጠን ብዙ ጊዜ ስብሰባዎችን ያካሂዱ። የቡድኑን ስራ ለማመሳሰል በቀን አንድ ጊዜ።

የአፈፃፀም ችግሮች

የመጀመሪያው ችግር ከፍተኛ የሥራ ማስኬጃ ወጪዎች ነው. ምንም እንኳን አንድ ኩባንያ ክፍት የሲአይ መሳሪያዎችን ቢጠቀምም (በኋላ ስለምንነጋገርበት) አሁንም ለመሠረተ ልማት ድጋፍ ገንዘብ ማውጣት ይኖርበታል. ይሁን እንጂ የደመና ቴክኖሎጂዎች መፍትሔ ሊሆኑ ይችላሉ.

የተለያየ መጠን ያላቸውን የኮምፒዩተር አወቃቀሮችን መሰብሰብን ቀላል ያደርጉታል. ከኩባንያው በተጨማሪ ይክፈሉ በመሠረተ ልማት ላይ ለመቆጠብ የሚረዳው ጥቅም ላይ ለሚውሉ ሀብቶች ብቻ ነው.

ጥናቶች እንደሚያሳዩት [ገጽ 14] መጣጥፎች], ቀጣይነት ያለው ውህደት በድርጅቱ ሰራተኞች ላይ ሸክሙን ይጨምራል (ቢያንስ በመጀመሪያ). አዳዲስ መሳሪያዎችን መማር አለባቸው, እና ባልደረቦች ሁልጊዜ በስልጠና ላይ አይረዱም. ስለዚህ፣ በጉዞ ላይ እያሉ አዳዲስ ማዕቀፎችን እና አገልግሎቶችን ማስተናገድ አለቦት።

ሦስተኛው ችግር አውቶሜሽን ላይ ያሉ ችግሮች ናቸው. በራስ ሰር ሙከራዎች ያልተሸፈኑ ከፍተኛ መጠን ያለው የቆየ ኮድ ያላቸው ድርጅቶች ይህን ችግር ይጋፈጣሉ። ይህ የ CI ሙሉ በሙሉ ከመተግበሩ በፊት ኮዱ በቀላሉ እንደገና መጻፉን ያመጣል.

ማጣቀሻ፡ ቀጣይነት ያለው ውህደት ሂደት እንዴት እንደሚሰራ
/ፍሊከር/ እነሱ / CC BY-SA

ማን ይጠቀማል

የአይቲ ግዙፍ ኩባንያዎች የአሰራር ዘዴን ጥቅሞች ካደነቁ የመጀመሪያዎቹ መካከል ነበሩ። በጉግል መፈለግ ይጠቀማል ከ 2000 ዎቹ አጋማሽ ጀምሮ ቀጣይነት ያለው ውህደት። በፍለጋ ፕሮግራሙ ውስጥ የመዘግየቶችን ችግር ለመፍታት CI ተተግብሯል. ቀጣይነት ያለው ውህደት ችግሮችን በፍጥነት ለማወቅ እና ለመፍታት ረድቷል። አሁን CI በሁሉም የአይቲ ግዙፍ ዲፓርትመንቶች ጥቅም ላይ ይውላል።

ቀጣይነት ያለው ውህደት አነስተኛ ኩባንያዎችን ይረዳል, እና የሲአይ መሳሪያዎች በፋይናንሺያል እና የጤና እንክብካቤ ድርጅቶችም ይጠቀማሉ. ለምሳሌ፣ በማለዳስታር፣ ቀጣይነት ያለው የውህደት አገልግሎቶች ተጋላጭነቶችን በ70% በፍጥነት ለማስተካከል ረድተዋል። እና የ Philips Healthcare የህክምና መድረክ የሙከራ ዝመናዎችን ፍጥነት በእጥፍ ማሳደግ ችሏል።

መሳሪያዎች

ለ CI አንዳንድ ታዋቂ መሳሪያዎች እዚህ አሉ

  • ጄንከንዝ በጣም ታዋቂ ከሆኑ የ CI ስርዓቶች አንዱ ነው. ከተለያዩ ቪሲኤስ፣ ደመና መድረኮች እና ሌሎች አገልግሎቶች ጋር ለመዋሃድ ከአንድ ሺህ በላይ ተሰኪዎችን ይደግፋል። እንዲሁም ጄንኪንስን በ 1cloud: መሳሪያ እንጠቀማለን በእኛ DevOps ስርዓት ውስጥ ተካትቷል።. ለሙከራ የታሰበውን የጊት ቅርንጫፍ በየጊዜው ይፈትሻል።
  • buildbot - የራስዎን ቀጣይነት ያለው ውህደት ሂደቶችን ለመፃፍ የፓይቶን ማዕቀፍ። የመሳሪያው የመጀመሪያ ዝግጅት በጣም የተወሳሰበ ነው, ነገር ግን ይህ በሰፊው የማበጀት አማራጮች ይካሳል. በማዕቀፉ ውስጥ ካሉት ጥቅሞች መካከል ተጠቃሚዎች ዝቅተኛውን የሃብት ጥንካሬን ያጎላሉ.
  • ኮንፈረንስ CI የዶከር ኮንቴይነሮችን የሚጠቀም ፒቮታል አገልጋይ ነው። ኮንኮርስ CI ከማንኛውም መሳሪያዎች እና የስሪት ቁጥጥር ስርዓቶች ጋር ይዋሃዳል. አዘጋጆቹ ስርዓቱ በማንኛውም መጠን ውስጥ ባሉ ኩባንያዎች ውስጥ ለመስራት ተስማሚ መሆኑን ያስተውላሉ.
  • Gitlab CI በ GitLab ስሪት ቁጥጥር ስርዓት ውስጥ የተገነባ መሳሪያ ነው። አገልግሎቱ በደመና ውስጥ ይሰራል እና ለማዋቀር YAML ፋይሎችን ይጠቀማል። እንደ ኮንኮርስ፣ Gitlab CI ተፈጻሚ ይሆናል። የተለያዩ ሂደቶችን እርስ በርስ ለመለየት የሚረዱ የዶከር መያዣዎች.
  • የኮድነት ከ GitHub፣ GitLab እና BitBucket ጋር የሚሰራ የደመና ሲአይ አገልጋይ ነው። የመሳሪያ ስርዓቱ ረጅም የመጀመሪያ ማዋቀር አያስፈልገውም - መደበኛ ቅድመ-የተጫኑ CI ሂደቶች በ Codeship ውስጥ ይገኛሉ። ለአነስተኛ (በወር እስከ 100 የሚደርሱ ግንባታዎች) እና ክፍት ምንጭ ፕሮጀክቶች፣ Codeship በነጻ ይገኛል።

ከድርጅታችን ብሎግ የተገኙ ቁሳቁሶች፡-

ምንጭ: hab.com

አስተያየት ያክሉ