Piculetを導入しよう

以下のように設定するだけでpiculetが導入できます。
piculetはSGを管理するIaaCツールでterraformはSG以外、piculetでSGという役割分担で使用したりします。
piculetを使っている人が周りに多いため、piculetの導入手順と実コマンドの表示結果を記載します。

direnv edit

$ direnv edit .
export AWS_ACCESS_KEY_ID=AKIXXXXXXXXXXXX
export AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXX
export AWS_REGION=ap-northeast-1

export

$ piculet -e -o Groupfile -r ap-northeast-1 --split

dry-run

$ piculet -a -r ap-northeast-1 --dry-run

apply

$ piculet -a -r ap-northeast-1

さぁ、実践 !!!

1. ディレクトリ作成、移動

$ mkdir piculet
$ cd piculet/

2. バージョン確認

$ piculet -v
piculet 0.3.0

3. エクスポート

$ piculet -e -o Groupfile -r ap-northeast-1 --split
Export SecurityGroup
  write `./vpc-XXXXXXXXXXXXX.group`
  write `./vpc-YYYYYYY.group`
  write `Groupfile`

以下のように3ファイル分作成される

$ ls -la
total 24
drwxr-xr-x  5 XXXX  YYY\Domain Users  160  4 27 21:46 .
drwxr-xr-x  9 XXXX  YYY\Domain Users  288  4 27 20:26 ..
-rw-r--r--  1 XXXX  YYY\Domain Users  108  4 27 21:46 Groupfile
-rw-r--r--  1 XXXX  YYY\Domain Users  371  4 27 21:46 vpc-XXXXXXXXXXXXX.group
-rw-r--r--  1 XXXX  YYY\Domain Users  362  4 27 21:46 vpc-YYYYYYY.group

vpcごとにファイルが作成されるので、変更したいVPCの方のファイルにSGを追加・削除・更新して行けばOK。
ここで設定していないSG分についてもエクスポートコマンドでコードに反映できるので、変更前にはエクスポートコマンドを常に実行する事。

あとはSGに変更がある度に、ファイル編集 → dry-run → apply を繰り返せば良い。

piculetのGHリポジトリはこちら

github.com