PulumiをVisual Studioで書いていてpreviewできるようにする方法を紹介します。 単純ですが、かなり便利なのでPulumi C#を使っている人におすすめです。
モチベーション
普段私はPulumiをC#で書いており、IDEにVisual Studioを利用しています。
Visual StudioでPulumiを書くときにただデバッグ実行(F5)してもビルド、コンソール実行しようとしますがpulumi preview
として動作しません。
このため、別途コンソールを開いてpulumi preview
を実行する必要があるのですがめんどくさすぎます。
ということで、書いたらデバッグ実行(F5)でpulumi preview
できるようにしましょう。
launchSettings.jsonでプレビューを実行する
Visual Studioのデバッグ実行はProperties/launchSettings.json
で動作設定できます。
AWSとAzureそれぞれについて、デバッグ実行(F5)でpulumi preview
を実行するjson例を示します。
共通して--stack スタック名
を指定します。これを省くと毎回実行時にスタック名のプロンプト入力を求められるため、指定しておくと便利です。
PulumiでAWSを構成する例
AWS認証はAWS_PROFILE
環境変数を使うと個人ごとの設定を使えます。
{ "profiles": { "pulumi": { "commandName": "Executable", "executablePath": "pulumi", "commandLineArgs": "preview --refresh --stack {スタック名}", "environmentVariables": { "IS_DEBUG": "false", "AWS_PROFILE": "{AWS_PROFILE_NAME}" } } } }
PulumiでAzureを構成する例
Azureは別途az login
しておくことで認証を省くことができます。
{ "profiles": { "pulumi": { "commandName": "Executable", "executablePath": "pulumi", "commandLineArgs": "preview --refresh --stack {スタック名}", "environmentVariables": { "IS_DEBUG": "false" } } } }
まとめ
Pulumi ESCを使うとリモート実行なのですが、ESCは価格的にも使いにくく好みじゃないんですよね。 非ESCでPulumiを書いている人にはおすすめの設定です。