בניית ופרסום של אפליקציה יכולה להיות משימה מסובכת. למה לא להשתמש במשימת בנייה של Jenkins כדי לאוטומציה של כל התהליך? אתה מתמקד בבנייה ו-Jenkins טוטל בפרסום של הקוד.
במדריך הזה, תלמד כיצד לאוטומציה של הפרסום של הקוד שלך באמצעות Jenkins כדי לחסוך זמן ולהתמקד במשימות אחרות בו זמנית.
מוכן? הגיע הזמן להתקדם!
דרישות מוקדמות
מדור זה כולל הדגמות ידיים. אם ברצונך לעקוב, וודא שיש לך את הבא:
- מערכת Ubuntu – המדריך משתמש ב-Ubuntu 20.04 לצורך הדגמות
- A GitHub account
- OpenJDK גרסה 1.8.0_292
- Jenkins גרסה 2.303.1
- Node.js גרסה 14.17.6
- Fork של המאגר ב-GitHub – לאחר הפיצול, שים לב לכתובת URL של מאגר ה-GitHub, כי תצטרך לזהות אותה מאוחר יותר.
למרות שהמאגר המוצג בתמונות הבאות מתייחס במעט לזה שמקושר למעלה, לאחר השכפול, תשתמש בכתובת URL של מאגר שונה גם כן.
יצירת עבודת בנייה ב-Jenkins
Jenkins הוא שרת אוטומציה מקור פתוח המסייע באוטומציה של מחזור חיי פיתוח תוכנה. מחזור חיי פיתוח זה כולל בנייה, בדיקה, והפצה, שמקל על אינטגרציה רציפה ומסירה רציפה.
בדמו זה, תעבור דרך כיצד ליצור עבודת בנייה ב-Jenkins. עבודת בנייה היא בדרך כלל הגדרה להרצת משימות אוטונומיות לבניית/אריזת תוכנה.
- הפעל את הדפדפן המועדף עליך, נווט אל http://localhost:8080/, והתחבר ללוח המחוונים של Jenkins שלך. פורט
8080
הוא הפורט המוגדר כברירת מחדל לגישה ללוח המחוונים של Jenkins.
2. בלוח המחוונים שלך ב-Jenkins, לחץ על כפתור פריט חדש בלוח הצד השמאלי כדי לאתחל את יצירת עבודת בנייה. ביצוע פעולה זו מפנה את הדפדפן לעמוד פרויקט חדש.

3. לאחר מכן, הזן שם פרויקט שתרצה עבור עבודת הבנייה בשדה הקלט המוצג למטה. לדוגמה, שם הפרויקט בדוגמה זו הוא webDeploy.
בחר באפשרות פרויקט חופשי כדי לאפשר יצירת עבודות, תסריט post-build והגדרת גורמי ייבוצע של הפרויקט, ואז לחץ על אישור. תועבר לדף ההגדרות של העבודה שתראה בשלב הבא.

4. לחץ על הלשונית כללי, וסמן את תיבת פרויקט GitHub כדי לקשר למנהל קוד מקור וכך ג'נקינס ידע מאיפה למשוך את הקוד שלך. בדוגמה זו, משתמשים ב-Git כמנהל קוד מקור עבור הפרויקט הדוגמא שמתארגן ב-GitHub ושקיבלת מקודם. הדביק את כתובת ה-URL של המאגר שלך ב-GitHub בשדה URL הפרויקט.

5. לבסוף, לחץ על הלשונית ניהול קוד מקור, ואז בחר Git, שהוא מנהל קוד המקור שלך.
העתק והדבק את כתובת ה-URL של מאגר ה-GitHub הזה (https://github.com/Claradev32/webDeploy.git) לשדה הקלט. לחץ על שמירה כדי לשמור את ההגדרות הנוכחיות שלך.

יצירת אישורים עבור פרויקט ב-Jenkins
אולי תעדיפו לשמור את המאגר שלכם בפרטיות, מה שנפוץ בפרויקטים של לקוחות. אם כן, תצטרך ליצור אישורים כדי לאשר לג'נקינס לשכפל את הפרויקט מ-GitHub שלך.
כדי ליצור אישורים עבור פרויקט Jenkins שלך, עליך ליצור ולהוסיף מפתח SSH לחשבון GitHub שלך תחילה:
1. פתח את תיק ה-Ubuntu שלך והרץ את הפקודה למטה כדי ליצור מפתח SSH עם ed25519
כסוג המפתח. החלף את [email protected]
בכתובת הדוא"ל של GitHub שלך כדי להוסיף אותה כהערה למפתח ה-SSH שתיצור.
2. שמור את מפתח ה-SSH הציבורי שלך עם ההוראות הבאות:
- ציין מיקום לשמירת מפתח ה-SSH ולחץ על Enter. אם אין לך, הפקודה תשמור את מפתח ה-SSH במיקום ברירת המחדל, כפי שמוצג למטה.
- הקלד ססמה מאובטחת עבור מפתח ה-SSH, לחץ על Enter כדי לאשר את הססמה, ותראה את הפלט של מפתח ה-SSH הציבורי שלך.
- שים לב למיקום של מפתח ה-SSH שיצרת, מכיוון שתוסיף אותו לחשבון GitHub שלך בשלבים הבאים.

3. התחבר ל-GitHub בדפדפן האינטרנט שלך ונווט לדף ההגדרות של החשבון שלך.
4. לחץ על הקישור מפתחות SSH ו-GPG בלוח הצד השמאל ואז לחץ על מפתח SSH חדש, כפי שמוצג למטה, כדי להגדיר את מפתח ה-SSH החדש שלך.

5. לבסוף, הזן כותרת מועדפת עבור מפתח ה-SSH. הכותרת היא רק לצורך תיעוד פנימי. הדבק את מפתח ה-SSH שלך מהקובץ ששמרת קודם, בשדה הקלט מפתח, ולחץ על הוסף מפתח SSH כדי לשמור את המפתח.
זכור שזהו המפתח הציבורי שלך ולא המפתח הפרטי שלך!

הוספת מפתח פרטי SSH לכרטיסיות הזיהוי של Jenkins
עכשיו, לאחר שיצרת את זוג המפתחות SSH שלך לשימוש כאישור בJenkins, עליך גם להוסיף את מפתח ה-SSH הפרטי שלך לאישורי ה-Jenkins שלך כדי לאשר את הגישה של Jenkins למאגר ה-GitHub שלך. אבל תחילה, שים לב ל-URL של SSH של מאגר ה-GitHub שלך.
1. נווט אל דף מאגר ה-GitHub שלך, לחץ על Code → SSH, ולחץ על סמל ההעתקה שמופיע למטה כדי להעתיק את URL של SSH ללוח.

2. לאחר מכן, נווט אל לוח המחוונים של Jenkins, ואז לחץ על נהל את Jenkins כדי לגשת לדף ההגדרות של הפרויקט שלך.

3. גלול מטה, ואז לחץ על האפשרות נהל אישורים תחת הסעיף אבטחה כדי לראות את רשימת אישורי ה-Jenkins שלך.

4. לחץ Jenkins בדף האישורים שמופיע למטה כדי לגשת לדף "המערכת" שבו תוכל להוסיף אישורים חדשים.

5. כעת, בדף המערכת, החזק את העכבר מעל האפשרות אישורים גלובליים (ללא הגבלה) כדי להציג את תפריט הנפתח ולחץ על סמל החץ למטה.
לחץ על הוסף אישורים מתוך תפריט הנפתח. הדף מפנה לטופס שבו תקבע את האישורים החדשים המוצגים בשלב הבא.

6. בחר שם משתמש SSH עם מפתח פרטי בשדה הקלט הראשון ו הכנס שם משתמש לפרויקט בשדה שם משתמש. לדוגמה, השם משתמש הוא CI/CD.
במקרה זה, שם המשתמש הוא תיעוד פנימי בלבד ואינו משמש לאימות.

7. הפעל את הפקודה למטה כדי לראות את המפתח הפרטי שלך ב-SSH, שנה את המיקום לאותו מקום שבו שמרת את המפתח, כפי שמוצג למטה (המפתח ממוקם בתיקיית הבית). שמור את המפתח הפרטי שלך מכיוון שתוסיף אותו לזיהוי הזהב שלך בשלב הבא.

8. לאחר ששמרת את המפתח הפרטי שלך, חזור לדף הזיהויים הגלובליים (בלתי מוגבלים).
הזן את הססמה שהגדרת בסעיף השני בשדה הקלט של הססמה, ולחץ על אישור. בכך, תאשר ל-Jenkins גישה למאגר ה-GitHub שלך.
אם לא כללת ססמה במהלך יצירת המפתח של ה-SSH, לחץ על הזן ישירות ולחץ על הכפתור הוסף. הזן את המפתח הפרטי שלך בשדה הקלט של המפתח, כפי שמוצג למטה, ולחץ על אישור כדי לשמור את הזיהוי.

8. חזור ל-לוח הבקרה שלך ב-Jenkins, העבר את העכבר למעלה מעל לפרויקט שלך ולחץ על סמל החץ למטה, ואז בחר ב-הגדר, כפי שמוצג למטה. העמוד מופנה לדף הגדרות הפרויקט שלך.

10. לבסוף, בחר את שם המשתמש של האישורים בשדה הנפתח (משלב שישה של סעיף "הוספת מפתח סודי לאישורי Jenkins"). Jenkins מיישם את עקרון CID כברירת מחדל כדי להבטיח את האינטגרציה והפריסה הרציפות של הפרויקט שלך.

הגדרת טריגרים לבנייה ופעולות אחרי הבנייה
כעת יצרת בהצלחה את השלד של עבודת בנייה. אבל אם אתה מבצע שינויים קבועים בפרויקט שלך, האם תצטרך לפרוס מחדש בכל פעם באופן ידני? למה לא להגדיר טריגרים לבנייה? טריגרים לבנייה מפריסים באופן אוטומטי את השינויים בפרויקט שלך שנדחפו ל-GitHub.
1. בדף הגדרות הפרויקט שלך, לחץ על הכרטיסייה טריגרים לבנייה, וסמן את האפשרות טריגר הוק של GitHub לסקר GITScm. אפשרות זו מאפשרת לך לפרוס באופן אוטומטי את השינויים בפרויקט שלך.

2. לחץ על הכרטיסייה בנייה, לחץ על הוסף שלב בנייה, ובחר בצע Shell כדי ליצור סקריפט שירוץ כל פעם ש-Jenkins מוריד גרסה חדשה של הקוד שלך.

הסקריפט של Shell שאתה יוצר תלוי בסביבת הפיתוח שלך. אם אתה משתמש ב-Windows, Windows יבצע את הסקריפט; אותו הדבר נכון גם למערכות הפעלה אחרות.
3. הקלד את פקודות ה-Shell הבאות, ולחץ שמור כדי לשמור את סקריפט הבנייה
הפקודות למטה מושכות (pull
) את הקוד שלך מהמיקום המקורי של הקוד (origin master
) ועם NodeJS NPM install (npm install
) את התלויות הנדרשות להרצת הפרוייקט שלך. הפקודות מבוצעות בכל פעם שאתה מבקש לגרור את הקוד שלך למנהל הקוד המקורי שלך.
הפרויקט הספציפי הזה משתמש ב-NodeJS לתלויות, אך הפרויקט הספציפי שלך יכול לא לעשות זאת.

4. עכשיו, בלוח הבקרה של הפרויקט שלך, לחץ בנה עכשיו כדי להריץ את הבנייה.

5. גלה מטה את ההיסטוריה של הבנייה כדי לראות את מצב הבנייה. אם הבנייה הצליחה, תראה פלט דומה לצילום המסך למטה.

אם הבנייה נכשלה, תראה את הפלט המוצג למטה.

6. לאחר מכן, גלה מעלה ולחץ על הגדר כדי להגדיר את פעולות הבניה האחריות של הפרויקט.

7. לחץ על לשונית פעולות אחריות לאחר הבנייה, ואז לחץ על הוסף פעולה לאחר הבנייה ובחר מפרסם Git. הדף מרחיב את סעיף ההגדרות של מפרסם Git (השלב הבא).

8. לבסוף, הפעל את האפשרות דחוף רק אם הבנייה הצליחה ולחץ על הכפתור שמור כדי לשמור את השינויים. הפעלת אפשרות זו מודיעה ל-Jenkins לפרסם את הקוד רק כאשר ריצת הבנייה מצליחה.

Conclusion
במדריך זה, עברת דרך תהליך החיבור של Jenkins למערכת ניהול קוד המקור שלך. יצרת גם סקריפט בנייה שרץ באופן אוטומטי כאשר Jenkins מוריד גרסה חדשה של הקוד שלך והגדרת זרימות בנייה להפעלה אוטומטית של פרטי האינטרנט.
עכשיו, למה לא לחסוך לעצמך זמן על ידי אוטומציה של ההפצה של היישום שלך עם עבודת בנייה של Jenkins?