מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

26 ביוני 2013

no comments

Team Foundation Service הוא גירסת ענן של TFS, המאפשרת בין היתר להגדיר ביצוע Build ו- Deployment ישירות ל- Windows Azure . במדריך זה נגדיר Continuous Deployment של פרוייקט ASP.NET MVC אל Windows Azure Web Sites, כך שבכל Check In של קוד, יבוצע Build ו- Deployment לענן.

הרשמה וחיבור ל- Team Foundation Service

כדי להרשם ל- Team Foundation Service נגש לכתובת http://tfs.visualstudio.com ונרשם לשירות. בסיום הרישום,

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

בסיום התהליך, נתבקש לספק כתובת עבור האתר האישי שלנו המכיל את הפרוייקטים במנוהלים באתר. לסיום נלחץ על Create Account.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

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

ליצירת פרוייקט חדש נלחץ על New Team Project.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

ניתן לפרוייקט שם ותיאור, וכן נבחר את תבנית הפרוייקט (ה- Process Template). לסיום נלחץ על Create Project.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

הפרוייקט יווצר ובסוף התהליך נקבל את ההודעה המשמחת הבאה. נלחץ על Navigate to Project כדי להגיע לעמוד הפרוייקט.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

עמוד הפרוייקט הריק בתוך Team Foundation Service יראה כך:

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

כעת, עלינו לחבר את Visual Studio ל- Team Foundation Service ולפרוייקט שיצרנו על מנת לבצע Check In של קוד.

הדרך הפשוטה ביותר לבצע את הקישור בין Visual Studio לבין ה- Team Foundation Service היא פשוט ללחוץ על הקישור Open new instance of Visual Studio. מיד יפתח Visual Studio ויתחבר ל- Team Foundation Service.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

לחילופין, הדרך הידנית לעשות זאת היא לבחור בתוך Visual Studio מתוך התפריט Team באפשרות Connect to Team Foundation Server.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

הפעולה תפתח את ה- Team Explorer בו ניתן להגדיר את החיבור ל- Team Foundation Service.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

בחלון Connect to Team Foundation נלחץ על כפתור ה- Servers להוספת כתובת השרת ה- TFS מולו נרצה לעבוד. בחלון ה- Add/Remove Team Foundation Server נבלחץ על Add ונזין את כתובת ה- Team Foundation Service שלנו (.visualstudio.com">.visualstudio.com">.visualstudio.com">.visualstudio.com">https://<yourname>.visualstudio.com).

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

נזין את ה- Microsoft Account לצורך ההזדהות מול TFS, וכעת נוכל לבחור את הפרוייקט מולו נרצה לעבוד.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

לאחר סיום ההתחברות ה- Team Explorer יראה לנו שאנחנו מחוברים לפרוייקט הנבחר (Demo Project)

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

הוספת פרוייקט ל- Source Control

ב- Visual Studio ניצור או נפתח את הפרוייקט שלו נרצה לבצע Deploy לענן, לדוגמא, פרוייקט ASP.NET MVC.

נסמן את הפרוייקט, ונבחר להוסיף אותו ל- Source Control.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

קבל או שנה את ערכי ברירת המחדל של מיקום הוספת הפרוייקט ל- Source Control ולחץ OK.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

לאחר ההוספה ל- Source Control יראו iconים מתאימים ע”ג הקבצים ב- Solution Explorer. נבצע Check In לקבצי הפרוייקט.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

לחיצה על Check In תפתח את ה- Team Explorer במסך ה- Pending Changes שמציג את השינויים האחרונים שעדיין לא נשמרו ל- Source Control.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

נזין תיעוד לפעולה ונבצע Check In לקבצים.

קישור הפרוייקט מ- Team Foundation Service ל- Windows Azure

עד כה יצרנו פרוייקט וקישרנו אותו ל- Team Foundation Service. כעת נרצה לקשר את הפרוייקט ב- TFS אל Windows Azure. בדוגמה זו ניצור Windows Azure Web Site אליו נבצע Deployment של הפרוייקט מתוך Visual Studio.

בפורטל הניהול של Windows Azure ניצור Web Site חדש ע”י לחיצה על + New, בחירה ב- Compute, בחירה ב- Web Site ובחירה ב- Quick Create. נזין שם ונלחץ על Create Web Site.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

לאחר יצירת האתר, במסך הפרטים שלו נבחר באפשרות Set up deployment from source control.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

ל- Windows Azure יש אפשרות לעבוד מול מספר Source Control Providers, ביניהם Team Foundation Service. נבחר בו ונלחת על החץ למעבר לשלב הבא.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

בשלב הבא נזין את כתובת השירות שלנו ונלחץ על Authorize Now.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

נאשר את בקשת ההרשאה לגשת ל- TFS:

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

בשלב האחרון בתהליך נבחר את הפרוייקט אליו נרצה לבצע Deployment ונשלים את התהליך.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

לאחר השלמת יצירת הקישור, נראה את המסך הבא באיזור ב- Deployments.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

ביצוע Check In ו- Deployment לענן

אם נגלוש לכתובת האתר שיצרנו (בדוגמא http://tfsdemo.azurewebsites.net) נראה את מסך ברירת המחדל שנוצר בעת יצירת Windows Azure Web Site. המשמעות היא שאין שום אתר שמתאחסן כאן והתוכן הוא התוכן הראשוני בלבד.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

משמעות הדבר היא שעדיין לא עשינו Deployment של אתר ל- Web Site הזה.

נחזור ל- Visual Studio, ונבצע שינוי כלשהו בקוד האתר. לדוגמא, בפרוייקט חדש מסוג ASP.NET MVC 4 נערוך את הקובץ index.cshtml שנמצא בתיקייה Views\Home, ונשנה את כותרת הדף מ- Home Page ל- My Home Page.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

בחלון ה- Team Explorer, נלחץ על Pending Changes כדי לראות את השינויים האחרונים.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

נזין תיאור ונלחץ על Check In.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

לאחר ביצוע ה- Check In, נחזור לעמוד הבית ב- Team Explorer

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

בעמוד הראשי, נלך לאיזור ה- Buildsמדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

במסך ה- Builds, נראה את הבילד האחרון שבוצע, ששמו tfsdemo_CD (קיצור של Continuous Deployment), הבנוי לפי ה- Build Definition ששמו tfsdemo_CD.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

לחיצה כפולה על הבילד המוצלח תציג את סיכום פרטי הבילד, שבסופו נפרש הפרוייקט בכתובת http://tfsdemo.azurewebsites.net.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

אם נגלוש כעת לכתובת האתר http://tfsdemo.azurewebsites.net נוכל לראות את התוצאה הבאה:

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

אם נתבונן ב- Build Definition שמבצע את ה- Continuous Deployment:

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

נוכל לראות שהטריגר לביצוע הבילד הוא אחרי כל Chcek In.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

כמו כן נוכל לראות שסביבת ה- Deployments שלנו היא הפרוייקט tfsdemo שיצרנו ב- TFS.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

אם נחזור לפורטל של Windows Azure, נוכל לראות את הסטוריית ה- Deployments של ה- Web Site, שכרגע מכילה רק Deployment יחיד.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

במידה ונבצע שינויים נוספים בפרוייקט, ונבצע Check In, יבוצע בילד נוסף, שיגרור אחריו Deployment חדש.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

ה- Deployment האחרון הוא הנוכחי.

בכל שלב, ניתן לחזור לגירסא קודמת, ע”י סימון ה- Deployment הרצוי, ובחירה באפשרות Redeploy מהתפריט התחתון.

מדריך: Continuous Deployment אל Windows Azure דרך Team Foundation Service

סיכום

במדריך זה ראינו איך לבצע Build ו- Deployment ישירות ל- Windows Azure . הגדרנו Continuous Deployment של פרוייקט ASP.NET MVC אל Windows Azure Web Sites, כך שבכל Check In של קוד, יבוצע Build ו- Deployment לענן.

Add comment
facebook linkedin twitter email