Jenkins - คู่มือฉบับย่อ

ทำไมต้อง Jenkins?

Jenkins เป็นซอฟต์แวร์ที่ช่วยให้ continuous integration. Jenkins จะถูกติดตั้งบนเซิร์ฟเวอร์ที่จะมีการสร้างส่วนกลาง ผังงานต่อไปนี้แสดงให้เห็นถึงขั้นตอนการทำงานที่เรียบง่ายเกี่ยวกับวิธีการทำงานของ Jenkins

นอกจากเจนกินส์แล้วบางครั้งเราอาจเห็นความสัมพันธ์ของ Hudson. ฮัดสันเป็นเครื่องมือบูรณาการต่อเนื่องบน Java แบบโอเพนซอร์สที่ได้รับความนิยมอย่างมากซึ่งพัฒนาโดย Sun Microsystems ซึ่งต่อมา Oracle ซื้อกิจการ หลังจากการเข้าซื้อกิจการ Sun โดย Oracle ทางแยกถูกสร้างขึ้นจากซอร์สโค้ดฮัดสันซึ่งนำมาซึ่งการเปิดตัวของเจนกินส์

การบูรณาการแบบต่อเนื่องคืออะไร?

การบูรณาการอย่างต่อเนื่องเป็นแนวทางปฏิบัติในการพัฒนาที่ต้องการให้นักพัฒนารวมโค้ดเข้ากับที่เก็บที่ใช้ร่วมกันในช่วงเวลาปกติ แนวคิดนี้มีขึ้นเพื่อขจัดปัญหาในการค้นหาปัญหาที่เกิดขึ้นในภายหลังในวงจรชีวิตของบิลด์ การผสานรวมอย่างต่อเนื่องต้องการให้นักพัฒนามีการสร้างบ่อยๆ แนวทางปฏิบัติทั่วไปคือเมื่อใดก็ตามที่เกิดการคอมมิตโค้ดควรทริกเกอร์บิวด์

ความต้องการของระบบ

JDK JDK 1.5 ขึ้นไป
หน่วยความจำ RAM 2 GB (แนะนำ)
พื้นที่ดิสก์ ไม่มีข้อกำหนดขั้นต่ำ โปรดทราบว่าเนื่องจากบิวด์ทั้งหมดจะถูกเก็บไว้ในเครื่อง Jenkins จึงต้องมั่นใจว่ามีเนื้อที่ดิสก์เพียงพอสำหรับการจัดเก็บบิลด์
เวอร์ชันระบบปฏิบัติการ สามารถติดตั้ง Jenkins บน Windows, Ubuntu / Debian, Red Hat / Fedora / CentOS, MacOS X, openSUSE, FReeBSD, OpenBSD, Gentoo
คอนเทนเนอร์ Java ไฟล์ WAR สามารถรันในคอนเทนเนอร์ใดก็ได้ที่รองรับ Servlet 2.4 / JSP 2.0 หรือใหม่กว่า (ตัวอย่างคือ Tomcat 5)

ดาวน์โหลด Jenkins

เว็บไซต์อย่างเป็นทางการสำหรับเจนกินส์เจนกินส์ หากคุณคลิกลิงก์ที่ระบุคุณจะได้รับหน้าแรกของเว็บไซต์ทางการของ Jenkins ดังที่แสดงด้านล่าง

โดยค่าเริ่มต้นรุ่นล่าสุดและรุ่นการสนับสนุนระยะยาวจะพร้อมให้ดาวน์โหลด นอกจากนี้ยังมีให้ดาวน์โหลดรุ่นที่ผ่านมา คลิกแท็บ Long-Term Support Release ในส่วนดาวน์โหลด

คลิกลิงก์“ เวอร์ชันเก่า แต่เสถียร” เพื่อดาวน์โหลดไฟล์ Jenkins war

เริ่มต้น Jenkins

เปิดพรอมต์คำสั่ง จากพรอมต์คำสั่งเรียกดูไดเร็กทอรีที่มีไฟล์ jenkins.war รันคำสั่งต่อไปนี้

D:\>Java –jar Jenkins.war

หลังจากรันคำสั่งงานต่างๆจะทำงานหนึ่งในนั้นคือการแตกไฟล์ war ซึ่งทำโดยเว็บเซิร์ฟเวอร์แบบฝังที่เรียกว่า winstone

D:\>Java –jar Jenkins.war
Running from: D:\jenkins.war
Webroot: $user.home/ .jenkins
Sep 29, 2015 4:10:46 PM winstone.Logger logInternal
INFO: Beginning extraction from war file

เมื่อการประมวลผลเสร็จสมบูรณ์โดยไม่มีข้อผิดพลาดที่สำคัญบรรทัดต่อไปนี้จะปรากฏในผลลัพธ์ของพรอมต์คำสั่ง

INFO: Jenkins is fully up and running

การเข้าถึง Jenkins

เมื่อ Jenkins พร้อมใช้งานแล้วเราสามารถเข้าถึง Jenkins ได้จากลิงค์ - http://localhost:8080

ลิงก์นี้จะแสดงแดชบอร์ด Jenkins

ต้องปฏิบัติตามข้อกำหนดเบื้องต้นต่อไปนี้สำหรับการตั้งค่า Jenkins Tomcat

ขั้นตอนที่ 1: ตรวจสอบการติดตั้ง Java

ในการตรวจสอบการติดตั้ง Java ให้เปิดคอนโซลและดำเนินการคำสั่ง java ต่อไปนี้

ระบบปฏิบัติการ งาน คำสั่ง
Windows เปิดคอนโซลคำสั่ง \> java - รุ่น
ลินุกซ์ เปิดเทอร์มินัลคำสั่ง $ java -version

หาก Java ได้รับการติดตั้งอย่างถูกต้องบนระบบของคุณคุณควรได้รับหนึ่งในผลลัพธ์ต่อไปนี้ขึ้นอยู่กับแพลตฟอร์มที่คุณกำลังทำงานอยู่

ระบบปฏิบัติการ เอาต์พุต
Windows

เวอร์ชัน Java "1.7.0_60"

Java (TM) SE Run Time Environment (บิวด์ 1.7.0_60-b19)

Java Hotspot (TM) 64-bit Server VM (build 24.60-b09, mixed mode)

ลินุกซ์

เวอร์ชัน java "1.7.0_25"

เปิด JDK Runtime Environment (rhel-2.3.10.4.el6_4-x86_64)

เปิด JDK 64-Bit Server VM (สร้าง 23.7-b01 โหมดผสม)

เราถือว่าผู้อ่านของบทช่วยสอนนี้ติดตั้ง Java 1.7.0_60 ในระบบของตนก่อนดำเนินการสำหรับบทช่วยสอนนี้

ในกรณีที่คุณไม่มี Java JDK คุณสามารถดาวน์โหลดได้จากลิงค์Oracle

ขั้นตอนที่ 2: ตรวจสอบการติดตั้ง Java

ตั้งค่าตัวแปรสภาวะแวดล้อม JAVA_HOME ให้ชี้ไปยังตำแหน่งไดเร็กทอรีฐานที่ติดตั้ง Java บนเครื่องของคุณ ตัวอย่างเช่น,

ระบบปฏิบัติการ เอาต์พุต
Windows ตั้งค่าตัวแปรสภาพแวดล้อม JAVA_HOME เป็น C: \ ProgramFiles \ java \ jdk1.7.0_60
ลินุกซ์ ส่งออก JAVA_HOME = / usr / local / java-current

ผนวกพา ธ แบบเต็มของตำแหน่งคอมไพเลอร์ Java เข้ากับ System Path

ระบบปฏิบัติการ เอาต์พุต
Windows ต่อท้ายสตริง; C: \ Program Files \ Java \ jdk1.7.0_60 \ bin ต่อท้ายตัวแปรระบบ PATH
ลินุกซ์ ส่งออก PATH = $ PATH: $ JAVA_HOME / bin /

ตรวจสอบคำสั่ง java-version จาก command prompt ตามที่อธิบายไว้ข้างต้น

ขั้นตอนที่ 3: ดาวน์โหลด Tomcat

เว็บไซต์อย่างเป็นทางการสำหรับคราวเป็นTomcat หากคุณคลิกลิงก์ที่ระบุคุณจะได้รับหน้าแรกของเว็บไซต์ทางการของ tomcat ดังที่แสดงด้านล่าง

เรียกดูลิงค์ https://tomcat.apache.org/download-70.cgi เพื่อดาวน์โหลด tomcat

ไปที่ส่วน 'การแจกแจงแบบไบนารี' ดาวน์โหลดไฟล์ zip Windows 32 บิต

จากนั้นคลายซิปเนื้อหาของไฟล์ zip ที่ดาวน์โหลดมา

ขั้นตอนที่ 4: การตั้งค่า Jenkins และ Tomcat

คัดลอกไฟล์ Jenkis.war ซึ่งดาวน์โหลดจากส่วนก่อนหน้าและคัดลอกไปยังโฟลเดอร์ webapps ในโฟลเดอร์ tomcat

ตอนนี้เปิดพรอมต์คำสั่ง จากพรอมต์คำสั่งเรียกดูไดเร็กทอรีที่โฟลเดอร์ tomcat7 เป็นตำแหน่ง เรียกดูไดเร็กทอรี bin ในโฟลเดอร์นี้และเรียกใช้ไฟล์ start.bat

E:\Apps\tomcat7\bin>startup.bat

เมื่อการประมวลผลเสร็จสมบูรณ์โดยไม่มีข้อผิดพลาดที่สำคัญบรรทัดต่อไปนี้จะปรากฏในผลลัพธ์ของพรอมต์คำสั่ง

INFO: Server startup in 1302 ms

เปิดเบราว์เซอร์และไปที่ลิงค์ - http://localhost:8080/jenkins. เจนกินส์จะขึ้นและวิ่งบนแมวตัวผู้

สำหรับแบบฝึกหัดนี้คุณต้องตรวจสอบให้แน่ใจว่ามีการเชื่อมต่ออินเทอร์เน็ตจากเครื่องที่ติดตั้ง Jenkins ใน Jenkins Dashboard (หน้าจอหลัก) ให้คลิกตัวเลือก Manage Jenkins ทางด้านซ้ายมือ

ในหน้าจอถัดไปให้คลิกตัวเลือก "จัดการปลั๊กอิน"

ในหน้าจอถัดไปคลิกแท็บพร้อมใช้งาน แท็บนี้จะแสดงรายการปลั๊กอินที่สามารถดาวน์โหลดได้ ในแท็บ 'ตัวกรอง' ให้พิมพ์ 'Git plugin'

จากนั้นรายการจะถูกกรอง ตรวจสอบตัวเลือก Git Plugin และคลิกที่ปุ่ม 'ติดตั้งโดยไม่ต้องรีสตาร์ท'

จากนั้นการติดตั้งจะเริ่มขึ้นและหน้าจอจะรีเฟรชเพื่อแสดงสถานะของการดาวน์โหลด

เมื่อการติดตั้งทั้งหมดเสร็จสมบูรณ์ให้รีสตาร์ท Jenkins โดยใช้คำสั่งต่อไปนี้ในเบราว์เซอร์ http://localhost:8080/jenkins/restart

หลังจาก Jenkins รีสตาร์ทแล้ว Git จะพร้อมใช้งานเป็นตัวเลือกในขณะที่กำหนดค่างาน ในการตรวจสอบให้คลิกที่รายการใหม่ในตัวเลือกเมนูสำหรับ Jenkins จากนั้นป้อนชื่องานในกรณีต่อไปนี้ชื่อที่ป้อนคือ 'สาธิต' เลือก 'โครงการฟรีสไตล์' เป็นประเภทรายการ คลิกปุ่มตกลง

ในหน้าจอถัดไปหากคุณเรียกดูส่วนการจัดการซอร์สโค้ดตอนนี้คุณจะเห็น 'Git' เป็นตัวเลือก

ขั้นตอนที่ 1: ดาวน์โหลดและตั้งค่า Maven

เว็บไซต์อย่างเป็นทางการสำหรับ Maven คือApache Maven หากคุณคลิกลิงก์ที่ระบุคุณจะได้รับหน้าแรกของเว็บไซต์ทางการของ maven ดังที่แสดงด้านล่าง

ขณะเรียกดูไซต์ให้ไปที่ส่วนไฟล์และดาวน์โหลดลิงก์ไปยังไฟล์ Binary.zip

เมื่อดาวน์โหลดไฟล์แล้วให้แตกไฟล์ไปยังโฟลเดอร์แอพพลิเคชั่นที่เกี่ยวข้อง เพื่อจุดประสงค์นี้ไฟล์ maven จะถูกวางไว้ใน E: \ Apps \ apache-maven-3.3.3

ขั้นตอนที่ 2: การตั้งค่า Jenkins และ Maven

ในแดชบอร์ด Jenkins (หน้าจอหลัก) ให้คลิก Manage Jenkins จากเมนูด้านซ้ายมือ

จากนั้นคลิกที่ 'กำหนดค่าระบบ' จากด้านขวามือ

ในหน้าจอกำหนดค่าระบบให้เลื่อนลงมาจนเห็นส่วน Maven จากนั้นคลิกที่ปุ่ม 'เพิ่ม Maven'

ยกเลิกการเลือกตัวเลือก "ติดตั้งอัตโนมัติ"

เพิ่มชื่อสำหรับการตั้งค่าและตำแหน่งของ MAVEN_HOME

จากนั้นคลิกที่ปุ่ม "บันทึก" ที่ท้ายหน้าจอ

ตอนนี้คุณสามารถสร้างงานด้วยตัวเลือก 'Maven project' ในแดชบอร์ด Jenkins คลิกตัวเลือก New Item

คุณอาจเคยเห็นสองสามครั้งในแบบฝึกหัดก่อนหน้านี้ซึ่งเราต้องกำหนดค่าตัวเลือกภายในเจนกินส์ ต่อไปนี้แสดงตัวเลือกการกำหนดค่าต่างๆใน Jenkins

ดังนั้นเราสามารถรับตัวเลือกการกำหนดค่าต่างๆสำหรับ Jenkins ได้โดยคลิกตัวเลือก 'Manage Jenkins' จากด้านซ้ายมือของเมนู

จากนั้นคุณจะเห็นหน้าจอต่อไปนี้ -

คลิกที่ Configure system ด้านล่างนี้คือการตั้งค่าคอนฟิกของ Jenkins ซึ่งสามารถทำได้

เจนกินส์โฮมไดเร็กทอรี

Jenkins ต้องการพื้นที่ว่างบนดิสก์เพื่อสร้างและเก็บไฟล์เก็บถาวร สามารถตรวจสอบตำแหน่งนี้ได้จากหน้าจอการกำหนดค่าของ Jenkins โดยค่าเริ่มต้นจะตั้งค่าเป็น ~ / .jenkins และตำแหน่งนี้จะถูกเก็บไว้ในตำแหน่งโปรไฟล์ผู้ใช้ของคุณในขั้นต้น ในสภาพแวดล้อมที่เหมาะสมคุณต้องเปลี่ยนตำแหน่งนี้เป็นตำแหน่งที่เพียงพอเพื่อจัดเก็บงานสร้างและที่เก็บถาวรที่เกี่ยวข้องทั้งหมด ครั้งเดียวสามารถทำได้ด้วยวิธีต่อไปนี้

  • ตั้งค่าตัวแปรสภาวะแวดล้อม "JENKINS_HOME" เป็นโฮมไดเร็กทอรีใหม่ก่อนที่จะเปิดใช้งานคอนเทนเนอร์ servlet

  • ตั้งค่าคุณสมบัติระบบ "JENKINS_HOME" เป็นคอนเทนเนอร์ servlet

  • ตั้งค่ารายการสภาวะแวดล้อม JNDI "JENKINS_HOME" เป็นไดเร็กทอรีใหม่

ตัวอย่างต่อไปนี้จะใช้ตัวเลือกแรกในการตั้งค่าตัวแปรสภาพแวดล้อม "JENKINS_HOME"

ขั้นแรกให้สร้างโฟลเดอร์ใหม่ E: \ Apps \ Jenkins คัดลอกเนื้อหาทั้งหมดจาก ~ / .jenkins ที่มีอยู่ไปยังไดเร็กทอรีใหม่นี้

ตั้งค่าตัวแปรสภาวะแวดล้อม JENKINS_HOME ให้ชี้ไปยังตำแหน่งไดเร็กทอรีฐานที่ติดตั้ง Java บนเครื่องของคุณ ตัวอย่างเช่น,

ระบบปฏิบัติการ เอาต์พุต
Windows ตั้งค่าตัวแปรด้านสิ่งแวดล้อม JENKINS_HOME ตามที่ตั้งที่คุณต้องการ ดังตัวอย่างคุณสามารถตั้งค่าเป็น E: \ Apps \ Jenkins
ลินุกซ์ ส่งออก JENKINS_HOME = / usr / local / Jenkins หรือสถานที่ที่คุณต้องการ

ในแดชบอร์ด Jenkins คลิก Manage Jenkins จากเมนูด้านซ้ายมือ จากนั้นคลิกที่ 'กำหนดค่าระบบ' จากด้านขวามือ

ในโฮมไดเร็กทอรีคุณจะเห็นไดเร็กทอรีใหม่ซึ่งได้รับการกำหนดค่าแล้ว

# ของผู้ดำเนินการ

นี่หมายถึงจำนวนการประหารชีวิตงานพร้อมกันทั้งหมดที่สามารถเกิดขึ้นบนเครื่อง Jenkins สิ่งนี้สามารถเปลี่ยนแปลงได้ตามข้อกำหนด บางครั้งคำแนะนำคือให้ใช้หมายเลขนี้เหมือนกับจำนวน CPU บนเครื่องเพื่อประสิทธิภาพที่ดีขึ้น

ตัวแปรสภาพแวดล้อม

ใช้เพื่อเพิ่มตัวแปรสภาพแวดล้อมแบบกำหนดเองซึ่งจะใช้กับงานทั้งหมด นี่คือคู่คีย์ - ค่าและสามารถเข้าถึงและใช้ในบิลด์ได้ทุกที่ที่ต้องการ

URL ของ Jenkins

ตามค่าเริ่มต้น Jenkins URL จะชี้ไปที่ localhost หากคุณมีการตั้งค่าชื่อโดเมนสำหรับเครื่องของคุณให้ตั้งค่านี้เป็นชื่อโดเมนอื่นเขียนทับ localhost ด้วย IP ของเครื่อง สิ่งนี้จะช่วยในการตั้งค่าทาสและในขณะที่ส่งลิงก์โดยใช้อีเมลเนื่องจากคุณสามารถเข้าถึง URL ของเจนกินส์ได้โดยตรงโดยใช้ตัวแปรสภาพแวดล้อม JENKINS_URL ซึ่งสามารถเข้าถึงได้ในชื่อ $ {JENKINS_URL}

การแจ้งเตือนทางอีเมล

ในพื้นที่การแจ้งเตือนทางอีเมลคุณสามารถกำหนดการตั้งค่า SMTP สำหรับการส่งอีเมล สิ่งนี้จำเป็นสำหรับ Jenkins เพื่อเชื่อมต่อกับเซิร์ฟเวอร์อีเมล SMTP และส่งอีเมลไปยังรายชื่อผู้รับ

ในการจัดการ Jenkins ให้คลิกที่ตัวเลือก 'Manage Jenkins' จากด้านซ้ายมือของเมนู

ดังนั้นเราสามารถรับตัวเลือกการกำหนดค่าต่างๆสำหรับ Jenkins ได้โดยคลิกตัวเลือก 'Manage Jenkins' จากด้านซ้ายมือของเมนู

จากนั้นคุณจะเห็นหน้าจอต่อไปนี้ -

ตัวเลือกการจัดการบางส่วนมีดังนี้ -

กำหนดค่าระบบ

นี่คือที่ที่เราสามารถจัดการพา ธ ไปยังเครื่องมือต่างๆที่จะใช้ในบิลด์เช่น JDKs เวอร์ชันของ Ant และ Maven ตลอดจนตัวเลือกความปลอดภัยเซิร์ฟเวอร์อีเมลและรายละเอียดการกำหนดค่าอื่น ๆ ทั้งระบบ เมื่อติดตั้งปลั๊กอิน Jenkins จะเพิ่มฟิลด์การกำหนดค่าที่จำเป็นแบบไดนามิกหลังจากติดตั้งปลั๊กอินแล้ว

โหลดการกำหนดค่าใหม่จากดิสก์

Jenkins จัดเก็บระบบทั้งหมดและสร้างรายละเอียดการกำหนดค่างานเป็นไฟล์ XML ซึ่งเก็บไว้ในโฮมไดเร็กทอรีของ Jenkins นอกจากนี้ยังมีการจัดเก็บประวัติการสร้างทั้งหมด หากคุณกำลังโอนย้ายงานบิลด์จากอินสแตนซ์เจนกินส์หนึ่งไปยังอีกอินสแตนซ์หนึ่งหรือเก็บงานบิลด์เก่าคุณจะต้องเพิ่มหรือลบไดเร็กทอรีงานบิลด์ที่เกี่ยวข้องไปยังไดเร็กทอรีบิลด์ของเจนกินส์ คุณไม่จำเป็นต้องใช้ Jenkins ออฟไลน์เพื่อทำสิ่งนี้คุณสามารถใช้ตัวเลือก“ โหลดซ้ำการกำหนดค่าจากดิสก์” เพื่อโหลดระบบ Jenkins ซ้ำและสร้างการกำหนดค่างานได้โดยตรง

จัดการปลั๊กอิน

ที่นี่คุณสามารถติดตั้งปลั๊กอินของบุคคลที่สามได้หลากหลายจากเครื่องมือการจัดการซอร์สโค้ดต่างๆเช่น Git, Mercurial หรือ ClearCase ไปจนถึงการรายงานเมตริกคุณภาพโค้ดและการครอบคลุมโค้ด สามารถติดตั้งอัปเดตและลบปลั๊กอินผ่านหน้าจอ Manage Plugins

ข้อมูลระบบ

หน้าจอนี้แสดงรายการคุณสมบัติของระบบ Java ปัจจุบันและตัวแปรสภาพแวดล้อมระบบทั้งหมด ที่นี่คุณสามารถตรวจสอบได้อย่างชัดเจนว่า Java Jenkins กำลังทำงานอยู่ในเวอร์ชันใดผู้ใช้ทำงานอยู่ภายใต้อะไรและอื่น ๆ

ภาพหน้าจอต่อไปนี้แสดงข้อมูลชื่อ - ค่าบางส่วนที่มีอยู่ในส่วนนี้

บันทึกระบบ

หน้าจอบันทึกระบบเป็นวิธีที่สะดวกในการดูไฟล์บันทึกของเจนกินส์แบบเรียลไทม์ อีกครั้งการใช้หน้าจอนี้เป็นหลักสำหรับการแก้ไขปัญหา

โหลดสถิติ

หน้านี้แสดงข้อมูลแบบกราฟิกว่าอินสแตนซ์เจนกินส์ยุ่งแค่ไหนในแง่ของจำนวนบิวด์พร้อมกันและความยาวของคิวบิลด์ซึ่งให้ข้อมูลว่าบิวด์ของคุณต้องรอนานแค่ไหนก่อนที่จะดำเนินการ สถิติเหล่านี้สามารถให้ความคิดที่ดีว่าจำเป็นต้องมีความจุเพิ่มเติมหรือสร้างโหนดเพิ่มเติมจากมุมมองของโครงสร้างพื้นฐาน

คอนโซลสคริปต์

หน้าจอนี้ให้คุณเรียกใช้สคริปต์ Groovy บนเซิร์ฟเวอร์ มีประโยชน์สำหรับการแก้ไขปัญหาขั้นสูงเนื่องจากต้องมีความรู้เกี่ยวกับสถาปัตยกรรม Jenkins ภายในเป็นอย่างดี

จัดการโหนด

Jenkins สามารถจัดการงานสร้างแบบขนานและแบบกระจายได้ ในหน้าจอนี้คุณสามารถกำหนดจำนวนงานที่คุณต้องการได้ Jenkins ทำงานพร้อมกันและหากคุณใช้งานสร้างแบบกระจายให้ตั้งค่าสร้างโหนด โหนดการสร้างเป็นเครื่องอื่นที่เจนกินส์สามารถใช้เพื่อดำเนินการสร้าง

เตรียมพร้อมสำหรับการปิดเครื่อง

หากจำเป็นต้องปิด Jenkins หรือเซิร์ฟเวอร์ที่ Jenkins กำลังทำงานอยู่ทางที่ดีที่สุดคือไม่ควรทำเช่นนั้นเมื่อกำลังดำเนินการสร้าง หากต้องการปิด Jenkins อย่างหมดจดคุณสามารถใช้ลิงก์เตรียมพร้อมสำหรับการปิดระบบซึ่งจะป้องกันไม่ให้การสร้างใหม่ใด ๆ เริ่มต้นขึ้น ในที่สุดเมื่อการสร้างในปัจจุบันทั้งหมดเสร็จสิ้นลงจะสามารถปิด Jenkins ได้อย่างหมดจด

สำหรับแบบฝึกหัดนี้เราจะสร้างงานใน Jenkins ซึ่งเลือกแอปพลิเคชัน HelloWorld ที่เรียบง่ายสร้างและรันโปรแกรม java

Step 1 - ไปที่แดชบอร์ด Jenkins และคลิกที่รายการใหม่

Step 2- ในหน้าจอถัดไปให้ป้อนชื่อรายการในกรณีนี้เราตั้งชื่อว่า Helloworld เลือก 'ตัวเลือกโครงการฟรีสไตล์'

Step 3 - หน้าจอต่อไปนี้จะปรากฏขึ้นซึ่งคุณสามารถระบุรายละเอียดของงานได้

Step 4- เราจำเป็นต้องระบุตำแหน่งของไฟล์ที่ต้องสร้าง ในตัวอย่างนี้เราจะถือว่าที่เก็บ git ในเครื่อง (E: \ Program) ได้รับการตั้งค่าซึ่งมีไฟล์ 'HelloWorld.java' ดังนั้นเลื่อนลงและคลิกที่ตัวเลือก Git และป้อน URL ของที่เก็บ git ในเครื่อง

Note- หากคุณใช้ที่เก็บหากโฮสต์บน Github คุณสามารถป้อน url ของที่เก็บนั้นได้ที่นี่ นอกจากนี้คุณจะต้องคลิกที่ปุ่มเพิ่มสำหรับข้อมูลประจำตัวเพื่อเพิ่มชื่อผู้ใช้และรหัสผ่านไปยังที่เก็บ github เพื่อให้สามารถหยิบรหัสจากที่เก็บระยะไกลได้

Step 5 - ไปที่ส่วน Build แล้วคลิกที่ Add build step → Execute Windows batch command

Step 6 - ในหน้าต่างคำสั่งป้อนคำสั่งต่อไปนี้จากนั้นคลิกที่ปุ่มบันทึก

Javac HelloWorld.java
Java HelloWorld

Step 7 - เมื่อบันทึกแล้วคุณสามารถคลิกที่ตัวเลือกสร้างทันทีเพื่อดูว่าคุณกำหนดงานสำเร็จหรือไม่

Step 8- เมื่อกำหนดเวลาสร้างก็จะทำงาน ส่วนประวัติการสร้างต่อไปนี้แสดงว่าบิลด์กำลังดำเนินการอยู่

Step 9- เมื่อการสร้างเสร็จสมบูรณ์สถานะของบิลด์จะแสดงว่าการสร้างสำเร็จหรือไม่ ในกรณีของเราการสร้างต่อไปนี้ได้รับการดำเนินการสำเร็จแล้ว คลิกที่ # 1 ในประวัติการสร้างเพื่อดูรายละเอียดของการสร้าง

Step 10 - คลิกที่ลิงค์ Console Output เพื่อดูรายละเอียดของบิลด์

นอกเหนือจากขั้นตอนที่แสดงด้านบนแล้วยังมีอีกหลายวิธีในการสร้างงานบิลด์ตัวเลือกที่มีให้เลือกมากมายซึ่งทำให้เจนกินส์เป็นเครื่องมือปรับใช้งานต่อเนื่องที่ยอดเยี่ยม

Jenkins มีฟังก์ชันการทำงานแบบสำเร็จรูปสำหรับ Junit และมีโฮสต์ของปลั๊กอินสำหรับการทดสอบหน่วยสำหรับเทคโนโลยีอื่น ๆ ตัวอย่างเช่น MSTest สำหรับการทดสอบ. Net Unit ถ้าคุณไปที่ลิงค์https://wiki.jenkins-ci.org/display/JENKINS/xUnit+Plugin มันจะแสดงรายการปลั๊กอินการทดสอบหน่วยที่พร้อมใช้งาน

ตัวอย่างการทดสอบ Junit ใน Jenkins

ตัวอย่างต่อไปนี้จะพิจารณา

  • คลาส HelloWorldTest แบบง่ายๆที่ใช้ Junit
  • Ant เป็นเครื่องมือสร้างภายใน Jenkins เพื่อสร้างชั้นเรียนตามนั้น

Step 1 - ไปที่แดชบอร์ดของ Jenkins แล้วคลิกที่โครงการ HelloWorld ที่มีอยู่แล้วเลือกตัวเลือกกำหนดค่า

Step 2 - เรียกดูส่วนเพื่อเพิ่มขั้นตอนการสร้างและเลือกตัวเลือกเพื่อเรียกใช้ Ant

Step 3 - คลิกที่ปุ่มขั้นสูง

Step 4 - ในส่วนสร้างไฟล์ให้ป้อนตำแหน่งของไฟล์ build.xml

Step 5 - จากนั้นคลิกตัวเลือกเพื่อเพิ่มตัวเลือกหลังการสร้างและเลือกตัวเลือกของ "เผยแพร่รายงานผลการทดสอบ Junit"

Step 6- ใน XML ของรายงานการทดสอบให้ป้อนตำแหน่งตามที่แสดงด้านล่าง ตรวจสอบให้แน่ใจว่ารายงานเป็นโฟลเดอร์ที่สร้างขึ้นในพื้นที่ทำงานของโครงการ HelloWorld โดยพื้นฐานแล้ว“ * .xml” จะบอกให้เจนกินส์หยิบไฟล์ xml ที่เป็นผลลัพธ์ซึ่งเกิดจากการเรียกใช้กรณีทดสอบของ Junit ไฟล์ xml เหล่านี้ซึ่งจะถูกแปลงเป็นรายงานซึ่งสามารถดูได้ในภายหลัง

เมื่อเสร็จแล้วให้คลิกตัวเลือกบันทึกที่ด้านท้าย

Step 7 - เมื่อบันทึกแล้วคุณสามารถคลิกที่ตัวเลือกสร้างทันที

เมื่อการสร้างเสร็จสมบูรณ์สถานะของการสร้างจะแสดงว่าการสร้างสำเร็จหรือไม่ ในข้อมูลเอาต์พุต Build ตอนนี้คุณจะสังเกตเห็นส่วนเพิ่มเติมที่เรียกว่า Test Result ในกรณีของเราเราป้อนกรณีทดสอบเชิงลบเพื่อให้ผลลัพธ์ล้มเหลวดังตัวอย่าง

คุณสามารถไปที่เอาต์พุตคอนโซลเพื่อดูข้อมูลเพิ่มเติม แต่สิ่งที่น่าสนใจกว่าคือถ้าคุณคลิกที่ผลการทดสอบคุณจะเห็นรายละเอียดของผลการทดสอบ

หลักการพื้นฐานอย่างหนึ่งของการบูรณาการแบบต่อเนื่องคือการสร้างควรสามารถตรวจสอบได้ คุณต้องสามารถพิจารณาได้อย่างเป็นกลางว่าบิวด์เฉพาะพร้อมที่จะดำเนินการในขั้นตอนต่อไปของกระบวนการสร้างหรือไม่และวิธีที่สะดวกที่สุดในการดำเนินการนี้คือการใช้การทดสอบอัตโนมัติ หากไม่มีการทดสอบอัตโนมัติที่เหมาะสมคุณจะพบว่าตัวเองต้องเก็บสิ่งประดิษฐ์สร้างจำนวนมากและทดสอบด้วยมือซึ่งแทบจะไม่ได้อยู่ในจิตวิญญาณของการผสานรวมอย่างต่อเนื่อง ตัวอย่างต่อไปนี้แสดงวิธีใช้ Selenium เพื่อเรียกใช้การทดสอบเว็บอัตโนมัติ

Step 1 - ไปที่จัดการปลั๊กอิน

Step 2- ค้นหาปลั๊กอิน Hudson Selenium แล้วเลือกติดตั้ง รีสตาร์ทอินสแตนซ์ Jenkins

Step 3 - ไปที่กำหนดค่าระบบ

Step 4 - กำหนดค่าโถเซิร์ฟเวอร์ซีลีเนียมและคลิกที่ปุ่มบันทึก

Note- สามารถดาวน์โหลดไฟล์ซีลีเนียม jar ได้จากตำแหน่งSeleniumHQ

คลิกที่ดาวน์โหลดสำหรับเซิร์ฟเวอร์ Selenium แบบสแตนด์อโลน

Step 5 - กลับไปที่แดชบอร์ดของคุณและคลิกที่ตัวเลือกกำหนดค่าสำหรับโครงการ HelloWorld

Step 6 - คลิกที่ Add build step และเลือก optin ของ“ SeleniumHQ htmlSuite Run”

Step 7- เพิ่มรายละเอียดที่จำเป็นสำหรับการทดสอบซีลีเนียม ที่นี่ suiteFile คือ TestSuite ที่สร้างขึ้นโดยใช้ Selenium IDE คลิกที่บันทึกและดำเนินการสร้าง ตอนนี้การสร้างโพสต์จะเปิดตัวไดรเวอร์ซีลีเนียมและดำเนินการทดสอบ html

Jenkins มาพร้อมกับสิ่งอำนวยความสะดวกสำเร็จรูปเพื่อเพิ่มการแจ้งเตือนทางอีเมลสำหรับโครงการสร้าง

Step 1- การกำหนดค่าเซิร์ฟเวอร์ SMTP ไปที่จัดการ Jenkins →กำหนดค่าระบบ ไปที่ส่วนการแจ้งเตือนอีเมลและป้อนเซิร์ฟเวอร์ SMTP ที่ต้องการและรายละเอียดส่วนต่อท้ายอีเมลของผู้ใช้

Step 2- กำหนดค่าผู้รับในโครงการ Jenkins - เมื่อคุณกำหนดค่าโครงการสร้างของ Jenkins ในตอนท้ายคือความสามารถในการเพิ่มผู้รับที่จะได้รับการแจ้งเตือนทางอีเมลสำหรับงานสร้างที่ไม่เสถียรหรือเสีย จากนั้นคลิกที่ปุ่มบันทึก

นอกเหนือจากค่าเริ่มต้นแล้วยังมีปลั๊กอินการแจ้งเตือนในตลาดอีกด้วย ตัวอย่างคือปลั๊กอินการแจ้งเตือนจาก Tikal Knowledge ซึ่งอนุญาตให้ส่งการแจ้งเตือนสถานะงานในรูปแบบ JSON และ XML ปลั๊กอินนี้ช่วยให้สามารถกำหนดค่าจุดสิ้นสุดได้ดังที่แสดงด้านล่าง

นี่คือรายละเอียดของแต่ละตัวเลือก -

  • "Format" - นี่คือรูปแบบเพย์โหลดการแจ้งเตือนซึ่งอาจเป็น JSON หรือ XML

  • "Protocol" - โปรโตคอลที่จะใช้ในการส่งข้อความแจ้งเตือน HTTP, TCP หรือ UDP

  • "Event" - กิจกรรมของงานที่ทำให้เกิดการแจ้งเตือน: เริ่มงาน, งานเสร็จสมบูรณ์, งานเสร็จสิ้นหรือกิจกรรมทั้งหมด (ตัวเลือกเริ่มต้น)

  • "URL"- URL ที่จะส่งการแจ้งเตือนไป มันอยู่ในรูปแบบของ "http://host"สำหรับโปรโตคอล HTTP และ"host:port"สำหรับโปรโตคอล TCP และ UDP

  • "Timeout" - หมดเวลาเป็นมิลลิวินาทีสำหรับการส่งคำขอการแจ้งเตือน 30 วินาทีโดยค่าเริ่มต้น

ดังที่แสดงไว้ในส่วนก่อนหน้านี้มีปลั๊กอินการรายงานมากมายโดยที่ง่ายที่สุดคือรายงานที่พร้อมใช้งานสำหรับการทดสอบ jUnit

ในการดำเนินการหลังการสร้างสำหรับงานใด ๆ คุณสามารถกำหนดรายงานที่จะสร้างได้ หลังจากการสร้างเสร็จสมบูรณ์ตัวเลือกผลการทดสอบจะพร้อมใช้งานสำหรับการเจาะลึกเพิ่มเติม

Jenkins มีโฮสต์ของปลั๊กอินการวิเคราะห์โค้ด สามารถดูปลั๊กอินต่างๆได้ที่https://wiki.jenkins-ci.org/display/JENKINS/Static+Code+Analysis+Plugins

ปลั๊กอินนี้มียูทิลิตี้สำหรับปลั๊กอินการวิเคราะห์โค้ดแบบคงที่ เจนกินส์สามารถแยกวิเคราะห์ไฟล์ผลลัพธ์จากเครื่องมือวิเคราะห์โค้ดต่างๆเช่น CheckStyle, FindBugs, PMD เป็นต้นสำหรับเครื่องมือวิเคราะห์โค้ดแต่ละรายการจำเป็นต้องติดตั้งปลั๊กอินในเจนกินส์

นอกจากนี้ยังมีปลั๊กอินเสริมStatic Analysis Collectorที่รวมผลลัพธ์แต่ละรายการของปลั๊กอินเหล่านี้ไว้ในกราฟแนวโน้มเดียวและมุมมอง

ปลั๊กอินสามารถให้ข้อมูลเช่น

  • จำนวนคำเตือนทั้งหมดในงาน
  • การแสดงคำเตือนใหม่และคำเตือนคงที่ของงานสร้าง
  • รายงานแนวโน้มแสดงจำนวนคำเตือนต่อบิลด์
  • ภาพรวมของคำเตือนที่พบตามโมดูลแพ็กเกจหมวดหมู่หรือประเภท
  • รายงานโดยละเอียดของคำเตือนที่พบซึ่งเลือกกรองตามความรุนแรง (หรือใหม่และคงที่)

บางครั้งต้องใช้เครื่องจักรสร้างจำนวนมากหากมีกรณีที่มีโครงการขนาดใหญ่และหนักกว่าซึ่งสร้างขึ้นเป็นประจำ และการรันงานสร้างเหล่านี้ทั้งหมดบนเครื่องส่วนกลางอาจไม่ใช่ตัวเลือกที่ดีที่สุด ในสถานการณ์เช่นนี้เราสามารถกำหนดค่าเครื่อง Jenkins เครื่องอื่นให้เป็นเครื่องทาสเพื่อรับภาระจากเซิร์ฟเวอร์ Jenkins หลัก

บางครั้งคุณอาจต้องการสภาพแวดล้อมที่แตกต่างกันเพื่อทดสอบงานสร้างของคุณ ในกรณีนี้การใช้ทาสเพื่อแสดงสภาพแวดล้อมที่คุณต้องการแต่ละอย่างนั้นแทบจะเป็นสิ่งที่จำเป็น

ทาสคือคอมพิวเตอร์ที่ตั้งค่าให้ถ่ายโอนโครงการสร้างจากต้นแบบและเมื่อตั้งค่าการกระจายงานนี้จะค่อนข้างอัตโนมัติ พฤติกรรมการมอบสิทธิ์ที่แน่นอนขึ้นอยู่กับการกำหนดค่าของแต่ละโครงการ บางโครงการอาจเลือกที่จะ "ยึดติด" กับเครื่องจักรเฉพาะสำหรับงานสร้างในขณะที่โครงการอื่น ๆ อาจเลือกที่จะเดินเตร่อย่างอิสระระหว่างทาส

เนื่องจากทาสแต่ละตัวรันโปรแกรมแยกกันเรียกว่า "ตัวแทนทาส" จึงไม่จำเป็นต้องติดตั้ง Jenkins (แพ็กเกจหรือไบนารีที่คอมไพล์) แบบเต็มบนทาส มีหลายวิธีในการเริ่มตัวแทนทาส แต่ในที่สุดเอเจนต์ทาสและเจนกินส์มาสเตอร์จำเป็นต้องสร้างลิงก์การสื่อสารแบบสองทิศทาง (เช่นซ็อกเก็ต TCP / IP) เพื่อดำเนินการ

ในการตั้งค่าทาส / โหนดใน Jenkins ให้ทำตามขั้นตอนด้านล่าง

Step 1 - ไปที่ส่วน Manage Jenkins และเลื่อนลงไปที่ส่วน Manage Nodes

Step 2 - คลิกที่โหนดใหม่

Step 3 - ตั้งชื่อโหนดเลือกตัวเลือก Dumb slave แล้วคลิกตกลง

Step 4- ป้อนรายละเอียดของเครื่องโหนดทาส ในตัวอย่างด้านล่างเรากำลังพิจารณาว่าเครื่อง Slave เป็นเครื่อง windows ดังนั้นจึงเลือกตัวเลือก“ ให้ Jenkins ควบคุม Windows Slave เป็นบริการ Windows” เป็นวิธีการเปิดตัว เรายังต้องเพิ่มรายละเอียดที่จำเป็นของโหนดทาสเช่นชื่อโหนดและข้อมูลรับรองการล็อกอินสำหรับเครื่องโหนด คลิกปุ่มบันทึก ป้ายกำกับที่ป้อนชื่อเป็น“ New_Slave” คือสิ่งที่ใช้กำหนดค่างานเพื่อใช้เครื่องทาสนี้ได้

เมื่อทำตามขั้นตอนข้างต้นเรียบร้อยแล้วเครื่องโหนดใหม่จะอยู่ในสถานะออฟไลน์ในตอนแรก แต่จะออนไลน์หากการตั้งค่าทั้งหมดในหน้าจอก่อนหน้านี้ถูกป้อนอย่างถูกต้อง หนึ่งสามารถทำให้เครื่องโหนดทาสเป็นออฟไลน์ได้ตลอดเวลาหากจำเป็น

มีปลั๊กอินมากมายที่สามารถใช้เพื่อถ่ายโอนไฟล์บิลด์หลังจากสร้างสำเร็จไปยังแอปพลิเคชัน / เว็บเซิร์ฟเวอร์ตามลำดับ ในตัวอย่างคือ“ Deploy to container Plugin” ในการใช้งานให้ทำตามขั้นตอนที่ระบุด้านล่าง

Step 1- ไปที่ Manage Jenkins → Manage Plugins ไปที่ส่วน Available และค้นหาปลั๊กอิน“ Deploy to container Plugin” และติดตั้งปลั๊กอิน รีสตาร์ทเซิร์ฟเวอร์ Jenkins

ปลั๊กอินนี้ใช้ไฟล์ war / ear และนำไปใช้กับแอ็พพลิเคชันเซิร์ฟเวอร์ระยะไกลที่รันอยู่ในตอนท้ายของบิลด์

ทอมแคท 4.x / 5.x / 6.x / 7.x

เจบอส 3.x / 4.x

ปลาแก้ว 2.x / 3.x

Step 2- ไปที่โครงการสร้างของคุณแล้วคลิกตัวเลือกกำหนดค่า เลือกตัวเลือก“ ปรับใช้ war / ear กับคอนเทนเนอร์”

Step 3- ในหัวข้อ Deploy war / ear to a container ให้ป้อนรายละเอียดที่จำเป็นของเซิร์ฟเวอร์ที่จะต้องปรับใช้ไฟล์และคลิกที่ปุ่ม Save ขั้นตอนเหล่านี้จะช่วยให้มั่นใจได้ว่าไฟล์ที่จำเป็นได้รับการปรับใช้กับคอนเทนเนอร์ที่จำเป็นหลังจากสร้างสำเร็จ

มีปลั๊กอินต่างๆที่มีอยู่ใน Jenkins เพื่อแสดงเมตริกสำหรับงานสร้างซึ่งดำเนินการในช่วงเวลาหนึ่ง เมตริกเหล่านี้มีประโยชน์ในการทำความเข้าใจงานสร้างของคุณและความถี่ที่ล้มเหลว / ผ่านไปเมื่อเวลาผ่านไป ตัวอย่างเช่นลองดูที่ปลั๊กอิน "Build History Metrics"

ปลั๊กอินนี้จะคำนวณเมตริกต่อไปนี้สำหรับบิลด์ทั้งหมดที่ติดตั้ง

  • เวลาเฉลี่ยที่จะล้มเหลว (MTTF)
  • เวลาเฉลี่ยในการกู้คืน (MTTR)
  • ค่าเบี่ยงเบนมาตรฐานของเวลาสร้าง

Step 1 - ไปที่แดชบอร์ด Jenkins และคลิกที่ Manage Jenkins

Step 2 - ไปที่ตัวเลือก Manage Plugins

Step 3 - ไปที่แท็บ Available และค้นหาปลั๊กอิน 'Build History Metrics plugin' และเลือก 'install without restart'

Step 4- หน้าจอต่อไปนี้จะแสดงขึ้นเพื่อยืนยันการติดตั้งปลั๊กอินสำเร็จ รีสตาร์ทอินสแตนซ์ Jenkins

เมื่อคุณไปที่หน้างานของคุณคุณจะเห็นตารางที่มีเมตริกจากการคำนวณ เมตริกจะแสดงในช่วง 7 วัน 30 วันที่ผ่านมาและตลอดเวลา

หากต้องการดูแนวโน้มโดยรวมใน Jenkins มีปลั๊กอินสำหรับรวบรวมข้อมูลจากภายในงานสร้างและ Jenkins และแสดงในรูปแบบกราฟิก ตัวอย่างหนึ่งของปลั๊กอินดังกล่าวคือปลั๊กอิน 'Hudson global-build-stats plugin' มาดูขั้นตอนนี้กัน

Step 1 - ไปที่แดชบอร์ด Jenkins และคลิกที่ Manage Jenkins

Step 2 - ไปที่ตัวเลือก Manage Plugins

Step 3 - ไปที่แท็บ Available และค้นหาปลั๊กอิน 'Hudson global-build-stats plugin' และเลือก 'install without restart'

Step 4- หน้าจอต่อไปนี้จะแสดงขึ้นเพื่อยืนยันการติดตั้งปลั๊กอินสำเร็จ รีสตาร์ทอินสแตนซ์ Jenkins

หากต้องการดูสถิติทั่วโลกโปรดทำตามขั้นตอนที่ 5 ถึง 8

Step 5- ไปที่แดชบอร์ด Jenkins และคลิกที่ Manage Jenkins ในหน้าจอ Manage Jenkins ให้เลื่อนลงและตอนนี้คุณจะเห็นตัวเลือกที่เรียกว่า 'Global Build Stats' คลิกที่ลิงค์นี้

Step 6- คลิกที่ปุ่ม 'เริ่มต้นสถิติ' สิ่งนี้ทำคือรวบรวมระเบียนที่มีอยู่ทั้งหมดสำหรับงานสร้างซึ่งได้ดำเนินการไปแล้วและสามารถสร้างแผนภูมิตามผลลัพธ์เหล่านี้ได้

Step 7- เมื่อข้อมูลเริ่มต้นแล้วก็ถึงเวลาสร้างแผนภูมิใหม่ คลิกลิงก์ "สร้างแผนภูมิใหม่"

Step 8- ป๊อปอัปจะมาเพื่อป้อนข้อมูลที่เกี่ยวข้องสำหรับรายละเอียดแผนภูมิใหม่ ป้อนข้อมูลที่จำเป็นต่อไปนี้

  • Title - ข้อมูลชื่อเรื่องใด ๆ สำหรับตัวอย่างนี้จะได้รับเป็น 'Demo'
  • ความกว้างของแผนภูมิ - 800
  • ความสูงของแผนภูมิ - 600
  • มาตราส่วนเวลาของแผนภูมิ - รายวัน
  • ระยะเวลาในแผนภูมิ - 30 วัน

ข้อมูลที่เหลือสามารถคงอยู่ได้ตามที่เป็นอยู่ เมื่อป้อนข้อมูลแล้วให้คลิกที่สร้างแผนภูมิใหม่

ตอนนี้คุณจะเห็นแผนภูมิที่แสดงแนวโน้มของงานสร้างเมื่อเวลาผ่านไป

หากคุณคลิกที่ส่วนใด ๆ ในแผนภูมิระบบจะให้ข้อมูลเจาะลึกรายละเอียดของงานและงานสร้าง

ต่อไปนี้เป็นกิจกรรมพื้นฐานบางส่วนที่คุณจะดำเนินการซึ่งบางส่วนเป็นแนวทางปฏิบัติที่ดีที่สุดสำหรับการบำรุงรักษาเซิร์ฟเวอร์ Jenkins

ตัวเลือก URL

คำสั่งต่อไปนี้เมื่อต่อท้าย URL อินสแตนซ์ Jenkins จะดำเนินการที่เกี่ยวข้องกับอินสแตนซ์ Jenkins

http://localhost:8080/jenkins/exit - ปิดเจนกินส์

http://localhost:8080/jenkins/restart - รีสตาร์ทเจนกินส์

http://localhost:8080/jenkins/reload - เพื่อโหลดการกำหนดค่าใหม่

สำรองข้อมูลบ้านเจนกินส์

ไดเร็กทอรีโฮมของเจนกินส์เป็นเพียงตำแหน่งบนไดรฟ์ของคุณซึ่งเจนกินส์เก็บข้อมูลทั้งหมดสำหรับงานงานสร้างและอื่น ๆ ตำแหน่งของโฮมไดเร็กทอรีของคุณสามารถเห็นได้เมื่อคุณคลิกที่จัดการเจนกินส์→กำหนดค่าระบบ

ตั้งค่า Jenkins บนพาร์ติชันที่มีพื้นที่ว่างบนดิสก์มากที่สุด - เนื่องจาก Jenkins จะรับซอร์สโค้ดสำหรับงานต่างๆที่กำหนดไว้และสร้างแบบต่อเนื่องให้แน่ใจเสมอว่า Jenkins ได้รับการติดตั้งบนไดรฟ์ที่มีเนื้อที่ว่างบนฮาร์ดดิสก์เพียงพอ หากฮาร์ดดิสก์ของคุณไม่มีพื้นที่ว่างการสร้างทั้งหมดในอินสแตนซ์ Jenkins จะเริ่มล้มเหลว

แนวทางปฏิบัติที่ดีที่สุดอีกประการหนึ่งคือการเขียนงาน cron หรืองานบำรุงรักษาที่สามารถดำเนินการล้างข้อมูลเพื่อหลีกเลี่ยงดิสก์ที่ Jenkins ตั้งค่าไว้ไม่ให้เต็ม

Jenkins ให้การสนับสนุนที่ดีในการจัดเตรียมการใช้งานและการส่งมอบอย่างต่อเนื่อง หากคุณดูขั้นตอนของการพัฒนาซอฟต์แวร์ใด ๆ ผ่านการปรับใช้จะเป็นดังที่แสดงด้านล่าง

ส่วนหลักของการปรับใช้อย่างต่อเนื่องคือเพื่อให้แน่ใจว่ากระบวนการทั้งหมดที่แสดงไว้ข้างต้นเป็นไปโดยอัตโนมัติ Jenkins ประสบความสำเร็จทั้งหมดนี้ผ่านปลั๊กอินต่างๆหนึ่งในนั้นคือ“ Deploy to container Plugin” ซึ่งเห็นในบทเรียนก่อนหน้านี้

มีปลั๊กอินที่พร้อมใช้งานซึ่งสามารถแสดงภาพกราฟิกของกระบวนการปรับใช้งานแบบต่อเนื่องได้ แต่ก่อนอื่นให้สร้างโปรเจ็กต์อื่นในเจนกินส์เพื่อที่เราจะได้เห็นว่ามันทำงานอย่างไรดีที่สุด

มาสร้างโปรเจ็กต์ง่ายๆที่เลียนแบบเวที QA และทำการทดสอบแอปพลิเคชัน Helloworld

Step 1- ไปที่แดชบอร์ด Jenkins และคลิกที่ New Item เลือก 'โครงการฟรีสไตล์' และป้อนชื่อโครงการว่า 'QA' คลิกที่ปุ่มตกลงเพื่อสร้างโครงการ

Step 2 - ในตัวอย่างนี้เราทำให้มันง่ายและใช้โปรเจ็กต์นี้เพื่อดำเนินการโปรแกรมทดสอบสำหรับแอปพลิเคชัน Helloworld

ดังนั้นโครงการ QA ของเราจึงได้รับการตั้งค่าแล้ว คุณสามารถสร้างเพื่อดูว่าสร้างอย่างถูกต้องหรือไม่

Step 3 - ไปที่โครงการ Helloworld ของคุณแล้วคลิกที่ตัวเลือกกำหนดค่า

Step 4 - ในการกำหนดค่าโครงการเลือก 'เพิ่มการดำเนินการหลังการสร้าง' และเลือก 'สร้างโครงการอื่น ๆ '

Step 5- ในส่วน "Project to build" ให้ป้อน QA เป็นชื่อโครงการที่จะสร้าง คุณสามารถปล่อยให้ตัวเลือกนี้เป็นค่าเริ่มต้นของ "ทริกเกอร์เฉพาะเมื่อโครงสร้างเสถียร" คลิกที่ปุ่มบันทึก

Step 6- สร้างโครงการ Helloworld ตอนนี้ถ้าคุณเห็นเอาต์พุตคอนโซลคุณจะเห็นว่าหลังจากสร้างโครงการ Helloworld สำเร็จแล้วการสร้างโครงการ QA ก็จะเกิดขึ้นเช่นกัน

Step 7- ให้ติดตั้งปลั๊กอิน Delivery pipeline ไปที่ Manage Jenkins → Manage Plugin ในแท็บที่มีให้ค้นหา 'Delivery Pipeline Plugin' คลิกที่ติดตั้งโดยไม่ต้องรีสตาร์ท เมื่อเสร็จแล้วให้รีสตาร์ทอินสแตนซ์ Jenkins

Step 8 - หากต้องการดูการดำเนินการไปป์ไลน์ใน Jenkins Dashboard ให้คลิกที่สัญลักษณ์ + ในแท็บถัดจากแท็บ 'ทั้งหมด'

Step 9 - ป้อนชื่อสำหรับ View name และเลือกตัวเลือก 'Delivery Pipeline View'

Step 10- ในหน้าจอถัดไปคุณสามารถออกจากตัวเลือกเริ่มต้นได้ หนึ่งสามารถเปลี่ยนการตั้งค่าต่อไปนี้ -

  • ตรวจสอบให้แน่ใจว่าได้เลือกตัวเลือก "แสดงผลการวิเคราะห์แบบคงที่"
  • ตรวจสอบให้แน่ใจว่าได้เลือกตัวเลือก "แสดงเวลาสร้างทั้งหมด"
  • สำหรับงานเริ่มต้น - เข้าสู่โครงการ Helloworld เป็นงานแรกที่ควรสร้าง
  • ป้อนชื่อไปป์ไลน์
  • คลิกปุ่ม OK

ตอนนี้คุณจะเห็นมุมมองที่ยอดเยี่ยมของไปป์ไลน์การจัดส่งทั้งหมดและคุณจะสามารถดูสถานะของแต่ละโครงการในไปป์ไลน์ทั้งหมด

ปลั๊กอินที่มีชื่อเสียงอีกตัวคือ build pipeline plugin. ลองมาดูที่นี้

Step 1- ไปที่ Manage Jenkins → Manage Plugin ในแท็บที่มีให้ค้นหา 'Build Pipeline Plugin' คลิกที่ติดตั้งโดยไม่ต้องรีสตาร์ท เมื่อเสร็จแล้วให้รีสตาร์ทอินสแตนซ์ Jenkins

Step 2 - หากต้องการดูการทำงานของ Build pipeline ใน Jenkins Dashboard ให้คลิกที่สัญลักษณ์ + ในแท็บถัดจากแท็บ 'ทั้งหมด'

Step 3 - ป้อนชื่อใด ๆ สำหรับชื่อมุมมองและเลือกตัวเลือก 'สร้างมุมมองไปป์ไลน์'

Step 4- ยอมรับการตั้งค่าเริ่มต้นในงานเริ่มต้นที่เลือกตรวจสอบให้แน่ใจว่าได้ป้อนชื่อของโครงการ Helloworld คลิกที่ปุ่มตกลง

ตอนนี้คุณจะเห็นมุมมองที่ยอดเยี่ยมของไปป์ไลน์การจัดส่งทั้งหมดและคุณจะสามารถดูสถานะของแต่ละโครงการในไปป์ไลน์ทั้งหมด

หากต้องการรับรายการปลั๊กอินทั้งหมดที่มีอยู่ใน Jenkins คุณสามารถไปที่ลิงค์ - https://wiki.jenkins-ci.org/display/JENKINS/Plugins

เราได้เห็นอินสแตนซ์มากมายสำหรับการติดตั้งปลั๊กอินแล้วมาดูงานการบำรุงรักษาอื่น ๆ เกี่ยวกับปลั๊กอิน

การถอนการติดตั้งปลั๊กอิน

ในการถอนการติดตั้งปลั๊กอินไปที่ Manage Jenkins → Manage plugins คลิกที่แท็บติดตั้ง ปลั๊กอินบางตัวจะมีตัวเลือกถอนการติดตั้ง คุณสามารถคลิกปุ่มเหล่านี้เพื่อถอนการติดตั้งปลั๊กอิน อย่าลืมรีสตาร์ทอินสแตนซ์ Jenkins ของคุณหลังจากถอนการติดตั้ง

การติดตั้งปลั๊กอินเวอร์ชันอื่น

บางครั้งอาจจำเป็นต้องติดตั้งปลั๊กอินเวอร์ชันเก่าในกรณีนี้คุณสามารถดาวน์โหลดปลั๊กอินได้จากหน้าปลั๊กอินที่เกี่ยวข้องบนเว็บไซต์ Jenkins จากนั้นคุณสามารถใช้ไฟล์Upload ตัวเลือกในการอัปโหลดปลั๊กอินด้วยตนเอง

ใน Jenkins คุณสามารถตั้งค่าผู้ใช้และสิทธิ์ที่เกี่ยวข้องบนอินสแตนซ์ Jenkins ได้ โดยค่าเริ่มต้นคุณจะไม่ต้องการให้ทุกคนสามารถกำหนดงานหรืองานบริหารอื่น ๆ ใน Jenkins ได้ ดังนั้นเจนกินส์จึงมีความสามารถในการกำหนดค่าความปลอดภัย

ในการกำหนดค่าความปลอดภัยใน Jenkins ให้ทำตามขั้นตอนด้านล่าง

Step 1 - คลิกที่ Manage Jenkins และเลือกตัวเลือก 'Configure Global Security'

Step 2- คลิกที่ตัวเลือก Enable Security ตัวอย่างเช่นสมมติว่าเราต้องการให้ Jenkins ดูแลฐานข้อมูลผู้ใช้ของตัวเองดังนั้นใน Security Realm ให้เลือกตัวเลือกฐานข้อมูลผู้ใช้ของ 'Jenkins'

โดยค่าเริ่มต้นคุณต้องการให้ผู้ดูแลระบบส่วนกลางกำหนดผู้ใช้ในระบบดังนั้นให้แน่ใจว่าได้ยกเลิกการเลือกตัวเลือก "อนุญาตให้ผู้ใช้สมัครใช้งาน" คุณสามารถออกจากส่วนที่เหลือได้ในตอนนี้และคลิกปุ่มบันทึก

Step 3- คุณจะได้รับแจ้งให้เพิ่มผู้ใช้รายแรกของคุณ ตัวอย่างเช่นเรากำลังตั้งค่าผู้ดูแลระบบสำหรับระบบ

Step 4- ถึงเวลาตั้งค่าผู้ใช้ของคุณในระบบแล้ว ตอนนี้เมื่อคุณไปที่ Manage Jenkins แล้วเลื่อนลงคุณจะเห็นตัวเลือก 'Manage Users' คลิกตัวเลือกนี้

Step 5- เช่นเดียวกับที่คุณกำหนดผู้ดูแลระบบของคุณให้เริ่มสร้างผู้ใช้อื่นสำหรับระบบ ตัวอย่างเช่นเรากำลังสร้างผู้ใช้อื่นที่เรียกว่า 'ผู้ใช้'

Step 6- ตอนนี้ถึงเวลาตั้งค่าการอนุญาตของคุณโดยพื้นฐานแล้วว่าใครสามารถเข้าถึงอะไรได้บ้าง ไปที่ Manage Jenkins → Configure Global Security

ตอนนี้ในส่วนการอนุญาตให้คลิกที่ 'Matrix based security'

Step 7- หากคุณไม่เห็นผู้ใช้ในรายชื่อกลุ่มผู้ใช้ให้ป้อนชื่อผู้ใช้และเพิ่มลงในรายการ จากนั้นให้สิทธิ์ที่เหมาะสมแก่ผู้ใช้

คลิกที่ปุ่มบันทึกเมื่อคุณกำหนดการอนุญาตที่เกี่ยวข้องแล้ว

การรักษาความปลอดภัย Jenkins ของคุณได้รับการตั้งค่าแล้ว

Note - สำหรับการรับรองความถูกต้องของ Windows AD คุณต้องเพิ่มปลั๊กอิน Active Directory ให้กับ Jenkins

Jenkins มีปลั๊กอินสำรองที่สามารถใช้ในการสำรองข้อมูลการตั้งค่าคอนฟิกที่สำคัญที่เกี่ยวข้องกับ Jenkins ทำตามขั้นตอนที่ระบุด้านล่างเพื่อสำรองข้อมูลไว้

Step 1 - คลิกที่ Manage Jenkins และเลือกตัวเลือก 'Manage Plugins'

Step 2- ในแท็บที่มีให้ค้นหา 'ปลั๊กอินสำรอง' คลิกที่ติดตั้งโดยไม่ต้องรีสตาร์ท เมื่อเสร็จแล้วให้รีสตาร์ทอินสแตนซ์ Jenkins

Step 3- ตอนนี้เมื่อคุณไปที่ Manage Jenkins แล้วเลื่อนลงมาคุณจะเห็น 'Backup Manager' เป็นตัวเลือก คลิกที่ตัวเลือกนี้

Step 4 - คลิกที่การตั้งค่า

Step 5- ที่นี่ฟิลด์หลักที่จะกำหนดคือไดเร็กทอรีสำหรับการสำรองข้อมูลของคุณ ตรวจสอบให้แน่ใจว่าอยู่ในไดรฟ์อื่นซึ่งแตกต่างจากไดรฟ์ที่ติดตั้งอินสแตนซ์ Jenkins ของคุณ คลิกที่ปุ่มบันทึก

Step 6 - คลิกที่ 'Backup Hudson configuration' จากหน้าจอ Backup manager เพื่อเริ่มการสำรองข้อมูล

หน้าจอถัดไปจะแสดงสถานะของการสำรองข้อมูล

ในการกู้คืนจากข้อมูลสำรองไปที่หน้าจอ Backup Manager คลิกที่ Restore Hudson configuration

รายการข้อมูลสำรองจะปรากฏขึ้นคลิกที่รายการที่เหมาะสมเพื่อคลิกที่ Launch Restore เพื่อเริ่มการกู้คืนข้อมูลสำรอง

การทดสอบเว็บเช่นการทดสอบซีลีเนียมสามารถรันบนเครื่องทาสระยะไกลผ่านการติดตั้งปลั๊กอินหลักทาสและชุดซีลีเนียม ขั้นตอนต่อไปนี้แสดงวิธีเรียกใช้การทดสอบระยะไกลโดยใช้การกำหนดค่านี้

Step 1- ตรวจสอบให้แน่ใจว่ามีการกำหนดค่าทาสหลักของคุณ ไปที่เซิร์ฟเวอร์ Jenkins หลักของคุณ ไปที่จัดการ Jenkins →จัดการโหนด

ในรายการโหนดของเราฉลาก DXBMEM30 คือเครื่องทาส ในตัวอย่างนี้ทั้งเครื่องต้นแบบและเครื่องทาสเป็นเครื่อง windows

Step 2 - คลิกที่กำหนดค่าสำหรับเครื่องทาส DXBMEM30

Step 3 - ตรวจสอบให้แน่ใจว่าวิธีการเปิดตัวถูกใส่เป็น 'Launch slave agent ผ่าน Java Web Start'

Step 4- ตอนนี้ไปที่เครื่องทาสของคุณจากนั้นเปิดอินสแตนซ์เบราว์เซอร์ไปยังอินสแตนซ์หลักของเจนกินส์ จากนั้นไปที่ Manage Jenkins → Manage Nodes ไปที่ DXBMEM30 แล้วคลิกที่

Step 5 - คลิกที่อินสแตนซ์ DXBMEM30

Step 6 - เลื่อนลงมาและคุณจะเห็นตัวเลือก Launch ซึ่งเป็นตัวเลือกในการเริ่ม 'Java Web Start'

Step 7- คุณจะได้รับคำเตือนด้านความปลอดภัย คลิกที่ช่องทำเครื่องหมายยอมรับแล้วคลิกเรียกใช้

ตอนนี้คุณจะเห็นหน้าต่าง Jenkins Slave เปิดขึ้นและเชื่อมต่อแล้ว

Step 8- กำหนดค่าการทดสอบของคุณให้ทำงานบนทาส ที่นี่คุณต้องตรวจสอบให้แน่ใจว่างานที่สร้างขึ้นนั้นมีไว้เพื่อทำการทดสอบซีลีเนียมโดยเฉพาะ

ในคอนฟิกูเรชันงานตรวจสอบให้แน่ใจว่าได้เลือกอ็อพชัน 'จำกัด ตำแหน่งที่สามารถรันโปรเจ็กต์นี้ได้' และในนิพจน์ Label ใส่ชื่อของโหนดทาส

Step 9- ตรวจสอบให้แน่ใจว่ามีการกำหนดค่าส่วนซีลีเนียมในงานของคุณ คุณต้องตรวจสอบให้แน่ใจว่าไฟล์ Sample.html และไฟล์ selenium-server.jar อยู่ในเครื่องทาสด้วย

เมื่อคุณทำตามขั้นตอนข้างต้นทั้งหมดแล้วคลิกที่สร้างโครงการนี้จะเรียกใช้การทดสอบซีลีเนียมบนเครื่องทาสตามที่คาดไว้