AWS Toolkit for JetBrainsをインストールしてIDEからサーバレスアプリケーションをデプロイしてみる #reinvent

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

先日発表されたAWS Toolkit for JetBrainsをためしてみました。 本記事ではプラグインのインストールから、IDE経由でのサーバレスアプリケーションのデプロイを行なっています。

AWS toolkitで PyCharm / IntelliJのサポートが追加されました。 #reinvent

前提条件

インストール

Preference -> Pluginsでawsで検索するとAWS Tookitが出てくるのでインストールします。

インストールが完了するとインストールボタンが"Restart IDE"に変わるので、ボタンを押して再起動します。

再起動するとAWS Explorerタブが現れます。

クレデンシャルの設定

˜/.aws/credentialsが設定されていれば、IDEがこの設定を読み取ってくれます。そうでない場合、AWS Exprorerの設定->AWS Connection Settings->All Credentials->Edit AWS Credentials fileで˜/.aws/credentialsが開くので、ここでクレデンシャルを設定します。

ただし、この設定変更は現時点でIDEが検知してくれません。設定の変更後、IDEを再起動する必要があります。 プロジェクトではなく、IDEごと再起動が必要です。

画像のように複数設定したprofileはIDEで切り替えることが可能です。

クレデンシャルの設定後リージョンを指定すると、LambdaとCloudFormationのリソースを確認することができます。

サーバーレスアプリケーションの作成とデプロイ

再度IDEを起動し、Create New Projectを選択するとAWS Serverless Applicationを選択可能となっています。

SAM CLI executableには、which samの結果を入力します。

AWS SAM Hello Worldのテンプレートを選択します。

雛形ができました。

プロジェクトを右クリック->Deploy Serverless Applicationで、stack名とデプロイ先のS3 Bucketを指定し、Deployボタンからデプロイを行えます。

デプロイできました。

作成したLambda functionの実行

AWS Explorerから作成したLambda functionを実行可能です。

Inputのテンプレートを選べるのがいい感じです。

実行するとコンソールにログが表示されます。

Invoking Lambda function: toolittest-HelloWorldFunction-RL4XOGXSDQXX
Logs:
START RequestId: 4907464e-0c6e-11e9-bf0d-77dc863af78e Version: $LATEST
END RequestId: 4907464e-0c6e-11e9-bf0d-77dc863af78e
REPORT RequestId: 4907464e-0c6e-11e9-bf0d-77dc863af78e Duration:
357.23 ms Billed Duration: 400 ms Memory Size: 128 MB Max Memory Used:
29 MB

Output:
{
  "statusCode": 200,
  "body": "{\"message\": \"hello world\", \"location\": \"13.231.250.212\"}"
}

実行できました。CFnスタックの削除もIDEから行えます。

まとめ

本記事ではAWS Toolkit for JetBrainsのインストール、設定、AWS Serverless Applicationの作成およびデプロイをためしてみました。 概ねできることはEclipseのプラグインと同じような感じですが、リソースの参照についてはEclipseのプラグインの方が色々できるようです。これから追加されていくのでしょうか。 複数アカウントの切り替えがIDEから手軽に行えるのは便利に思います。

私からは以上です。