다음을 통해 공유


PBIP(Power BI 프로젝트) 및 유효성 검사용 Azure DevOps 빌드 파이프라인

패브릭 Git 통합을 Azure DevOps에 결합하면 작업 영역을 Azure DevOps 리포지토리의 분기에 연결하고 자동으로 동기화할 수 있습니다.

PBIP 형식을 Azure DevOps와 통합하면 Azure Pipelines를 사용하여 CI/CD(연속 통합 및 지속적인 업데이트) 파이프라인을 자동화할 수 있습니다. 이러한 파이프라인은 PBIP 메타데이터 파일을 처리하고 프로덕션 시스템에 배포하기 전에 일련의 품질 검사를 개발에 적용합니다.

이 문서에서는 연속 통합에 중점을 두고, 패브릭 작업 영역 내의 모든 의미 체계 모델 및 보고서에 대한 모범 사례를 보장하는 Azure DevOps 파이프라인을 만드는 방법을 설명합니다. 자동화된 품질 테스트를 구현함으로써 일반적인 실수를 방지하고 팀 효율성을 향상할 수 있습니다. 예를 들어 이러한 접근 방식은 새 팀원이 의미 체계 모델 및 보고서 개발에 설정된 표준을 준수할 수 있도록 합니다.

프로젝트 개요Fabric Git 통합 개요에서 PBIP와 패브릭 Git 통합에 대해 자세히 알아봅니다.

다음 다이어그램에서는 개발 품질을 검사하기 위해 Azure DevOps 파이프라인을 트리거하는 두 가지 개발 워크플로가 있는 엔드투엔드 시나리오를 보여줍니다. 파이프라인을 실행하면 다음 작업을 수행합니다.

DevOps 파이프라인의 워크플로를 보여 주는 다이어그램.

  1. User 1Power BI Desktop을 사용하여 개발합니다.

    1. VS Code를 사용하여 main에서 분기 만들기(feature/datasetchange)
    2. Power BI Desktop을 사용하여 의미 체계 모델 변경
    3. VS Code를 사용하여 원격 리포지토리 분기에 변경 내용 커밋
    4. Azure DevOps를 사용하여 주 분기에 끌어오기 요청 만들기
  2. 동시에 User 2다른 패브릭 작업 영역을 사용하여 개발합니다.

    1. 패브릭 Git을 사용하여 main에서 분기 만들기(feature/reportchange)
    2. 패브릭 작업 영역에서 보고서 변경
    3. 패브릭 Git을 사용하여 원격 리포지토리 분기에 변경 내용 커밋
    4. Azure DevOps를 사용하여 주 분기에 끌어오기 요청 만들기
  3. 팀 리더가 끌어오기 요청을 검토하고 Fabric Git을 사용하여 변경 내용을 팀 작업 영역에 동기화합니다.

  4. 끌어오기 요청은 의미 체계 모델을 검사하고 개발 품질을 보고하도록 Azure DevOps 파이프라인을 트리거합니다.

참고 항목

이 예제에서 파이프라인은 개발자가 Power BI Project 폴더 내 의미 체계 모델과 보고서의 메타데이터에 (사용자 지정 가능한) 모범 사례 규칙을 적용할 수 있게 하는 두 가지 오픈 소스 커뮤니티 도구를 사용합니다.

이 문서의 예제와 유사한 접근 방식이 다른 커뮤니티 도구에 적용됩니다. 이 문서에서는 앞에서 언급한 커뮤니티 도구의 세부 정보나 규칙 만들기와 편집을 자세히 살펴보지 않습니다. 이러한 항목에 대한 자세한 내용은 제공된 링크를 참조하세요. 이 문서는 소스 제어와 패브릭 작업 영역 간에 품질 게이트를 설정하는 프로세스에 중점을 둡니다. 참조하는 커뮤니티 도구는 3자 기여자가 개발한 것으로, Microsoft는 지원이나 설명서를 제공하지 않음에 유의하세요.

1단계 - Azure DevOps에 패브릭 작업 영역 연결

Azure DevOps에 패브릭 작업 영역 연결:

DevOps에 대한 Git 연결을 보여 주는 스크린샷.

Fabric Git 통합이 작업 영역 항목 내보내기를 완료하면 Azure DevOps 분기에 작업 영역의 각 항목에 대한 폴더가 포함됩니다.

여러 작업 영역 항목의 폴더가 있는 Azure DevOps 분기를 보여 주는 스크린샷.

2단계 - Azure DevOps 파이프라인 만들기 및 실행

새 파이프라인을 만들려면 다음을 수행하세요.

  1. 왼쪽 탐색 메뉴의 파이프라인 탭에서 파이프라인 만들기를 선택합니다.

    파이프라인을 만드는 방법을 보여 주는 스크린샷.

  2. Azure Repos Git을 선택하고 첫 번째 리포지토리(Fabric 작업 영역에 연결된 동일한 리포지토리)를 선택합니다.

    파이프라인의 코드 소스로 선택된 Azure 리포지토리 Git을 보여 주는 스크린샷.

    선택한 Demo-ADObuild 리포지토리를 보여 주는 스크린샷.

  3. 시작 파이프라인을 선택합니다.

    선택한 시작 파이프라인 아이콘을 보여 주는 스크린샷.

    다음 YAML 코드가 편집기에서 나타납니다.

    기본 YAML 코드를 보여 주는 스크린샷.

  4. 만든 파이프라인에 Power BI 개발자 모드 파이프라인의 YAML 코드를 복사하여 붙여넣습니다.

    추가할 YAML 코드를 보여 주는 스크린샷.

    YAML 코드의 두 번째 부분을 보여 주는 스크린샷.

  5. 저장 및 실행을 선택하여 새 파이프라인을 리포지토리에 커밋합니다.

    YAML 코드를 검토하는 스크린샷.

    선택 항목의 저장 및 실행을 보여 주는 스크린샷.

Azure DevOps는 파이프라인을 실행하고 두 개의 빌드 작업을 병렬로 시작합니다.

파이프라인을 실행하는 Azure DevOps를 보여 주는 스크린샷.

  • Build_Datasets
    • 테이블 형식 편집기 이진 파일을 다운로드합니다.
    • 모범 사례 분석기 기본 규칙을 다운로드합니다. 규칙을 사용자 지정하기 위해 Rules-Dataset.json을 리포지토리의 루트에 추가합니다.
    • 모든 의미 체계 모델 항목 폴더를 순환하고 테이블 형식 편집기 BPA 규칙을 실행합니다.
  • Build_Reports
    • PBI 검사기 이진 파일을 다운로드합니다.
    • PBI 검사기 기본 규칙을 다운로드합니다. 규칙을 사용자 지정하기 위해 Rules-Report.json을 리포지토리의 루트에 추가합니다.
    • 모든 보고서 항목 폴더를 순환하고 Power BI 검사기 규칙을 실행합니다.

완료되면 Azure DevOps는 발생한 모든 경고와 오류에 대한 보고서를 만듭니다.

오류 보고서를 보여 주는 스크린샷.

링크를 선택하여 두 작업에 대한 자세한 보기를 엽니다.

로그 보기 단추를 보여 주는 스크린샷.

확장된 오류 로그를 보여 주는 스크린샷.

보고서 또는 의미 체계 모델에서 심각도가 높은 규칙에 실패하면 빌드가 실패하고 오류가 강조 표시됩니다.

형광펜 오류를 보여 주는 스크린샷.

3단계 - 분기 정책 정의

파이프라인이 실행되고 나면 주 분기에서 분기 정책을 활성화합니다. 이 단계는 커밋이 직접 main으로 만들어질 수 없도록 합니다. 변경 내용을 main에 다시 병합하려면 항상 "끌어오기 요청" 필요하며, 파이프라인을 모든 끌어오기 요청과 함께 실행되도록 구성할 수 있습니다.

  1. 분기>main 분기>분기 정책을 선택합니다:

    분기 정책을 보여 주는 스크린샷.

  2. 만든 파이프라인을 분기에 대한 빌드 정책으로 구성합니다.

    빌드 정책 UI를 보여 주는 스크린샷.

    빌드 정책 UI의 두 번째 부분을 보여 주는 스크린샷.

4단계 - 끌어오기 요청 만들기

패브릭 작업 영역으로 돌아가서 보고서 또는 의미 체계 모델 중 하나를 수정하고 변경 내용을 커밋하려고 하면 다음 오류를 수신하게 됩니다.

변경 내용을 커밋할 수 없는 오류를 보여 주는 스크린샷.

끌어오기 요청을 통해서만 주 분기를 변경할 수 있습니다. 끌어오기 요청을 만들려면 새 분기를 체크 아웃하여 변경합니다.

패브릭 작업 영역에서 직접 분기를 만듭니다.

  1. 소스 제어 창에서 새 분기 체크 아웃을 선택하고 분기 이름을 입력합니다.

    새 분기를 체크 아웃하는 소스 제어 화면을 보여 주는 스크린샷.

    새 분기를 체크 아웃하는 방법을 보여 주는 스크린샷.

    그 대안으로, 격리된 별도의 작업 영역 내에서 또는 Power BI Desktop에서 개발하는 것을 선택할 수 있습니다. 자세한 내용은 다른 작업 영역을 사용하여 개발을 참조하세요.

  2. 이 새 분기에 변경 내용을 커밋합니다.

    분기에 대한 변경 내용 커밋을 보여 주는 스크린샷.

  3. 커밋 후에 Azure DevOps 포털에서 main 분기에 끌어오기 요청을 만듭니다.

    새로 만든 끌어오기 요청을 보여 주는 스크린샷.

    만든 끌어오기 요청을 보여 주는 스크린샷.

끌어오기 요청 워크플로를 사용하면 변경 내용의 유효성을 검사하고 검토할 뿐만 아니라 파이프라인을 자동으로 트리거할 수 있습니다.

보고서 변경을 보여 주는 스크린샷.

규칙 중 하나에 심각도가 높은 오류가 있는 경우 끌어오기 요청을 완료하고 변경 내용을 다시 기본 분기에 병합할 수 없습니다.

완료된 끌어오기 요청 스크린샷.

블로그 게시물에서 PBIP와 패브릭 Git 통합에 대해 자세히 알아보세요.