със сигурност е непълна без Дженкинс. Дженкинс заедно с Git е прекрасна комбинация. Така че в тази статия ще говоря за интеграцията на Jenkins Git и нейните предимства. Указателите, които ще покрием, са както следва:
Затова нека започнем с първата ни тема.
Какво е Git - Защо Git Влезе в съществуването?
Всички знаем „Необходимостта е майката на всички изобретения“. По подобен начин Git се появи, за да изпълни определени нужди, с които разработчиците са се сблъсквали преди Git. И така, нека направим крачка назад, за да научим всичко за системите за контрол на версиите (VCS) и как Git е възникнал.
Контрол на версиите е управлението на промени в документи, компютърни програми, големи уебсайтове и друго събиране на информация.
Има два вида VCS:
Централизирана система за контрол на версиите (CVCS)
Разпределена система за контрол на версиите (DVCS)
Централизиран VCS
Централизираната система за контрол на версиите (CVCS) използва централен сървър за съхраняване на всички файлове и дава възможност за екипна съвместна работа. Той работи върху едно хранилище, до което потребителите могат директно да имат достъп до централен сървър.
Моля, вижте диаграмата по-долу, за да получите по-добра представа за CVCS:
Хранилището в горната диаграма показва централен сървър, който може да бъде локален или отдалечен, който е директно свързан с всяка от работните станции на програмиста.
Всеки програмист може да извлече или актуализация техните работни станции с данните, налични в хранилището. Те също могат да правят промени в данните или ангажирам към хранилището. Всяка операция се извършва директно върху хранилището.
Въпреки че изглежда доста удобно да се поддържа едно хранилище, то има някои основни недостатъци. Някои от тях са:
Това не е локално достъпно, което означава, че винаги трябва да сте свързани към мрежа, за да извършите някакво действие.
Тъй като всичко е централизирано, във всеки случай на срив или повреда на централния сървър ще доведе до загуба на всички данни на проекта.
Това е мястото, където Distributed VCS решава проблема.
Разпределен VCS
Тези системи не разчитат непременно на централен сървър за съхраняване на всички версии на файл на проекта.В разпределената VCS всеки сътрудник има локално копие или „клонинг“ на основното хранилище. Тук всеки поддържа собствено локално хранилище, което съдържа всички файлове и метаданни, присъстващи в основното хранилище.
Ще го разберете по-добре, като се обърнете към диаграмата по-долу:
Както можете да видите в горната диаграма, всеки програмист поддържа локално хранилище самостоятелно, което всъщност е копието или клонингът на централното хранилище на техния твърд диск. Те могат да ангажират и актуализират своето локално хранилище без никаква намеса.
как да направя мощност в python
Те могат да актуализират своите локални хранилища с нови данни от централния сървър чрез операция, наречена „ дръпнете ”И да повлияе на промените в основното хранилище чрез операция, наречена„ натиснете ”От местното им хранилище.
Сега нека се опитаме да знаем за дефиницията на Git.
Git е разпределен инструмент за контрол на версиите, който поддържа разпределени нелинейни работни потоци чрез осигуряване на данни за разработване на качествен софтуер. Инструменти като Git позволяват комуникация между разработчиците и операционния екип.
Обикновено, когато разработвате голям проект, имате огромен брой сътрудници. Така че е много важно да имате комуникация между сътрудниците, докато правите промени в проекта.
Съобщенията за ангажиране в Git играят много важна роля в комуникацията между екипа. Освен комуникацията, най-важната причина да използвате Git е, че винаги имате стабилна версия на кода със себе си.
Следователно Git играе жизненоважна роля за успеха в DevOps.
Какво е Дженкинс?
Jenkins е инструмент за автоматизация с отворен код, написан на Java с приставки, създадени за целите на непрекъснатата интеграция. Jenkins се използва за непрекъснато изграждане и тестване на вашите софтуерни проекти, което улеснява разработчиците да интегрират промени в проекта и улеснява потребителите да получат нова компилация. Също така ви позволява непрекъснато да доставяте софтуера си, като се интегрирате с голям брой технологии за тестване и внедряване.
С Дженкинс организациите могат да ускорят процеса на разработване на софтуер чрез автоматизация. Дженкинс интегрира процеси на жизнен цикъл на разработки от всякакъв вид, включително изграждане, документиране, тестване, пакет, етап, внедряване, статичен анализ и много други.
Дженкинс постига непрекъсната интеграция с помощта на приставки. Приставките позволяват интегрирането на различни етапи на DevOps. Ако искате да интегрирате определен инструмент, трябва да инсталирате приставките за този инструмент. Например Git, проект Maven 2, Amazon EC2, HTML издател и т.н.
Предимствата на Дженкинс включват:
Това е инструмент с отворен код с голяма подкрепа от общността.
Твърде лесно за инсталиране.
Той има 1000+ плъгина, за да улесни работата ви. Ако приставка не съществува, можете да я кодирате и да я споделите с общността.
Безплатно е.
Той е изграден с Java и следователно е преносим за всички основни платформи.
Вече знаете как Дженкинс преодолява традиционните SDLC недостатъци. Таблицата по-долу показва сравнението между „Преди и след Дженкинс“.
Преди Дженкинс | След Дженкинс |
---|---|
Целият изходен код е изграден и след това тестван. Намирането и отстраняването на грешки в случай на неуспех при изграждането и теста беше трудно и отнема много време, което от своя страна забавя процеса на доставка на софтуера. | Всеки ангажимент, направен в изходния код, се изгражда и тества. Така че, вместо да проверяват целия изходен код, разработчиците трябва да се съсредоточат само върху определен ангажимент. Това води до чести нови версии на софтуера. |
Разработчиците трябва да изчакат резултатите от теста | Разработчиците знаят резултата от теста на всеки ангажимент, направен в изходния код при изпълнение. |
Целият процес е ръчен | Трябва само даизвършете промени в изходния код и Дженкинс ще автоматизира останалата част от процеса вместо вас. |
Защо Jenkins и Git се използват заедно?
Както беше обсъдено по-рано, Отивам е мениджър за контрол на източника. Това е мястото, където съхранявате изходния код за проследяване на всички промени в кода, които се случват с течение на времето, и за изходно ниво на версиите, когато са готови за пускане.
Дженкинс , от друга страна, е решение за непрекъсната интеграция. Създаден е за автоматизиране на повечето задачи, които разработчикът трябва да направи, докато разработва ново приложение (проверки на качеството на кода, изграждане, архивиране на артефакти на компилация, тестване на интеграция, внедряване в различни среди и т.н.) Без решение за CI, разработчик трябва да прекарва много време в тези повтарящи се непродуктивни задачи.
Предимства:
- И Гит и Дженкинс са много мощни, но с голяма сила идва голямата отговорност. Често се оправдава ненужно количество усложнение в изграждане на тръбопровод просто защото можете.
- Докато Дженкинс има много изискани трикове в ръкава си, лесно е да се възползвате от функциите на Git, тъй като прави управлението на изданията и проследяване на грешки значително по-лесно с течение на времето.
- Можем да направим това, като внимаваме за версиите на кода, които изграждаме, и ги маркираме по подходящ начин. Това запазва информация, свързана с изданието, близка до кода , за разлика от разчитането на номера на компилацията на Дженкинс или други имена.
- Защита на Git клонове намалява риска от човешка грешка и автоматизирането на колкото се може повече задачи намалява колко често трябва да досаждаме (или да чакаме) тези хора.
Пример:
Нека вземем примера на нова функция в уеб приложение. Разработчикът ще бъде идентифициран и назначен към задачата, той взема съществуващата кодова база от контролата Source - да речем, Git, прави своите промени, извършва тестване на модули, ръчно осигурява качеството на кода и проверява новия код обратно в Git.
След това той трябва да изгради кода, да го внедри в екземпляр на интеграция, да стартира тестване за интеграция и след като промяната изглежда задоволителна, да издигне заявка за внедряване на производството. Сега, само ако имахме миньон, който да се погрижи за това тестване, изграждане, проверки на качеството и раздели за разгръщане, лошият разработчик би могъл да се фокусира по-добре върху онези неща, в които е наистина добър - внедряване и подобряване на логиката на функцията.
Този миньон е Дженкинс. Той действа като оркестратор, за да изпълнява всички тези дейности, след като промяната бъде проверена в контрола на източника (Git) и по този начин дава бърза обратна връзка на разработчика дали промените, които е направил, са достатъчно добри за внедряване на производството или не.Той е изключително гъвкав, с отворен код и има много добавки, които могат да правят почти всичко, което пожелаете.
Демонстрация
Тук ще видим как да интегрираме Git с Дженкинс. Има 5 стъпки, които трябва да изпълните:
1. Създайте примерна програма:
Можете да създадете всяка примерна програма, която искате, като Java или Python или друга програма. Тук ще напишем просто Програма на Python който печата Здравей, Свят!
2. Създайте работа на Дженкинс:
Тук първо трябва започнете Дженкинс с помощта на командния ред.
За това първо трябва да отидете до местоположението на Дженкинс във вашата система и да използвате командата java -jar jenkins.war
След като изпълните тази команда, отворете уеб браузъра и отидете на началната страница на Дженкинс, като използвате връзката localhost: 8080 . Това е номерът на порта по подразбиране.
Отворете началната страница на Jenkins от въвеждане на потребителско име и парола.
За създаване на проект кликнете върху Нов продукт и въведете Име на проекта и изберете Проект за свободен стил . Щракнете върху OK.
3. Добавете тази програма към Github:
Отворете git bash на вашата система. Навигирайте до местоположението на вашата програма. Инициализирайте празно хранилище с помощта на командата git init .
Използвайте командата git add. за да добавите файла към подреждащата област от работната директория.
Сега добавете файла към локалното хранилище с помощта на командата git commit -m “добавен файл demo.py” .
Сега трябва натиснете този файл към отдалеченото хранилище. За целта отидете в акаунта си в GitHub и създайте ново публично хранилище. Сега копирайте местоположението на това хранилище и отидете на git bash терминал. Тук въведете командата git отдалечено добавяне на произход . Тъй като сега сте се свързали с отдалеченото хранилище, сега можете да натиснете кода си там, като използвате командата git push -u master master. За да проверите това, отидете в акаунта в GitHub и опреснете страницата. Ще видите файла, добавен там.
4. Добавете Git Plugin в Jenkins:
На началната страница на Дженкинс отидете на Управлявайте Дженкинс .
как да използвам изчаквам и уведомявам в
След това кликнете върху Управление на приставки . Тук проверете дали Git плъгин в инсталирания раздел. Ако не е наличен тук, потърсете го в наличния раздел и го изтеглете.
5. Конфигурирайте работата на Jenkins, за да задейства компилацията:
Отидете на проекта в Jenkins, който създадохме в стъпка 2. Тук, в раздела за управление на изходния код, изберете git и въведете връзката към публичното хранилище, което сте създали в стъпка 3. След това в Раздел „Изграждане на задействания“ , кликнете върху Опция SCM за анкета . Тук в частта „График“ трябва да въведете пет звездички, разделени с интервал. Това не е нищо друго освен cron синтаксис за вашата работа. Това означава, че Дженкинс ще проверява всяка промяна в изходния код всяка минута и ако има някаква промяна, това ще задейства изграждането на Дженкинс.
Кликнете върху Приложи и след това Запазете . След това на началната страница на вашия проект кликнете върху Изградете сега . Това ще стартира проекта и в изхода на конзолата можете да видите изхода на вашата програма състоянието на вашата работа на Дженкинс. Ако всичко е наред, то ще се покаже като Успех .
Ето как се прави интеграцията на Jenkins Git. С това стигнахме до края на тази статия за интеграцията на Jenkins Git. Надявам се тази статия да ви е харесала.
Сега, след като разбрахте какво Дженкинс Git интеграция е, вижте това от Edureka, доверена компания за онлайн обучение с мрежа от над 250 000 доволни учащи, разпространени по целия свят. Курсът за обучение за сертифициране Edureka DevOps помага на обучаващите се да разберат какво е DevOps и да придобият опит в различни процеси и инструменти на DevOps като Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack и GIT за автоматизиране на множество стъпки в SDLC.
Имате въпрос към нас? Моля, споменете го в раздела за коментари и ние ще се свържем с вас