Continuous integration
-
Upload
orgil-urtnasan -
Category
Technology
-
view
277 -
download
4
Transcript of Continuous integration
У.Оргил [email protected]
2012.04
¡ Зөвхөн програм бүрэн ажиллаж байгааг нягтлахад маш их цаг зарцуулдаг
¡ Төсөл томрох тусам улам бүр комплекс болж integration хийх нь маш их цаг авдаг.
¡ Програмын алдааг олоход удаан хугацаа зарцуулдаг
¡ Эдгээр хүндрэлийг багасгахад туслах аргачилал нь continuous integration юм.
¡ Аgile development-‐ын орчинд програмын хөгжүүлэлтийн явцыг байнгын хяналтанд байлгаж кодын чанарт хяналт тавих аргачилал юм.
¡ Алдааг эрт илрүүлнэ ¡ Хүний оролцоог багасгаж хяналтыг автоматжуулна
¡ Өөрчлөлт бүрт код анализ тайлан гаргана ¡ Unit test ажиллуулна ¡ Тухай бүрт нь кодын API баримтжуулалтыг хийнэ
¡ Хөгжүүлэгч хоорондын итгэлцэл
¡ Сервэр дээр build tool суурилна. ¡ Build tool нь XML хэлбэрээр тодорхойлогдсон код анализ болон үйлдлүүдийн дарааллыг агуулна.
¡ Сервергүйгээр дангаараа build tool ажиллах боломжтой.
¡ Сервер § Jenkins / Hudson – 300 гаруй нэмэлт § Cruise Control § Phpundercontrol § Travis
¡ Build tools § Apache Ant § Maven § Phing
¡ Хувилбар удирдах систем дэх өөрчлөлтийг Continuous Integration сервер мэдэрнэ.
¡ Build tool нь хяналтын багажуудыг ажиллуулж кодын өөрчлөлт болон нийт код дээр анализ хийнэ
¡ Бусад тохируулсан автомат үйлдлүүдийг хийнэ.
¡ Кодын чанар, алдаа гэх мэт үр дүнг хөгжүүлэгчид мэдэгдэнэ.
¡ Coding convention буюу кодын стандартад хяналт тавина
¡ Кодын модуль хоорондын хамаарлыг тодорхойлно
¡ DRY эсэхийг шалгана ¡ Тест ажиллуулж тайлан гаргана ¡ Code coverage буюу тест кодын хоорондын хамаарлыг гаргана
¡ Тохируулж өгсөн бусад үйлдлүүд
¡ Жишээ ¡ Тест амжилттай давсан тохиолдолд version-‐ыг нэмэгдүүлж файлуудыг zip байдлаар шахаад файлын нэрийг өөрчилж вэб серверлүү татах байдлаар хуулна. Мөн API баримтжуулалтыг public хэсэгт sftp (ssh, ftp) ашиглан хуулна.
¡ Асуулт?