環境準備のためなど、JSON形式で環境の一覧を取得したいことってあるかと思います。
そんな際にはPower Platform CLI のコマンド pac admin
が利用できますのでご紹介します。
目次
事前準備
PowerShell 7 のインストール
コピーしました!
MSIパッケージからのインストールを行うこともできますが、コマンドのほうが簡単です。
Windows への PowerShell のインストール – PowerShell | Microsoft Learn
コマンドの場合以下を利用します。
コピーしました!
winget install --id Microsoft.Powershell --source winget
しばらくするとポップアップが表示されるので忘れずに進めます。
Windows PowerShell 5.1 から PowerShell 7 への移行 – PowerShell | Microsoft Learn
PAC | Power Platform CLI を準備する
Power Platform CLIの準備は以下の記事を参考にしてください。
PowerShell で環境の一覧
PowerShell で環境の一覧を取得します。この際、json形式で取得するために以下ようにPoweShellを実行します。--json
オプションを加えることでjson形式で取得できますが、このままですとテキスト形式のままなので、ConvertFrom-Json
を利用してJSON形式で扱えるようにする必要があります。
今回はDeveloper環境のみを取得します。取得した環境を出力しています。ここで利用するConvertFrom-Json
コマンドはPowerShell 7のバージョンが必要なため事前にアップデートをしています。
以下の例では$envs
という変数に結果を格納しています。
コピーしました!
$envs = pac admin list --type developer --json | ConvertFrom-Json
さらに$envs
とコマンドした時に以下のように実行結果が返ってくれば成功です。
コピーしました!
EnvironmentId : c6143ea1-b0b6-e2f7-abe8-0c36ceab581b
EnvironmentUrl : https://org8e56495e.crm.dynamics.com/
OrganizationId : 40bcda62-d40c-ef11-9f83-6045bd003e01
DisplayName : A01
Type : Developer
DomainName :
Version :
EnvironmentId : b8166451-6ce8-e26d-b0bd-41589ee85815
EnvironmentUrl : https://a06.crm.dynamics.com/
OrganizationId : 29eb1af0-ff01-ef11-9f85-002248282017
DisplayName : A06
Type : Developer
DomainName :
Version :
EnvironmentId : 3ed39635-d942-e877-9a0f-4914c023af10
EnvironmentUrl : https://orge966c44b.crm.dynamics.com/
OrganizationId : 001ab2b3-3901-ef11-9f85-6045bd00e829
DisplayName : A07
Type : Developer
Power Platform CLI でもっと自動化したい!
取得した環境一覧に対してなにか一括で処理を行いたいときは例えば以下のようなシナリオに活用できます。