บทช่วยสอน: ทำให้การปรับใช้โซลูชันเป็นแบบอัตโนมัติโดยใช้ GitHub Actions สำหรับ Microsoft Power Platform
ในบทช่วยสอนนี้ คุณจะเรียนรู้วิธีการ:
- สร้างพื้นที่เก็บข้อมูลบน GitHub ใหม่
- สร้างเวิร์กโฟลว์ GitHub สองรายการโดยใช้ GitHub Actions สำหรับ Microsoft Power Platform
เวิร์กโฟลว์สามารถส่งออกแอปของคุณโดยอัตโนมัติ (เป็นโซลูชันที่ไม่มีการจัดการ) จากสภาพแวดล้อมการพัฒนา สร้างอาร์ทิแฟกต์การสร้าง (โซลูชันที่มีการจัดการ) และปรับใช้แอปในสภาพแวดล้อมการทำงานจริงของคุณ บทช่วยสอนนี้ใช้ โซลูชัน ALMLab ที่คุณสร้างและสภาพแวดล้อมที่คุณตั้งค่าไว้ในบทช่วยสอนก่อนหน้านี้
บทช่วยสอนที่เกี่ยวข้อง: เริ่มต้นใช้งาน และ สร้างแอปแบบจำลอง
สร้างบัญชี GitHub
ไปที่ https://github.com แล้วคลิก ลงทะเบียน หรือ เริ่มทดลองใช้ฟรี (หรือเข้าสู่ระบบหากคุณมีบัญชีอยู่แล้ว)
หลังจากที่คุณสร้างบัญชีของคุณแล้ว ให้สร้างพื้นที่เก็บข้อมูลโดยเลือก สร้างพื้นที่เก็บข้อมูล หรือ สร้าง
คุณอาจเห็นหน้าจอเริ่มต้นทางเลือกต่อไปนี้:
สร้างพื้นที่เก็บข้อมูลใหม่ของคุณและตั้งชื่อว่า 'poweractionslab' ตรวจสอบให้แน่ใจว่าคุณได้เลือก เพิ่มไฟล์ README เพื่อเริ่มต้นพื้นที่เก็บข้อมูล และเลือก สร้างพื้นที่เก็บข้อมูล
การสร้างข้อมูลลับใหม่สำหรับการรับรองความถูกต้องของบริการหลัก
ไปที่ที่เก็บข้อมูลของคุณและคลิก การตั้งค่า จากนั้นขยาย ความลับ แล้วคลิก การดำเนินการ
บนหน้า ข้อมูลลับ ตั้งชื่อข้อมูลลับ 'PowerPlatformSPN' ใช้ข้อมูลลับของไคลเอ็นต์จากการลงทะเบียนแอปพลิเคชันที่สร้างขึ้นใน Microsoft Entra และป้อนลงในฟิลด์ ค่า จากนั้นเลือก เพิ่มข้อมูลลับ ข้อมูลลับของไคลเอ็นต์จะถูกอ้างอิงในไฟล์ YML ที่ใช้ในการกำหนดเวิร์กโฟลว์ GitHub ในภายหลังในแล็บนี้
ตอนนี้ข้อมูลลับของไคลเอ็นต์ถูกเก็บไว้อย่างปลอดภัยเป็นข้อมูลลับของ GitHub
สร้างเวิร์กโฟลว์เพื่อส่งออกและแยกไฟล์โซลูชันไปยังสาขาใหม่
คลิกที่ การดำเนินการ และคลิก ตั้งค่าเวิร์กโฟลว์ด้วยตัวคุณเอง หรือคลิกกำหนดค่าในกล่อง เวิร์กโฟลว์แบบง่าย ใต้ส่วน แนะนำสำหรับพื้นที่เก็บข้อมูลนี้
การดำเนินการนี้จะเริ่มไฟล์ YAML ใหม่ด้วยเวิร์กโฟลว์พื้นฐานที่จะช่วยคุณเริ่มต้นใช้งานกับการดำเนินการ GitHub
ลบเนื้อหาที่สร้างไว้ล่วงหน้า วางเนื้อหาจากไฟล์ export-and-branch-solution-with-spn-auth.yml แล้วเปลี่ยนชื่อไฟล์เป็น 'export-and-branch-solution'.yml
ปรับปรุง
<ENVIRONMENTURL>
ด้วย URL สำหรับสภาพแวดล้อมการพัฒนาที่คุณต้องการส่งออก (ตัวอย่างเช่น:https://poweractionsdev.crm.dynamics.com
)ปรับปรุง
<APPID>
และ<TENANT ID>
ด้วยค่าของคุณหากคุณกำลังใช้ข้อมูลประจำตัว ให้วางไฟล์ export-and-branch-solution.yml แทนเนื้อหาไฟล์ export-and-branch-solution-with-spn-auth.yml อัปเดต
<USERNAME>
ด้วยชื่อผู้ใช้ที่คุณใช้เพื่อเชื่อมต่อกับสภาพแวดล้อม
เคล็ดลับ
หากคุณไม่คุ้นเคยกับการดำเนินการ GitHub และต้องการเรียนรู้เพิ่มเติม โปรดดูคู่มืออย่างเป็นทางการที่ https://docs.github.com/en/actions
ขณะนี้คุณพร้อมที่จะยืนยันการเปลี่ยนแปลงของคุณ เลือก เริ่มยืนยัน พิมพ์ สร้าง YML การส่งออก ในฟิลด์ชื่อเรื่อง แล้วเพิ่มคำอธิบาย (ไม่บังคับ) จากนั้นคลิก ยืนยันไฟล์ใหม่
ขอแสดงความยินดี คุณเพิ่งสร้างเวิร์กโฟลว์ GitHub แรกโดยใช้การดำเนินการต่อไปนี้:
- ฉันคือใคร: รับประกันว่าคุณสามารถเชื่อมต่อกับสภาพแวดล้อมที่คุณกำลังส่งออกมาได้สำเร็จ
- ส่งออกโซลูชัน: ส่งออกไฟล์โซลูชันจากสภาพแวดล้อมการพัฒนาของคุณ
- แกะโซลูชัน: ไฟล์โซลูชันที่ส่งออกจากเซิร์ฟเวอร์เป็นไฟล์บีบอัด (zip) ที่มีไฟล์กำหนดค่าที่รวมกัน ไฟล์เริ่มต้นเหล่านี้ไม่เหมาะสำหรับการจัดการโค้ดต้นฉบับ เนื่องจากไม่มีโครงสร้างที่ทำให้ระบบการจัดการโค้ดต้นฉบับเป็นไปได้ในการสร้างความแตกต่างในไฟล์อย่างเหมาะสม และบันทึกการเปลี่ยนแปลงที่คุณต้องการกำหนดให้กับการควบคุมต้นทาง คุณต้อง 'แยก' ไฟล์โซลูชันเพื่อให้เหมาะสำหรับการจัดเก็บและประมวลผลการควบคุมต้นทาง
- Branch Solution: สร้างสาขาใหม่เพื่อจัดเก็บโซลูชันที่ส่งออก
ทดสอบการส่งออกและแยกเวิร์กโฟลว์
จากนั้น ทดสอบว่าเวิร์กโฟลว์ทำงาน นำทางไปยัง การดำเนินการเรียกใช้เวิร์กโฟลว์ และเลือก เรียกใช้เวิร์กโฟลว์ หากคุณมีชื่อโซลูชันที่แตกต่างจาก 'ALMLab' ให้เปลี่ยนค่าที่นี่ แต่ปล่อยให้ค่าอื่นๆ เหมือนเดิม
หลังจาก 5-10 วินาทีเวิร์กโฟลว์จะเริ่มทำงาน และคุณสามารถเลือกเวิร์กโฟลว์ที่กำลังทำงานอยู่เพื่อตรวจสอบความคืบหน้า
หลังจากเวิร์กโฟลว์เสร็จสิ้น ให้ตรวจสอบความถูกต้องว่ามีการสร้างสาขาใหม่ด้วยโซลูชันที่แยกไปยังโฟลเดอร์โซลูชัน / ALMLab ไปที่แท็บ โค้ด และ ขยายเมนูแบบดรอปดาวน์ สาขา
เลือกสาขาที่สร้างขึ้นโดยการดำเนินการ
ตรวจสอบว่าโฟลเดอร์โซลูชัน / ALMLab ถูกสร้างขึ้นในสาขาใหม่และจากนั้นสร้างคําขอดึงข้อมูลเพื่อรวมการเปลี่ยนแปลงเข้ากับสาขาหลัก คลิก มีส่วนร่วม และในเมนูแบบเลื่อนลง คลิก เปิดคำขอการดึง
บนหน้าจอ เปิดคำขอดึงข้อมูล เพิ่มชื่อเรื่องและคำอธิบายตามต้องการแล้ว คลิก สร้างคำขอดึงข้อมูล
หน้าจอจะอัปเดตโดยแสดงคำขอดึงข้อมูลที่สร้างขึ้นใหม่ เมื่อมีการสร้างคำขอดึงข้อมูล การยืนยันจะแสดงว่าสาขาของเราไม่มีข้อขัดแย้งกับสาขาหลัก การยืนยันนี้หมายความว่าสามารถรวมการเปลี่ยนแปลงเข้ากับสาขาหลักได้โดยอัตโนมัติ คลิก รวมคำขอการดึง จากนั้น คลิก ยืนยันการผสาน หรือคลิกลบสาขาเพื่อล้างสาขาที่หมดอายุแล้วในขณะนี้
กลับไปที่สาขาเริ่มต้น (หลัก) และตรวจสอบความถูกต้องของโซลูชันว่าพร้อมใช้งานแล้ว
สร้างเวิร์กโฟลว์ที่ใช้ซ้ำได้เพื่อสร้างอาร์ทิแฟกต์ของบิลด์และนำเข้าไปยังการใช้งานจริง
ในส่วนนี้ เราจะสร้างเวิร์กโฟลว์เพิ่มเติมที่:
- สร้างโซลูชันที่มีการจัดการ และเผยแพร่เป็นอาร์ทิแฟกต์ GitHub
- นำเข้าอาร์ติแฟกต์การสร้างเข้าสู่สภาพแวดล้อมการผลิต
นำทางไปยัง การดำเนินการ และเลือก เวิร์กโฟลว์ใหม่
เลือก ตั้งค่าเวิร์กโฟลว์ด้วยตัวคุณเอง
เปลี่ยนชื่อของเวิร์กโฟลว์เป็น 'release-solution-to-prod-with-inputs' และคัดลอกเนื้อหาจากไฟล์ release-solution-to-prod-with-inputs.yml แล้ววางลงในหน้าจอ แก้ไขไฟล์ใหม่
ยืนยันการเปลี่ยนแปลง เลือก เริ่มยืนยัน จากนั้นเพิ่มชื่อและคำอธิบาย (ไม่บังคับ) จากนั้น เลือก ยืนยันไฟล์ใหม่
เรียกเวิร์กโฟลว์ที่ใช้ซ้ำได้ในเหตุการณ์การเผยแพร่
ในส่วนนี้ เราจะเรียกเวิร์กโฟลว์ที่ใช้ซ้ำได้ใน เหตุการณ์การเผยแพร่
นำทางไปยัง การดำเนินการ และเลือก เวิร์กโฟลว์ใหม่
เลือก ตั้งค่าเวิร์กโฟลว์ด้วยตัวคุณเอง
เปลี่ยนชื่อของเวิร์กโฟลว์เป็น 'release-action-call' และคัดลอกเนื้อหาจากไฟล์ release-action-call.yml แล้ววางลงในหน้าจอ แก้ไขไฟล์ใหม่
ปรับปรุงตัวแปรต่อไปนี้ในไฟล์เวิร์กโฟลว์ใหม่:
- ปรับปรุง
<BUILD_ENVIRONMENT>
ด้วย URL สำหรับสภาพแวดล้อมการสร้างที่คุณใช้เพื่อสร้างโซลูชันที่มีการจัดการ ตัวอย่างเช่น:https://poweractionsbuild.crm.dynamics.com
- ปรับปรุง
<PROD_ENVIRONMENT>
ด้วย URL สำหรับสภาพแวดล้อมการใช้งานจริงที่คุณกำลังปรับใช้ ตัวอย่างเช่น: https://poweractionsprod.crm.dynamics.com - อัปเดต
<APP_ID>
ด้วยรหัสโปรแกรมประยุกต์ (ไคลเอ็นต์) ที่สามารถพบได้ใน แผ่นการลงทะเบียนแอปของพอร์ทัล Microsoft Azure โดยคลิกที่การลงทะเบียนที่สร้างไว้ก่อนหน้านี้ในบทช่วยสอนนี้ - อัปเดต
<TENANT_ID>
ด้วยรหัสไดเรกทอรี (ผู้เช่า) ที่สามารถพบได้ใน แผ่นการลงทะเบียนแอปของพอร์ทัล Microsoft Azure โดยคลิกที่การลงทะเบียนที่สร้างไว้ก่อนหน้านี้ในบทช่วยสอนนี้
- ปรับปรุง
ยืนยันการเปลี่ยนแปลง เลือก เริ่มยืนยัน จากนั้นเพิ่มชื่อ (ไม่บังคับ) และคำอธิบาย (ไม่บังคับ) จากนั้น เลือก ยืนยันไฟล์ใหม่
ทดสอบรุ่นนี้ไปยังเวิร์กโฟลว์การผลิต
ตอนนี้คุณพร้อมที่จะทดสอบเวิร์กโฟลว์ล่าสุดแล้ว เวิร์กโฟลว์นี้ถูกทริกเกอร์เมื่อมีการนำรุ่นใหม่ไปใช้งานจริง
นำทางไปยัง รุ่น
เลือก ร่างรุ่นใหม่
เพิ่มแท็กรุ่น ชื่อ และเลือก เผยแพร่รุ่น
เลือก การดำเนินการ เพื่อดูเวิร์กโฟลว์ที่กำลังทำงานอยู่
เลือกเวิร์กโฟลว์ที่กำลังทำงานอยู่เพื่อดูการดำเนินการขณะที่เรียกใช้
รอให้แต่ละการดำเนินการเสร็จสิ้น
หลังจากเวิร์กโฟลว์เสร็จสิ้นแล้ว ให้เข้าสู่ระบบสภาวะแวดล้อมการใช้งานจริงของคุณ และตรวจสอบว่าโซลูชันถูกปรับใช้เป็นโซลูชันที่มีการจัดการ
ปรับใช้การอัปเดตและตรวจสอบการเปลี่ยนแปลงก่อนนำออกใช้จริง
ตอนนี้เราจะทดสอบกระบวนการแบบครบวงจร จากนั้นดูว่าเราสามารถดูและตรวจสอบความถูกต้องของการเปลี่ยนแปลงในแอปก่อนที่จะนำไปใช้งานจริงได้อย่างไร
ไปที่โซลูชัน ALMLab ในสภาพแวดล้อมการพัฒนาของคุณและเลือก แก้ไข หรือคลิกชื่อที่แสดงของโซลูชัน
เลือกและดูตาราง คำขอการลาหยุด
คลิก + เพิ่มคอลัมน์ และสร้างคอลัมน์ใหม่ดังแสดงในรูปด้านล่าง
อัปเดตค่าฟิลด์:**
- ชื่อที่แสดง: ได้รับการอนุมัติ
- ประเภทข้อมูล: ใช่/ไม่ใช่
คลิก เสร็จแล้ว
คลิก บันทึกตาราง
กลับไปที่แท็บ การดำเนินการ ของพื้นที่เก็บข้อมูล GitHub ของคุณ เลือก เรียกใช้เวิร์กโฟลว์ และเลือกปุ่ม เรียกใช้เวิร์กโฟลว์
หลังจาก 5-10 วินาที เวิร์กโฟลว์จะเริ่มทำงาน และคุณสามารถคลิกเวิร์กโฟลว์ที่กำลังทำงานอยู่เพื่อตรวจสอบความคืบหน้า
หลังจากเวิร์กโฟลว์เสร็จสิ้น ให้ไปที่สาขาใหม่โดยเลือก รหัส และจากนั้น สาขา
เลือกสาขาที่สร้างโดยขยาย มีส่วนร่วม และคลิก เปิดคำขอดึงข้อมูล
เพิ่มชื่อ (ไม่บังคับ) แล้วคลิก สร้างคำขอดึงข้อมูล
หลังจากอัปเดตเนื้อหาแล้ว ให้คลิกที่แท็บ ไฟล์ถูกเปลี่ยน
โปรดสังเกตว่าการเปลี่ยนแปลงในโซลูชันจะถูกเน้นด้วยสีเขียวเพื่อระบุว่าส่วนนี้ของไฟล์ถูกเพิ่มเมื่อเทียบกับไฟล์เดียวกันในสาขาหลัก
กลับไปที่แท็บ การสนทนา เลือก คำขอดึงข้อมูล จากนั้นเลือกคำขอดึงข้อมูลที่สร้างไว้ก่อนหน้านี้
บนหน้า คำขอดึงข้อมูล เลือก สควอชและผสาน เพื่อรวมไฟล์โซลูชันที่อัปเดตเข้ากับสาขาหลักของคุณ คุณสามารถเลือกลบที่รวมเข้ากับสาขาหลักได้แล้ว
ทำตามขั้นตอนในส่วน ทดสอบรุ่นไปยังเวิร์กโฟลว์การผลิต เพื่อสร้างรุ่นใหม่และตรวจสอบว่าโซลูชันที่อัปเดตถูกปรับใช้กับสภาพแวดล้อมการผลิตของคุณแล้ว
ขอแสดงความยินดี คุณตั้งค่าเวิร์กโฟลว์ CI / CD ตัวอย่างสำเร็จโดยใช้การดำเนินการของ GitHub!
ดูเพิ่มเติม
ทำให้เวิร์กโฟลว์ของคุณตั้งแต่ ไอเดีย ไปจนถึงการผลิตโดยอัตโนมัติ