環境分離するなら環境変数の利用を薦めたい

この記事は、Microsoft Power Automate Advent Calendar 2024  シリーズ3 9日目担当分の記事です。

はじめに

環境分離とは?

システム開発において、異なるフェーズや目的に応じて開発環境、ステージング環境、本番環境を分けて管理すること。

Power Platformでの開発における環境分離の利点

1.安定性の確保

開発環境で実装された機能が本番環境でも正常に動作するかをステージング環境で検証することで、本番環境に不具合を持ち込むリスクを低減する。

2.トラブルシューティング

問題が発生した際、環境の差異が要因となる可能性もあるため解決までの工数が削減できる。

3.セキュリティ

開発環境やステージング環境であらかじめセキュリティ面の問題が検知できれば、セキュリティリスクを本番環境に持ち込ませない運用体制となる。

 

 

なぜ環境変数を勧めるのか

別環境にインポートする場合、クラウドフロー等で使用するTeamsのチャネルやSharePointサイトは別物を使用して動作確認を実施していくと思います。

Teamsのチーム・チャネル、SharePointサイト等何度も同じ定義をするような項目の場合、環境変数をあらかじめ設定しておけば別環境への移行手順をかなり効率的に進めることができます。

補足:Power Platformにおけるソリューションとは

作成したフローやアプリなどをまとめて1つのパッケージとして管理し、別環境でも利用できるようにする機能

 

 

ソリューション・環境変数の作り方

1.ソリューション作成

画面左にあるメニューから[ソリューション]を選択→上部のタブにある[新しいソリューション]を押下。

ソリューションの表示名、名前、公開元を設定し、作成する。

2.作成したソリューション内で環境変数を作成する

画面上部の[新規]→[その他]→[環境変数]の順で環境変数を設定する枠を開く。

表示名、名前、データ型は必須なので定義する。

型としてデータソースを指定すると、接続しているアカウントに権限が付与されているSharePointサイトとリストを直接定義できる。

SharePointでもフォルダパスなどはこの型での認識はできないため、テキスト型を使用して現在値に手入力で定義する。(Teamsのチームやチャネルも同様)

SharePointのフォルダを指定する場合は、[/Shared Documents/フォルダ1/フォルダ2]のように先頭を[/Shared Documents]として、あとはフォルダの階層に応じて名称を定義します。




※Teamsのチームとチャネルの場合、URLからIDを読み取る必要があります。(セキュリティ面が怖いので今回は割愛とさせていただきますm(_ _)m)
参考資料:Microsoft Teams のチームID、チャネルIDの確認方法 #PowerApps - Qiita

 

 

作成した環境変数をクラウドフローで扱う

[カスタム値の入力]を選択


動的なコンテンツとして使用可能

 

おわりに

主観的な意見が多くなってしまいましたが、何かの参考になれば幸いです。

Â