re:Invent 2018 Cloud9でAWS CLI v2 を動かそう
Hello, サービス開発チームの北野です。
現在、re:Inventでラスベガスに来ています。勝手にブログ強化週間中です。
ハンズラボCLI大好き代表としては聞き逃がせないなと思って、
DEV322-R – [REPEAT] What’s New with the AWS CLIのセッションを聞いてきました。
以前からv2の話は少しずつでていましたが、ついにv2のdeveloper releaseが出たようです。
https://github.com/aws/aws-cli/releases/tag/2.0.0dev0
現在のCLIと互換性が保証されないものの、補完機能が強力になって、wizard機能がつき、yaml出力に対応するので、とっつきやすくなるんじゃないかと期待しています。
Cloud9とAWS CLI
実はCloud9とAWS CLIの相性がすごく良いと思っていて、私はIDEとしてよりブラウザで動かせるシェル環境としてCloud9を愛用しております。
Cloud9でAWS CLIを動かすときは、AWS_ACCESS_KEY_IDとAWS_SECRET_ACCESS_KEYを意識する必要がなくなります。
Cloud9がうまいことやってくれて、ログインしたユーザーが操作できる範囲の権限を持った一時的なCredentialsを生成してくれるのです。
どうなっているのかというと、Cloud9のここの設定をONにしておくと(デフォルトON)、
Cloud9が~/.aws/credentialsに一時的なCredentialsを生成して設定してくれます。便利。
Cloud9にAWS CLI v2をインストール
まずは最初にCloud9にインストールされているawscliをアンインストールしちゃいます。
AWS Developer Blogを参考に、GitHubリポジトリをソースにしてpip installします。
https://aws.amazon.com/jp/blogs/developer/aws-cli-v2-development/
最後に、ダウンロードされたソースの中身をec2-userがさわれるようにchownします。
awsコマンドのバージョンを確認して、2.0.0dev0になっていたら無事インストールできました。
AWS CLI v2を使ってみる
DynamoDBのテーブル名まで補完してくれるらしいので、DynamoDBを作って確かめてみます。
適当な名前のDynamoDBのテーブルを作ります。
補完を適用するためのコマンドを実行して、テーブル名が補完できそうな
aws dynamodb describe-table --table-name
まで入力します。
ここで<TAB>
キーを押すと…先程作ったDynamoDBのテーブル名が補完されました。すごい!
終わりに
互換性が保証されていないという点には注意が必要そうですが、補完が強力になってCLIが使いやすくなりそうです。
v2正式リリースまで情報を追っていこうと思います。