Slide 1

Slide 1 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer を利用して HCLのコーディングをしてみた とらのあなラボ かなざわ 1

Slide 2

Slide 2 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. 自己紹介 名前:金澤 弘太(かなざわ こうた) 出身:神奈川県 とらラボ歴:2022年~ 趣味:ゲーム(音ゲー、パズル) 好きな技術:IaC、クラウド(AWS) 担当:社内インフラ構築・管理    情報システム管理 2

Slide 3

Slide 3 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 3 2023年4月、AWS から AI を利用したコーディン グ支援サービスとして AWS CodeWhisperer がGA されました。 CodeWhisperer のプログラミング言語 Python、Java、JavaScript、TypeScript、C# の サポートに加え、Go、Rust、Kotlin、Scala、 Ruby、PHP、SQL、C、C++、シェルスクリプト あ、HCL (tf) が無い。。

Slide 4

Slide 4 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 4 HCL(Hashicorp Language)がサポートされました! ■ AWS https://aws.amazon.com/jp/about-aws/whats-new/2 023/11/amazon-codewhisperer-new-enhancements/ ■ HashiCorp https://www.hashicorp.com/blog/accelerate-your-ter raform-development-with-amazon-codewhisperer

Slide 5

Slide 5 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 5 CodeWhisperer には2つのTierがあります。 - 個人(Indivisual) - プロフェッショナル(Professional) ユースケースとして、Individual は個人レベル で、Professional は組織レベルで使用することが 想定されています。 プラン
 個人
 プロフェッショナル
 料金
 無料
 $19/月
 ログイン方法
 Builder ID
 IAM Identity Center
 対応言語
 すべて
 すべて


Slide 6

Slide 6 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 6 ■ バージョン情報 Visual Studio Code: 1.86.2 AWS Tool Kit: v2.11.0

Slide 7

Slide 7 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer - Builder IDの取得 7 Individual プランで使用を開始してみます。 最初は Builder ID の取得から開始します。 Builder ID は個人に紐づくプロファイルで、AWS アカウントに紐づきません。 右記のとおり、Eメールアドレスを使用して Build ID を取得します。

Slide 8

Slide 8 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer - AWS ToolKit の導入 8 Build ID を作成後、ID を利用して実際にコードを 書くエディタに、コード補完できるように設定し ていきます。 VSCodeの場合は、拡張機能の AWS ToolKit から 設定します。

Slide 9

Slide 9 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer - AWS ToolKit から登録 9 ToolKit 導入後、先ほどの Build ID プロファイル を紐づけます。 ToolKit を導入すると、CodeWhisperer - Build ID を紐づける画面が表示されるので、ここから 進めます。

Slide 10

Slide 10 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer - AWS ToolKit から登録 10 紐づけが完了すると、右記の画面が表示されます。

Slide 11

Slide 11 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 触ってみる 11 AWS S3バケットを利用した静的 Web サイトを作成するように進めていきます。 まずは S3 バケットを作成してほしいので、そのように CodeWhisperer に指示します。 指示は “//” でコメントを記載するように行います。

Slide 12

Slide 12 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 触ってみる 12

Slide 13

Slide 13 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 触ってみる 13 自動(感動ポイント) 手動 手動

Slide 14

Slide 14 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 触ってみる 14 ここまでのまとめ ● CodeWhispererでHCLがサポートされコードの提案ができるようになった。 ● 日本語の指示にも対応できている。 ● 与えられた指示に応答するのみでなく、好ましい設定の提案もするようになっていた。

Slide 15

Slide 15 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 触ってみる 15 Terraform 1.6 で機能が追加された “test” コマンドが提案されるかどうか確認してみます。 run “sets_correct_name” { variables { bucvket_name = “test-bucket-name” } assert { condition = aws_s3_bucket.my_bukcet.bucket == “test-bucket-name” error_message = “invalid bucket name” } }

Slide 16

Slide 16 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 触ってみる 16 厳しそうでしょうか…。

Slide 17

Slide 17 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 触ってみる 17 例文を提示してあげたところ、 バケットのアクセスリストを検証するテストコードを提案いただけました。たすかります。 例文 を 提示 提案 いただけ た!!

Slide 18

Slide 18 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer - 補足 18 VSCode では画面下部にステータスが表示されま す。 - AWS Build ID - CodeWhisperer それぞれのステータスが表示されています。 CodeWhisperer 動作中は右図のように、 CodeWhisperer の左がくるくる処理中アイコン になります。

Slide 19

Slide 19 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer - 補足 19 セキュリティポリシーとして以下2点を紹介します。どちらも VSCode Setting より設定可能です。 ① コンテンツの共有の停止 ② テレメトリの送付の停止

Slide 20

Slide 20 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. AWS CodeWhisperer 触ってみる 20 ■まとめ ● Terraform (HCL)でも AWS CodeWhisperer の 恩恵に預かれるようになった。 ● 簡単なリソース作成を試して、コードを生成することを確認し た。 ● Terraform の知識が必要なことには変わりない。 ● 現時点でコメントの指示による生成は課題があるが、テスト コードの生成も可能。 ● コード規約やリソース名の付け方などを指定したい。 ○ リソース名は既存のリソース名を参考に推論で出してくれ たりするのか。それとも明示的にできるのか。 ○ AWS CodeWhisperer 自体の画面が非常に簡素なので、その 辺の設定が追加されると嬉しい。

Slide 21

Slide 21 text

Copyright (C) 2022 Toranoana Inc. All Rights Reserved. ご清聴ありがとうございました 21