اسان توهان کي ياد ڏياريون ٿا:"Habr" جي سڀني پڙهندڙن لاءِ - 10 روبل جي رعايت جڏهن "Habr" پروموشنل ڪوڊ استعمال ڪندي ڪنهن به اسڪل باڪس ڪورس ۾ داخلا.
وهڪري کي ڪنٽرول ڪرڻ لاءِ، توهان استعمال ڪري سگهو ٿا وسيع رينج جا اوزار، بشمول ادا ڪيل ۽ مڪمل طور تي مفت. هي آرٽيڪل بيان ڪري ٿو ڊولپرز جي وچ ۾ سڀ کان وڌيڪ مقبول حلن مان جيڪي هر پروگرامر لاء ڪارائتو ٿي سگهن ٿيون.
جينکن
مڪمل طور تي خودمختيار اوپن سورس آٽوميشن سرور. اهو ڪم ڪرڻ جي قابل آهي ته هر قسم جي ڪمن کي خودڪار ڪرڻ سان لاڳاپيل تعمير، جانچ، شپنگ، يا سافٽ ويئر کي ترتيب ڏيڻ.
گھٽ ۾ گھٽ پي سي گھرجون:
256 MB ريم، 1 GB فائل اسپيس.
بهترين:
1 GB ريم، 50 GB هارڊ ڊرائيو.
ڪم ڪرڻ لاءِ، توھان کي اضافي سافٽ ويئر جي ضرورت پوندي - Java Runtime Environment (JRE) ورجن 8.
فن تعمير (ورهايل ڪمپيوٽنگ) هن طرح ڏسڻ ۾ اچي ٿو:
جينڪنز سرور هڪ تنصيب آهي جيڪو GUI هوسٽنگ جي ذميوار آهي، انهي سان گڏ سڄي تعمير کي منظم ڪرڻ ۽ عمل ڪرڻ.
Jenkins Node/Slave/Build Server - ڊوائيس جيڪي ترتيب ڏئي سگھجن ٿيون ڪم انجام ڏيڻ لاءِ ماسٽر جي طرفان (ماسٽر نوڊ).
لينڪس لاء انسٽاليشن
پهرين توهان کي سسٽم ۾ جينڪنز مخزن کي شامل ڪرڻ جي ضرورت آهي:
ان کان پوء، جينڪنز سسٽم ۾ موجود هوندو ڊفالٽ پورٽ 8080 ذريعي.
ڪارڪردگي چيڪ ڪرڻ لاء، توهان کي برائوزر ۾ پتو کولڻ جي ضرورت آهي مقامي هلو:8080. سسٽم وري توهان کي روٽ استعمال ڪندڙ لاءِ ابتدائي پاسورڊ داخل ڪرڻ لاءِ چيو. هي پاسورڊ فائل ۾ موجود آهي /var/lib/jenkins/secrets/initialAdminPassword.
ھاڻي سڀ ڪجھ تيار آھي، توھان شروع ڪري سگھوٿا CI/CD فلوز ٺاهڻ. ورڪ بينچ جو گرافڪ انٽرفيس هن طرح ڏسڻ ۾ اچي ٿو:
جينڪنز طاقت:
ماسٽر/غلام فن تعمير پاران مهيا ڪيل اسپيبلٽي؛
REST XML/JSON API جي دستيابي؛
پلگ ان جي مهرباني سان وڏي تعداد ۾ ايڪسٽينشن کي ڳنڍڻ جي صلاحيت؛
فعال ۽ مسلسل ترقي ڪندڙ ڪميونٽي.
ڪن
ڪو به تجزياتي بلاڪ نه آهي؛
نه تمام صارف-دوست انٽرفيس.
ٽيمڪٽي
JetBrains کان تجارتي ترقي. سرور سادو سيٽ اپ ۽ هڪ بهترين انٽرفيس سان سٺو آهي. ڊفالٽ ٺاھ جوڙ ۾ وڏي تعداد ۾ افعال آھن، ۽ دستياب پلگ ان جو تعداد مسلسل وڌي رھيو آھي.
Java Runtime Environment (JRE) ورجن 8 جي ضرورت آهي.
سرور هارڊويئر گهرجون غير نازڪ آهن:
رام - 3,2 GB؛
پروسيسر - ٻه-ڪور، 3,2 GHz؛
1 Gb/s جي گنجائش سان ڪميونيڪيشن چينل.
سرور توهان کي اعلي ڪارڪردگي حاصل ڪرڻ جي اجازت ڏئي ٿو:
60 منصوبا 300 تعميراتي ترتيبن سان؛
تعمير لاگ لاءِ 2 MB مختص؛
50 بلڊ ايجنٽ؛
ويب ورزن ۾ 50 صارفين ۽ IDE ۾ 30 استعمال ڪندڙن سان ڪم ڪرڻ جي صلاحيت؛
ٻاهرين VCS جا 100 ڪنيڪشن، عام طور تي Perforce ۽ Subversion. سراسري تبديلي وقت آهي 120 سيڪنڊ؛
في ڏينهن 150 کان وڌيڪ تبديليون؛
ھڪڙي سرور تي ڊيٽابيس سان ڪم ڪرڻ؛
JVM سرور جي پروسيسنگ سيٽنگون: -Xmx1100m -XX:MaxPermSize=120m.
ايجنٽ جون گهرجون هلندڙ اسيمبلين تي ٻڌل آهن. سرور جو بنيادي ڪم سڀني ڳنڍيل ايجنٽن جي نگراني ڪرڻ ۽ انهن ايجنٽن کي قطار واري اسيمبليءَ کي ورهائڻ آهي مطابقت جي ضرورتن جي بنياد تي، نتيجن جي رپورٽ ڪرڻ. ايجنٽ مختلف پليٽ فارمن ۽ آپريٽنگ سسٽم ۾ ايندا آهن، انهي سان گڏ اڳ ۾ ترتيب ڏنل ماحول.
تعمير جي نتيجن بابت سڀ معلومات ڊيٽابيس ۾ محفوظ ٿيل آهي. بنيادي طور تي هي تاريخ آهي ۽ ٻيو ساڳيو ڊيٽا، VCS تبديليون، ايجنٽ، قطار ٺاهي، صارف اڪائونٽس ۽ اجازتون. ڊيٽابيس ۾ شامل نه آهي صرف تعمير لاگ ۽ نموني.
لينڪس لاء انسٽاليشن
ٽيم سٽي کي دستي طور تي انسٽال ڪرڻ لاءِ Tomcat servlet ڪنٽينر سان، توهان کي استعمال ڪرڻ گهرجي TeamCity آرڪائيو: TeamCity .tar.gz. ڊائون لوڊ ڪريو توھان ان کي ھتان حاصل ڪري سگھو ٿا.
tar -xfz TeamCity.tar.gz
/bin/runAll. sh [شروع|روڪ]
جڏهن توهان پهريون ڀيرو شروع ڪيو، توهان کي ڊيٽابيس جو قسم چونڊڻ جي ضرورت آهي جنهن ۾ اسيمبليء جي ڊيٽا محفوظ ڪئي ويندي.
ڊفالٽ ترتيب تي هلندو آهي مقامي هلو:8111/ هڪ ئي پي سي تي هلندڙ هڪ رجسٽرڊ بلڊ ايجنٽ سان.
TeamCity جي طاقت:
سادي ترتيب؛
صارف دوست انٽرويو؛
تعمير ٿيل افعال جو هڪ وڏو تعداد؛
سپورٽ سروس؛
اتي هڪ RESTful API آهي؛
سٺو دستاويز؛
سٺي سيڪيورٽي.
ڪن
محدود انضمام؛
هي هڪ ادا ڪيل اوزار آهي؛
ھڪڙو ننڍڙو ڪميونٽي (جيڪو، جيتوڻيڪ، وڌندڙ آھي).
GoCD
هڪ اوپن سورس پروجيڪٽ جنهن کي انسٽاليشن ۽ آپريشن لاءِ Java Runtime Environment (JRE) ورجن 8 جي ضرورت آهي.
سسٽم گهرجون:
رام - گهٽ ۾ گهٽ 1 GB، وڌيڪ بهتر آهي؛
پروسيسر - ٻه-ڪور، 2 GHz جي بنيادي تعدد سان؛
هارڊ ڊرائيو - گهٽ ۾ گهٽ 1 GB خالي جاءِ.
ايجنٽ:
رام - گهٽ ۾ گهٽ 128 ايم بي، وڌيڪ بهتر آهي؛
پروسيسر - گهٽ ۾ گهٽ 2 GHz.
سرور ايجنٽ جي آپريشن کي يقيني بڻائي ٿو ۽ صارف لاءِ آسان انٽرفيس مهيا ڪري ٿو:
مرحلا/ نوڪريون/ ڪم:
لينڪس لاء انسٽاليشن
گونج "بحث download.gocd.org /”| sudo tee /etc/apt/sources.list.d/gocd.list
ھڪڙي ڏسڻ ۾ قدم قدم GoCD جي ترتيب واري رستي کي ڏيکارڻ جي صلاحيت:
پائپ لائن جي جوڙجڪ جي شاندار ڊسپلي:
GoCD سڀ کان وڌيڪ مشهور بادل ماحول ۾ سي ڊي جي ڪم جي فلو کي بهتر بڻائي ٿو، بشمول Docker، AWS؛
اوزار ان کي ممڪن بڻائي ٿو پائپ لائن ۾ مسئلن کي درست ڪرڻ، جنهن جي لاءِ هر تبديلي جي ٽريڪنگ آهي وابستگي کان وٺي مقرري تائين حقيقي وقت ۾.
ڪن
گهٽ ۾ گهٽ هڪ ايجنٽ جي ضرورت آهي؛
سڀني مڪمل ٿيل ڪمن کي ڊسپلي ڪرڻ لاء ڪو ڪنسول نه آهي؛
هر حڪم تي عمل ڪرڻ لاء، توهان کي پائپ لائن جي جوڙجڪ لاء هڪ ڪم ٺاهڻ جي ضرورت آهي؛
پلگ ان کي انسٽال ڪرڻ لاءِ توھان کي .jar فائل ڏانھن منتقل ڪرڻ جي ضرورت آھي /plugins/external ۽ سرور کي ٻيهر شروع ڪريو؛
نسبتا ننڍڙو ڪميونٽي.
نتيجي طور
اهي صرف ٽي اوزار آهن، حقيقت ۾ ٻيا به ڪيترائي آهن. اهو چونڊڻ ڏکيو آهي، تنهنڪري توهان کي ضرور ضرور ڌيان ڏيڻ جي ضرورت آهي اضافي پهلوئن تي.
ٽول جو اوپن سورس ڪوڊ ان کي سمجهڻ ممڪن بڻائي ٿو ته اهو ڇا آهي، ان سان گڏ نيون خصوصيتون تيزيءَ سان شامل ڪريو. پر جيڪڏهن ڪجهه ڪم نٿو ڪري، ته توهان کي صرف پنهنجو پاڻ تي ۽ ڪميونٽي جي مدد تي ڀروسو ڪرڻو پوندو. ادا ڪيل اوزار مدد مهيا ڪن ٿيون جيڪي ڪڏهن ڪڏهن نازڪ ٿي سگهن ٿيون.
جيڪڏهن سيڪيورٽي توهان جي اولين ترجيح آهي، اهو هڪ مقامي اوزار سان ڪم ڪرڻ جي قابل آهي. جيڪڏهن نه، پوء هڪ SaaS حل چونڊڻ هڪ سٺو اختيار آهي.
۽ آخر ۾، يقيني بڻائڻ لاءِ هڪ واقعي مؤثر مسلسل تعیناتي واري عمل کي، توهان کي معيار ٺاهڻ جي ضرورت آهي جنهن جي وضاحت توهان کي اجازت ڏين ته توهان دستياب اوزارن جي حد کي تنگ ڪري سگهو ٿا.