CloudFormation を CLI で簡単に使える rain
を触ってみました。
インストール
$ brew install rain $ rain --version Rain v1.2.0 darwin/amd64
プロファイルを指定して試す
-p
でプロファイルが指定できるけど、エラーになってしまった。
$ rain ls -p poc unable to find valid credentials
--debug
オプションを付けるとどこで panic したかわかるようです。
$ rain ls --debug -p poc panic: unable to find valid credentials [recovered] panic: unable to find valid credentials goroutine 1 [running]: github.com/aws-cloudformation/rain/internal/cmd.execute.func1(0xc000587f58) github.com/aws-cloudformation/rain/internal/cmd/wrap.go:77 +0x225 panic(0x18d5700, 0xc00012e720) runtime/panic.go:965 +0x1b9 github.com/aws-cloudformation/rain/internal/aws.loadConfig(0x1fc9a90, 0xc000024258, 0xc000126600, 0xb, 0x1) github.com/aws-cloudformation/rain/internal/aws/aws.go:80 +0x906 github.com/aws-cloudformation/rain/internal/aws.NamedConfig(0xc000126600, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...) github.com/aws-cloudformation/rain/internal/aws/aws.go:114 +0x149 github.com/aws-cloudformation/rain/internal/aws.Config(...) github.com/aws-cloudformation/rain/internal/aws/aws.go:95 github.com/aws-cloudformation/rain/internal/cmd/ls.glob..func1(0x2302560, 0xc000594a20, 0x0, 0x3) github.com/aws-cloudformation/rain/internal/cmd/ls/ls.go:44 +0x368 github.com/spf13/cobra.(*Command).execute(0x2302560, 0xc0005949f0, 0x3, 0x3, 0x2302560, 0xc0005949f0) github.com/spf13/cobra@v1.1.3/command.go:856 +0x2c2 github.com/spf13/cobra.(*Command).ExecuteC(0x2302ce0, 0xc000042740, 0x1068aa8, 0xc000000180) github.com/spf13/cobra@v1.1.3/command.go:960 +0x375 github.com/spf13/cobra.(*Command).Execute(...) github.com/spf13/cobra@v1.1.3/command.go:897 github.com/aws-cloudformation/rain/internal/cmd.execute(0x2302ce0, 0x0) github.com/aws-cloudformation/rain/internal/cmd/wrap.go:86 +0x65 github.com/aws-cloudformation/rain/internal/cmd.Execute(0x2302ce0) github.com/aws-cloudformation/rain/internal/cmd/wrap.go:95 +0x2b main.main() command-line-arguments/main.go:23 +0x2d
どうやら .aws/config
の source_profile
の行をつけていると問題になるっぽいので、削除して実行するとうまくいきました。
$ cat .aws/config [profile poc] region = ap-northeast-1 mfa_serial = arn:aws:iam::123456789012:mfa/omuron role_arn = arn:aws:iam::123456789012:role/xxx source_profile = poc
うーん、でも source_profile
を消すと通常の aws コマンドのときに困るんだけど。
この辺りの理解が正しくないんだろうか?
雨が降るようなプログレスがかわいい rain
ですが、仲良くするためにはまだ修行が足りないようでした。
精進します。