技術情報ブログ
Power Platform
2024.01.24

Power Apps・Power Automate:開発と本番環境を用いたアプリ構築手法(3) Power Platform パイプラインでCI/CD環境を構築

Power Apps・Power Automate:開発と本番環境を用いたアプリ構築手法(3) Power Platform パイプラインでCI/CD環境を構築
小刀稱知哉

こんにちは。アーティサン株式会社の小刀稱(ことね)です。

Power AppやPower Automateを含むローコード分野の需要はどんどん高まってきていますよね。

弊社でもPower Apps・Power Automateを支援しておりますので、お気軽にお問い合わせください。

さて、Power AppsやPower Automateでアプリを作成する際、開発と本番環境を分けて運用したいという要望を多く伺いいます。
2つの環境を分けることで、開発環境での対応が本番に影響を与えないため、開発者としてのメリットが大きいのではないでしょうか。
(実際にシステム開発を行う際には、従来から環境を分離することが一般的です。)

開発環境と本番環境
開発環境と本番環境

そこで、今回はPower Platformにおける開発と本番環境を用いた開発手法について紹介します。

前回のブログでは、Power Platformにおける開発と本番環境を用いた開発手法について紹介しました。

第3回の今回は、開発と本番環境を用いたアプリ開発について、Power Platform パイプラインを用いたCI/CD環境の構築方法についてお伝えします。

 

前回までのおさらいと今回やりたいこと

まず前回のおさらいですが、本ブログでは以下の構成にてアプリを作成いたしました。

構築したアプリ
構築したアプリ

Power AppsとPower Automateを準備し、それぞれが特定のSPOリストに紐づいている構成です。

前回までのブログにて、開発環境から本番環境へアプリ・フローなどを移行する際には、以下の手順を実施しました。

  • ソリューションをマネージドソリューションとしてエクスポート(開発環境)

  • 本番環境へインポート(本番環境)

しかし、開発環境から本番環境へでエクスポート・インポートする際、都度手動で行うのは手間がかかりますよね。
そこで、Power Platform パイプラインという機能を用いて、エクスポート・インポートを自動化するというのが今回のやりたいことになります。

Power Platform パイプラインの詳細については、以下URLをご参照ください。
Power Platform のパイプラインの概要

※CI/CDとは※

今回のタイトルであるCI/CD(Continuous Integration / Continuous Delivery/Deployment)とは、継続的インテグレーション・継続的デリバリーという意味です。

一般的な名称ですので、詳細な情報は割愛させていただきますが、CI/CD環境を構築すると、開発→本番反映までの作業を自動化することができるため、開発効率を高めることが可能となります。

 

構築手順

Power Platform パイプラインを用いたCI/CD環境の構築方法は以下の手順となります。

 

Power Platform パイプライン用の環境を作成する(パイプライン環境)

Power Platform パイプラインを用いたCI/CD環境を構築するためには、開発・本番環境とは別に、パイプライン用の環境を作成する必要があります

手順としては、Power Platformの管理センター環境新規から新しい環境を作成します。

環境を作成する際のポイントとしては、以下です。

  • 種類:

    作成する環境の種類です。
    詳細は第1回のブログをご参照ください。

    Power Apps・Power Automate:開発と本番環境を用いたアプリ構築手法(1) 概念・ライセンス編
    今回はサンドボックスで作成しましたが、実稼働でも問題ありません。

  • Dataverse データストアを追加しますか:

    Power Platform パイプラインをインストールするには、環境内にDataverseが必要となりますので、はいを選択します。

  • セキュリティ グループ:

    環境にアクセスできるユーザーを制限するため、グループを選択します。

パイプライン環境の作成
パイプライン環境の作成

 

環境をマネージドに変更する(開発環境・本番環境)

Power Platform パイプラインを用いるためには、開発・本番環境がマネージドとなっている必要があります。
※パイプライン環境はマネージドである必要はありません。
※ここで言及しているアンマネージド・マネージドとは、環境に関する内容です。
 従前からお伝えしている、マネージドソリューションとは別のお話になりますので混同しないようにしてください。

以下の手順にて、環境をマネージドに変更しましょう。

Power Platformの管理センター環境(Env_Dev・Env_Prod)を選択 マネージド環境を有効にするを選択

※今回は設定値は標準のままとし、有効にする を選択しています。

マネージド環境の有効化
マネージド環境の有効化

※マネージド環境とは※

マネージド環境を用いると、Power Platform関連のガバナンスを容易に管理することができるようになります。

例:
  • アプリやフローの共有範囲を制限することができる

  • 週次レベルの分析情報を閲覧できる

※今回は設定値は標準のままとし、有効にする を選択しています。
マネージド環境の概要

 

Power Platform パイプラインのインストールと設定(パイプライン環境)

続いて、Power Platform パイプラインのインストールと設定を行います。

Power Platformの管理センター環境(Env_Pipeline)リソースDynamics 365 アプリアプリのインストールPower Platform Pipelinesを選択し、インストールしてください。

Power Platform Pipelinesのインストール
Power Platform Pipelinesのインストール

次に、Power Platform パイプラインの設定を行います。

Power Appsパイプライン環境(Env_Pipeline)アプリ展開パイプラインの構成を選択してください。

左側のペインから、環境新規を選択し、パイプラインで用いる展開環境(Env_Dev・Env_Prod)を新規作成します。

展開環境の設定
展開環境の設定
  • 種類:

    作成する展開環境の種類です。
    ソリューションをエクスポートする側の環境(=開発環境)は開発環境、インポートする側の環境(=本番環境)はターゲット環境を設定してください。

    ※環境が開発・テスト・本番など3つ以上ある場合は、開発を開発環境、テスト・本番をターゲット環境として設定してください。

  • 環境ID:

    Power Platformの管理センター対象の環境(Env_Dev・Env_Prod)環境IDに値が記載されています。

    環境ID
    環境ID

次に、展開パイプラインの設定を行います。

左側のペインから、パイプライン新規を選択し、展開パイプラインを新規作成します。

展開パイプラインの新規作成
展開パイプラインの新規作成

上記設定を行い、上書き保存してください。

その後、リンクされる開発環境既存の展開環境の追加開発環境(Env_Dev)を入力してください。

また、展開ステージ(展開パイプライン)→展開ステージの新規作成を選択し、展開ステージを新規作成してください。

展開ステージの新規作成
展開ステージの新規作成

展開ステージを作成する際のポイントとしては、以下です。

  • 前の展開ステージ:

    展開ステージが複数ある場合に設定します。

    今回は設定しておりませんが、開発・テスト・本番の3環境がある場合には、開発→テストで1ステージ、テスト→本番で1ステージが必要となります。
    そして、テスト→本番で展開ステージを作成する際には、前の展開ステージとして、開発→テストのステージを設定してください。

  • ターゲット展開環境:

    リューションをインポートする側の環境(=本番環境)を設定してください。

 

パイプラインの実行(開発環境)

上記までの手順で設定は完了です。

続いて、パイプラインの実行を行いましょう。

Power Apps開発環境(Env_Dev)ソリューション(SampleSolution)パイプラインを選択してください。

先程設定した展開パイプラインが表示されますので、ここに展開 からパイプラインを実行します。

パイプラインの設定
パイプラインの設定

ソリューションの展開が完了すると、以下のように展開日が表示されます。

ソリューションの展開が完了
ソリューションの展開が完了

ちなみに、エクスポート・インポートしたzipファイルは、Power Appsパイプライン環境(Env_Pipeline)アプリ展開パイプラインの構成ソリューションアーティファクトから確認可能です。

ソリューションアーティファクト
ソリューションアーティファクト

 

補足:パイプラインを実行する権限について

補足として、パイプラインを実行できる権限について説明します。

Power Platform パイプラインをインストールすると、以下の2つのセキュリティロールが追加されます。
それぞれの権限については、以下のとおりです。

  • Deployment Pipeline User:共有されているパイプラインを実行する権限を持つ

  • Deployment Pipeline administrator:パイプラインに関するフルコントロールを持つ

詳細については、以下URLをご参照ください。
パイプラインを編集または実行するためのアクセスを付与する

パイプラインを実行するだけのユーザーには、Deployment Pipeline Userを設定するようにしましょう。

セキュリティロールの設定方法については、以下URLをご参照ください。
パイプラインを作成者と共有する

 

おわりに

いかがでしたでしょうか。

今回は、開発と本番環境を用いたアプリ開発について、Power Platform パイプラインを用いたCI/CD環境の構築方法についてお伝えしました。

Power Platform パイプラインを用いると、ソリューションのエクスポート・インポートを自動で実行できるようになるため、開発効率を高めることが可能となります。

ぜひ皆さんもお試しください!

小刀稱知哉

最後まで読んでいただき、ありがとうございました!

この記事を書いた人
小刀稱知哉

小刀稱 知哉ことね ともや

SharePoint Power Platform全般 Copilot Studio 技術アドバイス・教育支援

Power PlatformやSharePointを中心に設計・開発・アドバイス・教育まで幅広く担当しています。内製化をご希望の場合はお気軽にお問い合わせください!

2025 Microsoft MVP(Power Apps・Power Automate)
PL-200 PL-300 PL-400 PL-600 MS-700 AZ-104 AZ-305 SC-200 SC-100

Microsoftクラウド関連

シェアする
記事カテゴリ
最新記事
2026.04.22

ソリューション内で異動・退職者のPower Apps/Power Automateなどを引き継ぐには?所有者変更の手順と注意点を解説

2026.04.15

SharePoint:『リンクのコピー』は危険?権限トラブルを防ぐ推奨運用を解説

2026.04.08

技術ブログ100本書いてみたら、想像以上に得るものがあった話

2026.04.01

社内に聞く人がいない「孤独なDX」を解決!アーティサンの内製化支援サービス

2026.03.25

SharePointの便利なURLパラメータ活用術|ヘッダー削除・リスト絞り込み・メンテナンスモード

データ構造.Net Core Test ExplorerレスポンシブUpdateContext承認フロー送信元リストLoopショートカットキー時間外非エンジニアDataverseSharePoint Framework転職Slide showMicrosoft365サイトの種類OpenAPI請負契約効率化Power Platform CLI業務キー月額定額PV数 増やす共同所有者1行テキストモデル駆動型アプリSortByColumns関数Dataverse for TeamsDynamics 365ロードマップフォームメールの送信非表示Microsoftshortcut key通知体験談JavaScriptSPFx主キー比較移行要件定義MCPサーバー総合評価型入札資料作成開発手順複合キー委任問題権限トラブル主要な所有者複数行テキストPower AppsTypeScriptitem関数入門技術form差出人アプリdesignconcat関数ファイル勉強表示サンプルCopilot Studio社内ポータル多言語化サイト構成FAQエージェントデジタルトランスフォーメーション初心者向け拡張機能データ整合性Delegationアクセス権限環境変数選択肢Power PlatformHTMLGoogle Maps初心者Itエクスポートインスタントクラウドフロー[市民開発者JSON文字制限フィルター クエリ内製化切替samplePowerAppsグループウェアMUI権限設計AIチャットボットプロポーザル方式ハウツービルドデータベース設計サブスクリプション型支援ファイルパスクラシック画面日付SharePointEF CoreMarker Clusterer中級者DXインポート自動化したクラウドフロー構築デザインフロー実行ドキュメント ライブラリ市民開発登録者X-SPNFCタグエンゲージメントMultilingualデータ移行実運用官公庁システム画像挿入プロジェクト作成ユニークキーMVP共有設定ソリューションエクスポート整数ExcelマイグレーションRANK()関数キャンバスアプリノウハウカスタマイズ委任自動化したクラウド フロー運用開発環境filter query管理システム列StyleDLPポリシー地方自治体MLJSON書式保守性デジタル化推進複数レコードPCFギャラリー一意制約技術支援情報漏洩対策権限管理データ型Power AutomateFramework CoreDynamics 365 SalesDatePicker情報技術componentVBAフローの種類選択肢列環境sortガバナンス登録日StudioTestCopilot Studiot共有リンクテンプレート化DX推進テーマカラーPDF変換業務システムURLパラメータ技術ブログ 書き方コマンドバーカスタマイズ組織変更C#Attribute directivesMicrosoft TranslatorDropdownメッセージIDダイアログエラーインスタント クラウド フロー参照列本番環境ソートerror notification更新者AICanvas自治体DXレポート化サイト複製作り方ダークモード資料自動作成キャンバスアプリ 違いメンテナンスモードエンジニア ブログ メリットSharePoint管理センター注文管理アプリattributeO/Rマッパーマーカークラスタリングライブラリviewメールコンポーネントエクセルスケジュール済みクラウド フローChatGPTライセンスmultiple itemエラー通知更新日生成系AITest Studio生成AI自治体APIPnP PowerShellページ承認Formulasプロパティフロー設計Power Apps 導入並べ替えブログ 継続 コツDLPサブグリッドvalidationazure sql databasetailwindcssビューfirst()関数dialogerrorレスポンシブ レイアウトOpenAI環境構築手順複数項目削除変更Copilotテスト事例HTTP リクエストカスタムスクリプトドキュメント管理カラーセットテンプレート活用Power Apps 比較ヘッダー非表示技術力向上権限管理ベストプラクティスDataverse テーブルローコードCase式マルチテナントアクセス制限nestTips復元responsive layoutオープンAIpipelineシェアポイントフォルダ外部DBlicenseテストスタジオ活用ワーケーション業務効率化IT管理カラーユニバーサルデザイン自動化事例モデル駆動型 とはリスト フィルタ文章力 鍛え方野良権限部署AngularHTTP Requestドロップダウンメニューノーコード入れ子新機能restoreデータ行の制限チャットGPTCI/CD便利機能ゴミ箱連携添付ファイルコントロール使い方サイトブランド化名古屋ファイル保存申請システムアプリデザインNode.jsシステム構築便利アウトプット 重要性Teams ファイル共有リレーションシップAccessCSSBreakpointObserver承認動的リスト変数Power BI引き継ぎgalleryパイプラインカレンダー完全削除接続ファイルサイズ基本知識フォントカスタマイズ体験記エンティティワークフロー自動化UI/UXVisual Studio CodeAlternate Key野良アプリ対策IT エンジニア 転職OneDrive1対多InfoPathxUnitメディアクエリリマインドcollection検索個人列退職ギャラリーDevOpsCalendarモデル駆動型データフローフルリモートワークPowerAutomateブランドセンター感想フォルダ構成設定アクセシビリティPCF代替キーCoEブログ モチベーションつながり参照多対多MatTable.Net Core 3.1スマホSetコレクションMicrosoft 365グループユーザー列所有者を変更スクロールMicrosoft 365Teamsセキュリティロールrecycle binアーティサンX-SP Designテーマ作成チームサイトMicrosoft Learn Docsアジャイル開発Wordテンプレート環境構築重複チェック内製化コンサルティングネタ切れ 対策システムカスタマイザーER図Angular MaterialVSCodePCForAll複数の添付ファイルセキュリティグループSharePoint Online異動コンテナ簡易在庫管理ローコード開発ビジネスルールアクセス許可Artisanスライドショーデザイン拡張コミュニケーションサイトカスタムコネクタ準委任契約業務自動化カスタムコンポーネントGUIDITサポートAI ブログ 活用Connection Reference入門編
PageTop
ページトップに戻る