【Pulumi】Pulumi ~ 基本 / CLI編 ~

■ はじめに

https://dk521123.hatenablog.com/entry/2021/10/23/025230

の続き。
上記の記事で、環境設定で「pulumi version」や
Hello World で「pulumi new」などで扱っていたが、
Pulumi には、CLI (Command Line Interface) が備わっているので
今回は、主なCLIについて、扱っていく。

目次

【0】Pulumi CLI
【1】pulumi version
【2】pulumi login / pulumi logout
【3】pulumi new
【4】pulumi up
【5】pulumi destroy
【6】pulumi stack
 1)pulumi stack ls
 2)pulumi stack rm
 3)pulumi stack select
【7】pulumi config
 0)pulumi config
 1)pulumi config set
 2)pulumi config get

【0】Pulumi CLI

* CLI 一覧は、以下の公式サイトを参照のこと

公式サイト:CLI一覧
https://www.pulumi.com/docs/reference/cli/

# CLI 説明
1 pulumi version version表示
2 pulumi login ログイン
3 pulumi logout ログアウト
4 pulumi new プロジェクト生成
5 pulumi up スタック内のリソースの作成・更新
6 pulumi destroy 存在するスタックとそのリソース削除
7 pulumi stack スタックの管理
8 pulumi config 設定値の管理

【1】pulumi version

* pulumi の version を表示

https://www.pulumi.com/docs/reference/cli/pulumi_version/

【2】pulumi login / pulumi logout

* Pulumi サーバへのログイン・ログアウト

https://www.pulumi.com/docs/reference/cli/pulumi_login/
https://www.pulumi.com/docs/reference/cli/pulumi_logout/

【3】pulumi new

* テンプレートを使ったプロジェクトの生成
 => 「<Home>\.pulumi\templates」配下にテンプレートがあるので
  これを使って、生成しているものと思われる

https://www.pulumi.com/docs/reference/cli/pulumi_new/

構文

pulumi new [template|url] [flags]

# template : aws-typescript or azure-python
# url : e.g. https://github.com/<user>/<repo>
# flags : Option (以下のサイトを参照)

https://www.pulumi.com/docs/reference/cli/pulumi_new/#options
サンプル

pulumi new aws-typescript \
 --name ="your-project-name" \
 --description="This is a sample" \
 --stack="dev" \
 --secrets-provider="awskms://alias/ExampleAlias?region=us-east-1"

【4】pulumi up

* スタック内のリソースの作成・更新

【5】pulumi destroy

* 存在するスタックとそのリソース削除

https://www.pulumi.com/docs/reference/cli/pulumi_destroy/

【6】pulumi stack

* スタックの管理

https://www.pulumi.com/docs/reference/cli/pulumi_stack/

1)pulumi stack ls

* スタック一覧表示

https://www.pulumi.com/docs/reference/cli/pulumi_stack_ls/

2)pulumi stack rm

* スタックとそのリソースの削除

https://www.pulumi.com/docs/reference/cli/pulumi_stack_rm/

3)pulumi stack select

* 対象Stackを選択する

https://www.pulumi.com/docs/reference/cli/pulumi_stack_select/

サンプル

# スタック「dev」を選択
pulumi stack select dev

# スタック「prod」を選択
pulumi stack select prod

【7】pulumi config

* 設定値の管理

0)pulumi config

* 設定値の全取得

サンプル

# --json:JSON形式で取得
pulumi config --json

1)pulumi config set

* 設定値の設定

https://www.pulumi.com/docs/reference/cli/pulumi_config_set/
サンプル

# pulumi config set <key> [value]
pulumi config set key_value HelloWorld

# pulumi config set aws:region [aws-region]
pulumi config set aws:region us-east-2

2)pulumi config get

* 設定値の取得

https://www.pulumi.com/docs/reference/cli/pulumi_config_get/

サンプル

# pulumi config get <key>
pulumi config get key_value

参考文献

https://dev.classmethod.jp/articles/pulumi-tips/

関連記事

Pulumi ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2021/10/23/025230