ทําให้ไปป์ไลน์การปรับใช้งานของคุณเป็นอัตโนมัติโดยใช้ API และ Azure DevOps

เครื่องมือไปป์ไลน์การปรับใช้ Microsoft Fabric ช่วยให้ทีมข่าวกรองธุรกิจสามารถสร้างกระบวนการเผยแพร่ที่มีประสิทธิภาพและนํากลับมาใช้ใหม่ได้สําหรับเนื้อหา Fabric ของพวกเขา

เพื่อให้เกิดการรวมอย่างต่อเนื่องและการจัดส่งเนื้อหา (CI/CD) อย่างต่อเนื่อง องค์กรจํานวนมากใช้เครื่องมืออัตโนมัติรวมถึง Azure DevOps องค์กรที่ใช้ Azure DevOps สามารถใช้ส่วนขยายเครื่องมืออัตโนมัติของ Power BI ซึ่งสนับสนุนการดําเนินการ API ของไปป์ไลน์การปรับใช้จํานวนมาก

คุณสามารถใช้ไป ป์ไลน์การปรับใช้ Power BI REST API เพื่อรวม Fabric เข้ากับกระบวนการอัตโนมัติขององค์กรของคุณ นี่คือตัวอย่างบางส่วนของสิ่งที่สามารถทําได้โดยใช้ API:

  • จัดการไปป์ไลน์ตั้งแต่ต้นจนจบ รวมถึงการสร้างไปป์ไลน์ กําหนดพื้นที่ทํางานให้กับขั้นตอนใด ๆ และการปรับใช้และการลบไปป์ไลน์

  • กําหนดและยกเลิกการมอบหมายผู้ใช้ไปยังและจากไปป์ไลน์

  • รวม Fabric เข้ากับเครื่องมือ DevOps ที่คุ้นเคย เช่น Azure DevOps หรือ การดําเนินการ GitHub

  • กําหนดเวลาการปรับใช้ไปป์ไลน์ให้เกิดขึ้นโดยอัตโนมัติในเวลาที่ระบุ

  • ปรับใช้ไปป์ไลน์หลายรายการในเวลาเดียวกัน

  • แบบเรียงซ้อนขึ้นอยู่กับการปรับใช้ไปป์ไลน์ ถ้าคุณมีเนื้อหาที่เชื่อมต่อข้ามไปป์ไลน์ คุณสามารถตรวจสอบให้แน่ใจว่ามีการปรับใช้ไปป์ไลน์บางอย่างก่อน

ฟังก์ชัน API ของไปป์ไลน์การปรับใช้

หมายเหตุ

API ของไปป์ไลน์การปรับใช้ทํางานเฉพาะกับรายการ Power BI เท่านั้น

ไป ป์ไลน์การปรับใช้ Power BI REST API ช่วยให้คุณสามารถดําเนินการฟังก์ชันต่อไปนี้:

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

  • ปรับใช้ - การเรียก REST ช่วยให้นักพัฒนาสามารถใช้การปรับใช้ประเภทใดก็ได้ที่พร้อมใช้งานในบริการ Fabric

  • สร้าง และ ลบ ไปป์ไลน์ - ใช้ สร้างไปป์ไลน์ และ ลบไปป์ไลน์ เพื่อดําเนินการเหล่านี้

  • จัดการพื้นที่ทํางาน - ด้วย กําหนดพื้นที่ทํางาน และ ยกเลิกการมอบหมายพื้นที่ทํางาน คุณสามารถกําหนดและยกเลิกการมอบสิทธิ์พื้นที่ทํางานให้กับขั้นตอนไปป์ไลน์ที่เฉพาะเจาะจงได้

  • จัดการผู้ใช้ - ไปป์ไลน์ ลบผู้ใช้ ไปป์ไลน์ ช่วยให้คุณลบผู้ใช้ออกจากไปป์ไลน์ได้ อัปเดตผู้ใช้ ไปป์ไลน์ช่วยให้คุณสามารถเพิ่มผู้ใช้ไปยังไปป์ไลน์ของคุณได้

การปรับใช้ใดได้รับการสนับสนุนโดย API

API สนับสนุนชนิดการปรับใช้ต่อไปนี้:

  • ปรับใช้ทั้งหมด - การเรียกใช้ API เดียวที่ปรับใช้เนื้อหาทั้งหมดในพื้นที่ทํางานไปยังขั้นตอนถัดไปในไปป์ไลน์ สําหรับการดําเนินการนี้ ให้ใช้ API ปรับใช้ทั้งหมด

  • การปรับใช้ แบบเลือก - ปรับใช้เฉพาะรายการที่เฉพาะเจาะจง เช่น รายงานหรือแดชบอร์ดในไปป์ไลน์ สําหรับการดําเนินการนี้ ให้ใช้ API การปรับใช้ ที่เลือก

  • ปรับใช้ ย้อนหลัง - ปรับใช้รายการใหม่ไปยังขั้นตอนก่อนหน้า การปรับใช้ย้อนหลังจะทํางานเฉพาะเมื่อรายการที่ถูกปรับใช้ไม่มีอยู่ในขั้นตอนเป้าหมาย สําหรับการดําเนินการนี้ ใช้การปรับใช้ทั้งหมดหรือเลือกปรับใช้ API ที่มีisBackwardDeploymentการตั้งค่าเป็นTrue

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

ก่อนที่คุณเริ่มต้น

ก่อนที่คุณจะใช้ API ของไปป์ไลน์การปรับใช้ ตรวจสอบให้แน่ใจว่าคุณมีสิ่งต่อไปนี้:

รวมไปป์ไลน์ของคุณกับ Azure DevOps

หากต้องการทําให้กระบวนการปรับใช้เป็นแบบอัตโนมัติจากภายในไปป์ไลน์การเผยแพร่ของคุณ ใน Azure DevOps ให้ใช้หนึ่งในวิธีการเหล่านี้:

  • PowerShell - สคริปต์จะลงชื่อเข้าใช้ Fabric โดยใช้บริการหลักหรือผู้ใช้

  • เครื่องมืออัตโนมัติของ Power BI - ส่วนขยายนี้ทํางานกับบริการหลักหรือผู้ใช้

คุณยังสามารถใช้การเรียกใช้ Power BI REST API อื่น ๆ เพื่อดําเนินการที่เกี่ยวข้องให้เสร็จสมบูรณ์ เช่น การนําเข้า .pbix ลงในไปป์ไลน์ อัปเดตแหล่งข้อมูลและพารามิเตอร์

ใช้ส่วนขยายเครื่องมืออัตโนมัติของ Power BI

ส่วนขยายเครื่องมืออัตโนมัติของ Power BI เป็นส่วนขยายของ Azure DevOps โอเพนซอร์ส (Open Source)ที่มีช่วงของการดําเนินการไปป์ไลน์การปรับใช้ที่สามารถดําเนินการได้ใน Azure DevOps ส่วนขยายช่วยลดความจําเป็นสําหรับ API หรือสคริปต์ในการจัดการไปป์ไลน์ การดําเนินการแต่ละรายการสามารถใช้เพื่อทํางานหนึ่ง ๆ เช่น การสร้างไปป์ไลน์ การดําเนินการสามารถใช้ร่วมกันในไปป์ไลน์ Azure DevOps เพื่อสร้างสถานการณ์ที่ซับซ้อนมากขึ้น เช่น การสร้างไปป์ไลน์ การกําหนดพื้นที่ทํางานให้กับไปป์ไลน์ เพิ่มผู้ใช้ และการปรับใช้

หลังจากที่คุณเพิ่มส่วนขยายเครื่องมืออัตโนมัติของ Power BI ไปยัง DevOps แล้ว คุณจําเป็นต้องสร้างการเชื่อมต่อบริการ การเชื่อมต่อต่อไปนี้จะพร้อมใช้งาน:

  • บริการหลัก (แนะนํา) - การเชื่อมต่อนี้จะรับรองความถูกต้องโดยใช้ โครงร่างสําคัญ ของบริการ และจําเป็นต้องใช้ข้อมูลลับและ ID แอปพลิเคชันของแอป Microsoft Entra เมื่อคุณใช้ตัวเลือกนี้ ให้ตรวจสอบว่ามี การเปิดใช้งานการตั้งค่า ผู้ดูแลระบบบริการสําหรับบริการหลักหรือไม่

  • ชื่อผู้ใช้และรหัสผ่าน – กําหนดค่าเป็นการเชื่อมต่อบริการทั่วไปด้วยชื่อผู้ใช้และรหัสผ่าน วิธีการเชื่อมต่อนี้ไม่สนับสนุนการรับรองความถูกต้องแบบหลายปัจจัย เราขอแนะนําให้คุณใช้วิธีการเชื่อมต่อโครงร่างสําคัญของบริการ เนื่องจากไม่จําเป็นต้องจัดเก็บข้อมูลประจําตัวผู้ใช้บน Azure DevOps

หมายเหตุ

ส่วนขยายเครื่องมืออัตโนมัติของ Power BI ใช้การเชื่อมต่อบริการ Azure DevOps เพื่อจัดเก็บข้อมูลประจําตัว สําหรับข้อมูลเพิ่มเติม ดู วิธีที่เราจัดเก็บข้อมูลประจําตัวของคุณสําหรับบริการ Azure DevOps

หลังจากที่คุณเปิดใช้งานการเชื่อมต่อบริการสําหรับเครื่องมือ Azure DevOps Power BI อัตโนมัติคุณสามารถสร้างงานไปป์ไลน์ได้ ส่วนขยายประกอบด้วยงานไปป์ไลน์การปรับใช้ต่อไปนี้:

  • สร้างไปป์ไลน์ใหม่

  • กําหนดพื้นที่ทํางานให้กับขั้นตอนไปป์ไลน์

  • เพิ่มผู้ใช้ไปยังไปป์ไลน์การปรับใช้

  • เพิ่มผู้ใช้ไปยังพื้นที่ทํางาน

  • ปรับใช้เนื้อหาไปยังไปป์ไลน์การปรับใช้

  • ลบพื้นที่ทํางานจากไปป์ไลน์การปรับใช้

  • ลบไปป์ไลน์

เข้าถึงตัวอย่างของ PowerShell

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

คุณยังสามารถดาวน์โหลดโฟลเดอร์ GitHub ทั้งหมด PowerBI-Developer-Samples ได้

ตัวอย่าง PowerShell

ส่วนนี้จะอธิบายตัวอย่างสคริปต์ PowerShell ที่ปรับใช้แบบจําลองความหมาย รายงาน และแดชบอร์ดจากขั้นตอนการพัฒนาไปยังขั้นตอนการทดสอบ จากนั้นสคริปต์จะตรวจสอบว่าการปรับใช้สําเร็จหรือไม่

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

  1. ลงชื่อเข้าใช้ - ก่อนที่คุณจะสามารถปรับใช้เนื้อหาของคุณได้ คุณต้องลงชื่อเข้าใช้ Fabric โดยใช้บริการหลักหรือผู้ใช้ ใช้คําสั่ง เชื่อมต่อ-PowerBIServiceAccount เพื่อลงชื่อเข้าใช้

  2. สร้างเนื้อความ คําขอของคุณ - ในส่วนนี้ของสคริปต์ที่คุณระบุรายการ (เช่น รายงานและแดชบอร์ด) ที่คุณกําลังปรับใช้

    $body = @{ 
        sourceStageOrder = 0 # The order of the source stage. Development (0), Test (1).   
        datasets = @(
            @{sourceId = "Insert your dataset ID here" }
        )      
        reports = @(
            @{sourceId = "Insert your report ID here" }
        )            
        dashboards = @(
            @{sourceId = "Insert your dashboard ID here" }
        )
    
        options = @{
            # Allows creating new item if needed on the Test stage workspace
            allowCreateArtifact = $TRUE
    
            # Allows overwriting existing item if needed on the Test stage workspace
            allowOverwriteArtifact = $TRUE
        }
    } | ConvertTo-Json
    
  3. ปรับใช้ - ที่นี่คุณดําเนินการปรับใช้

    $url = "pipelines/{0}/Deploy" -f "Insert you pipeline ID here"
    $deployResult = Invoke-PowerBIRestMethod -Url $url  -Method Post -Body $body | ConvertFrom-Json
    
  4. (ไม่บังคับ) การแจ้งเตือน ความสมบูรณ์ของการปรับใช้ - เนื่องจาก API การปรับใช้เป็นแบบอะซิงโครนัส คุณจึงสามารถโปรแกรมสคริปต์เพื่อแจ้งให้คุณทราบเมื่อการปรับใช้เสร็จสมบูรณ์

    $url =  "pipelines/{0}/Operations/{1}" -f "Insert you pipeline ID here",$deployResult.id
    $operation = Invoke-PowerBIRestMethod -Url $url -Method Get | ConvertFrom-Json    
    while($operation.Status -eq "NotStarted" -or $operation.Status -eq "Executing")
    {
        # Sleep for 5 seconds
        Start-Sleep -s 5
        $operation = Invoke-PowerBIRestMethod -Url $url -Method Get | ConvertFrom-Json
    }
    

ข้อควรพิจารณาและข้อจำกัด

  • การปรับใช้โดยใช้ API ขึ้นอยู่กับข้อจํากัดเดียวกันกับส่วนติดต่อผู้ใช้ของไปป์ไลน์การปรับใช้

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

  • การปรับใช้กระแสข้อมูลโดยใช้ บริการหลัก ไม่ได้รับการสนับสนุน

  • จํานวนสูงสุดของรายการที่สามารถปรับใช้ได้ในการปรับใช้เดียวคือ 300

  • API ของไปป์ไลน์การปรับใช้สนับสนุนเฉพาะรายการ Power BI เท่านั้น

  • การสร้างไปป์ไลน์แบบกําหนดเองของลําดับขั้น 2-10 ขั้นในขณะนี้ได้รับการสนับสนุนผ่าน UI เท่านั้น