はじめに
Power Platformのソリューションのインポート時及びパイプラインのデプロイ時に、環境変数が表示され、また編集もできるようになりました!
これまではソリューション内で環境変数を利用していた場合、エクスポート前に環境変数の既定の値を削除しないとソリューションインポート時及びパイプラインでのデプロイ時に環境変数の値を変更することができませんでした。
パイプラインのお話でいうとこの前にJPPC2023でお話した資料のP.30がそのことについて触れていますね。
以前まではこのように環境変数の既定の値をつけたままマネージドソリューションとしてエクスポートしてしまうと、環境変数が変更しにくくて困る。っていう問題がありました。
(一応既定のソリューション内で無理矢理変更できないこともない)
これが今回のアプデで解消されたってわけですね。
この記事ではその動きを簡単にみていきます。
環境変数の更新
元のソリューションはこのようなオブジェクトを用意しました。
$"CurrentValue: {LookUp('Environment Variable Values', 'Environment Variable Definition'.'Schema Name' = "korune_CurrentValue", Value)}"
$"StayCurrentValue: {LookUp('Environment Variable Values', 'Environment Variable Definition'.'Schema Name' = "korune_StayCurrentValue", Value)}"
環境変数"CurrentValue"は「現在値」をソリューション内から削除して、環境変数"StayCurrentValue"は「現在値」をそのままにしています。
(記事かいているときにタイポしているの気が付いたけど、面倒なのでそのままでw)
ソリューションのインポート時の動き
マネージドソリューションとしてエクスポートしたソリューションファイルをインポートしてみます。
結果以下のようになりました。
環境変数を変更できそうですね。
ただ「現在値」をそのままにしていた方は、この段階でエクスポート時の値が見えてしまっています。
したがって、Publicに公開する際などは公開しては困るような値は現在値から消してからエクスポートするようにしたほうがよさそうです。
続いて環境変数の値をセット、変更してみます。
「現在値」が設定されていた方は「リセット」ボタンが表示されていますね。
これを選択すると、元の値に戻ります。(「現在値」が設定されていたほうだけ)
一応インポートされたソリューションもみておきます。
ちゃんと変更されていますね!
パイプライン
パイプラインでデプロイをしてみます。
こちらもソリューションインポート時と同様に環境変数の変更ができるようになっていますね。
ただし、「現在値」がそのまま設定されていた環境変数に関しては、値が見えています。
パイプラインは異なるテナントへは対象はできず、同じテナント内の異なる環境を対象にしないといけないので、公開しちゃいけない値を不特定多数に公開しちゃった~なんてインシデントは起こらないとは思いますが、まぁ運用としては変更が必要な値は消しておいて、任意もしくそのままの値を利用する場合は現在値を設定したままにしておく。
というのがいいんじゃないでしょうか?(デプロイ時のミス減るかな?)
パイプラインについては、冒頭で紹介した私のJPPC2023の資料みてみてね。
こちらも同様に「リセット」がありますね。
デプロイされたソリューションはこんな感じ。
パイプラインでのデプロイだと「現在値」がそのままだった場合でも「現在値」見えなくなるんだ?
インポート時と動作に差異があるのが若干気になりますね?
別に困りはしないけど。
おわりに
2023年最後の記事でした!(ギリギリ!)
2024年も引き続き皆様よろしくお願いいたしますー
良いお年をーーーーーー