குறிப்பு: தொடர்ச்சியான ஒருங்கிணைப்பு செயல்முறை எவ்வாறு செயல்படுகிறது

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

குறிப்பு: தொடர்ச்சியான ஒருங்கிணைப்பு செயல்முறை எவ்வாறு செயல்படுகிறது
/flickr/ அல்டுக் கரகோக் / CC BY / புகைப்படம் மாற்றப்பட்டது

கால

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

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

தொடர்ச்சியான ஒருங்கிணைப்பு என்ற சொல் முதன்முதலில் 1991 இல் தோன்றியது. இது UML மொழியை உருவாக்கியவரால் அறிமுகப்படுத்தப்பட்டது கிரேடி புட்ச் (கிரேடி பூச்). பொறியாளர் தனது சொந்த வளர்ச்சி நடைமுறையின் ஒரு பகுதியாக CI என்ற கருத்தை அறிமுகப்படுத்தினார் - பூச் முறை. இது பொருள் சார்ந்த அமைப்புகளை வடிவமைக்கும் போது கட்டிடக்கலையின் அதிகரிக்கும் சுத்திகரிப்பைக் குறிக்கிறது. தொடர்ச்சியான ஒருங்கிணைப்புக்கான எந்த தேவைகளையும் கிரேடி விவரிக்கவில்லை. ஆனால் பின்னர் அவரது புத்தகத்தில் "பயன்பாடுகளுடன் பொருள் சார்ந்த பகுப்பாய்வு மற்றும் வடிவமைப்பு"உள் வெளியீடுகளின்" வெளியீட்டை விரைவுபடுத்துவதே முறையின் குறிக்கோள் என்று அவர் கூறினார்.

கதை

1996 இல், CI முறையை உருவாக்கியவர்களால் ஏற்றுக்கொள்ளப்பட்டது தீவிர நிரலாக்க (எக்ஸ்பி) - கென்ட் பெக் (கென்ட் பெக்) மற்றும் ரான் ஜெஃப்ரிஸ் (ரான் ஜெஃப்ரிஸ்). தொடர்ச்சியான ஒருங்கிணைப்பு அவர்களின் அணுகுமுறையின் பன்னிரண்டு முக்கிய கொள்கைகளில் ஒன்றாக மாறியது. XP இன் நிறுவனர்கள் CI முறைக்கான தேவைகளை தெளிவுபடுத்தினர் மற்றும் ஒரு நாளைக்கு பல முறை திட்டத்தை உருவாக்க வேண்டியதன் அவசியத்தை குறிப்பிட்டனர்.

2000 களின் முற்பகுதியில், சுறுசுறுப்பான கூட்டணியின் நிறுவனர்களில் ஒருவர் தொடர்ச்சியான ஒருங்கிணைப்பு முறையை ஊக்குவிக்கத் தொடங்கினார். மார்ட்டின் ஃபோலர் (மார்ட்டின் ஃபோலர்). CI உடனான அவரது சோதனைகள் இந்த பகுதியில் முதல் மென்பொருள் கருவிக்கு வழிவகுத்தது - CruiseControl. மார்ட்டினின் சக ஊழியரான மேத்யூ ஃபோமெல் என்பவரால் இந்த பயன்பாடு உருவாக்கப்பட்டது.

கருவியில் உள்ள உருவாக்க சுழற்சி ஒரு டீமனாக செயல்படுத்தப்படுகிறது, இது குறியீட்டு தளத்தில் ஏற்படும் மாற்றங்களுக்கு பதிப்பு கட்டுப்பாட்டு அமைப்பை அவ்வப்போது சரிபார்க்கிறது. தீர்வு இன்று பதிவிறக்கம் செய்யலாம் - அது வழங்கியது BSD போன்ற உரிமத்தின் கீழ்.

CI க்கான மென்பொருள் வருகையுடன், மேலும் பல நிறுவனங்கள் இந்த நடைமுறையைப் பின்பற்றத் தொடங்கின. ஃபாரெஸ்டர் ஆராய்ச்சியின் படி [பக்கம் 5 அறிக்கை], 2009 இல், கணக்கெடுக்கப்பட்ட ஐம்பது தொழில்நுட்ப நிறுவனங்களில் 86% CI முறைகளைப் பயன்படுத்தியது அல்லது செயல்படுத்தப்பட்டது.

இன்று, தொடர்ச்சியான ஒருங்கிணைப்பு நடைமுறையானது பல்வேறு வகையான தொழில்களில் இருந்து நிறுவனங்களால் பயன்படுத்தப்படுகிறது. 2018 ஆம் ஆண்டில், ஒரு பெரிய கிளவுட் வழங்குநர் சேவைகள், கல்வி மற்றும் நிதித் துறைகளில் உள்ள நிறுவனங்களின் ஐடி நிபுணர்களிடையே ஒரு கணக்கெடுப்பை நடத்தினார். பதிலளித்த ஆறாயிரம் பேரில், 58% பேர் தங்கள் வேலையில் CI கருவிகள் மற்றும் கொள்கைகளைப் பயன்படுத்துவதாகக் கூறினர்.

இது எப்படி வேலை செய்கிறது

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

பொதுவான செயல்முறை வரைபடத்தை பின்வருமாறு குறிப்பிடலாம்:

குறிப்பு: தொடர்ச்சியான ஒருங்கிணைப்பு செயல்முறை எவ்வாறு செயல்படுகிறது

CI முறையானது டெவலப்பர்களுக்கு பல தேவைகளை வழங்குகிறது:

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

செயல்படுத்துவதில் சிரமங்கள்

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

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

ஆய்வுகளின்படி [பக்கம் 14 கட்டுரைகள்], தொடர்ச்சியான ஒருங்கிணைப்பு நிறுவன ஊழியர்களின் சுமையை அதிகரிக்கிறது (குறைந்தது முதலில்). அவர்கள் புதிய கருவிகளைக் கற்றுக் கொள்ள வேண்டும், மேலும் சக ஊழியர்கள் எப்போதும் பயிற்சிக்கு உதவ மாட்டார்கள். எனவே, நீங்கள் பறக்கும்போது புதிய கட்டமைப்புகள் மற்றும் சேவைகளை சமாளிக்க வேண்டும்.

மூன்றாவது சிரமம் ஆட்டோமேஷனில் உள்ள சிக்கல்கள். தானியங்குச் சோதனைகளால் மூடப்படாத பெரிய அளவிலான மரபுக் குறியீட்டைக் கொண்ட நிறுவனங்கள் இந்தச் சிக்கலை எதிர்கொள்கின்றன. CI ஐ முழுமையாக செயல்படுத்துவதற்கு முன்பு குறியீடு வெறுமனே மீண்டும் எழுதப்பட்டது என்ற உண்மைக்கு இது வழிவகுக்கிறது.

குறிப்பு: தொடர்ச்சியான ஒருங்கிணைப்பு செயல்முறை எவ்வாறு செயல்படுகிறது
/flickr/ theilr / CC BY-SA

யார் பயன்படுத்துகிறார்கள்

ஐடி ஜாம்பவான்கள் இந்த முறையின் நன்மைகளைப் பாராட்டியவர்களில் முதன்மையானவர்கள். கூகிள் பயன்கள் 2000 களின் நடுப்பகுதியில் இருந்து தொடர்ச்சியான ஒருங்கிணைப்பு. தேடுபொறியில் ஏற்படும் தாமதங்களின் சிக்கலைத் தீர்க்க CI செயல்படுத்தப்பட்டது. தொடர்ச்சியான ஒருங்கிணைப்பு சிக்கல்களை விரைவாகக் கண்டறிந்து தீர்க்க உதவியது. இப்போது CI ஐ ஐடி நிறுவனங்களின் அனைத்து துறைகளிலும் பயன்படுத்தப்படுகிறது.

தொடர்ச்சியான ஒருங்கிணைப்பு சிறிய நிறுவனங்களுக்கும் உதவுகிறது, மேலும் CI கருவிகள் நிதி மற்றும் சுகாதார நிறுவனங்களால் பயன்படுத்தப்படுகின்றன. எடுத்துக்காட்டாக, மார்னிங்ஸ்டாரில், தொடர்ச்சியான ஒருங்கிணைப்புச் சேவைகள் பாதிப்புகளை 70% வேகமாகப் பொருத்த உதவியது. மேலும் Philips Healthcare மருத்துவ தளம் சோதனை புதுப்பிப்புகளின் வேகத்தை இரட்டிப்பாக்க முடிந்தது.

கருவிகள்

CIக்கான சில பிரபலமான கருவிகள் இங்கே:

  • ஜென்கின்ஸ் மிகவும் பிரபலமான CI அமைப்புகளில் ஒன்றாகும். பல்வேறு VCS, கிளவுட் இயங்குதளங்கள் மற்றும் பிற சேவைகளுடன் ஒருங்கிணைப்பதற்கு இது ஆயிரத்துக்கும் மேற்பட்ட செருகுநிரல்களை ஆதரிக்கிறது. நாங்கள் 1கிளவுடு: கருவியிலும் ஜென்கின்ஸ் பயன்படுத்துகிறோம் எங்கள் DevOps அமைப்பில் சேர்க்கப்பட்டுள்ளது. சோதனைக்காக இருக்கும் Git கிளையை அவர் அடிக்கடி சரிபார்க்கிறார்.
  • பில்ட்போட் — உங்கள் சொந்த தொடர்ச்சியான ஒருங்கிணைப்பு செயல்முறைகளை எழுதுவதற்கான பைதான் கட்டமைப்பு. கருவியின் ஆரம்ப அமைப்பு மிகவும் சிக்கலானது, ஆனால் இது பரந்த தனிப்பயனாக்குதல் விருப்பங்களால் ஈடுசெய்யப்படுகிறது. கட்டமைப்பின் நன்மைகளில், பயனர்கள் அதன் குறைந்த வள தீவிரத்தை முன்னிலைப்படுத்துகின்றனர்.
  • கான்கோர்ஸ் சி.ஐ. டோக்கர் கொள்கலன்களைப் பயன்படுத்தும் பிவோட்டலின் சேவையகம். Concourse CI எந்த கருவிகள் மற்றும் பதிப்பு கட்டுப்பாட்டு அமைப்புகளுடன் ஒருங்கிணைக்கிறது. டெவலப்பர்கள் இந்த அமைப்பு எந்த அளவிலான நிறுவனங்களிலும் வேலை செய்ய ஏற்றது என்று குறிப்பிடுகின்றனர்.
  • கிட்லாப் சிஐ GitLab பதிப்பு கட்டுப்பாட்டு அமைப்பில் கட்டமைக்கப்பட்ட ஒரு கருவியாகும். சேவையானது மேகக்கணியில் இயங்குகிறது மற்றும் கட்டமைப்புக்கு YAML கோப்புகளைப் பயன்படுத்துகிறது. கான்கோர்ஸைப் போலவே, கிட்லாப் சிஐ பொருந்தும் வெவ்வேறு செயல்முறைகளை ஒருவருக்கொருவர் தனிமைப்படுத்த உதவும் டோக்கர் கொள்கலன்கள்.
  • குறியீடு GitHub, GitLab மற்றும் BitBucket உடன் வேலை செய்யும் கிளவுட் CI சர்வர் ஆகும். இயங்குதளத்திற்கு நீண்ட ஆரம்ப அமைப்பு தேவையில்லை - நிலையான முன் நிறுவப்பட்ட CI செயல்முறைகள் கோட்ஷிப்பில் கிடைக்கின்றன. சிறிய (மாதத்திற்கு 100 கட்டிடங்கள் வரை) மற்றும் திறந்த மூல திட்டங்களுக்கு, கோட்ஷிப் இலவசமாகக் கிடைக்கும்.

எங்கள் நிறுவன வலைப்பதிவில் இருந்து பொருட்கள்:

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

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