Amazon Q の '/dev' コマンドによって生成されたコード提案のテスト
/dev コマンドを使用する場合、デフォルトでは Amazon Q はチャットで表示されるコードを自動的にテストしません。コードを保存して、個別にテストする必要があります。Amazon Q は、テストを完了するために必要なツールを備えた環境がないため、コードのテストを行えません。
Amazon Q がコードをテストできるようにするには、devfile を指定して開発環境を起動できるようにする必要があります。
注記
/dev コマンドおよび Amazon Q Developer Agent for software development の詳細については、「Amazon Q Developer を使用した機能の開発」を参照してください。
開発環境とは
開発環境は、Amazon Q がチャットで提示する前にコードをテストできる Docker コンテナ
Amazon Q はサンドボックスで Docker コンテナを起動します。つまり、Amazon Q が生成する可能性のある問題のあるコードから保護するために、コンテナは AWS サービスから分離されます。
devfile とは
devfile は、devfile 仕様
devfile は以下を記述します。
-
開発環境として使用する Docker コンテナイメージの名前と場所。
-
開発環境の起動時に自動的に実行するコマンド。
devfile には他のタイプの情報を含めることができますが、前述の 2 つは Amazon Q に関連する情報です。
独自の devfile を指定するか、Amazon Q で自動的に生成することができます。
仕組み
Amazon Q のチャットパネルに /dev コマンドを入力するたびに、Amazon Q はプロジェクトのルートで devfile を検索します。
devfile が存在する場合、Amazon Q は以下を実行します。
-
AWS のサンドボックスで開発環境を起動します。
-
コード提案を生成します (ただし、まだ提示はされません)。
-
devfile の手順を使用して、開発環境でコード提案をビルドしてテストします。
-
テストに合格しなかった場合は、提案を繰り返します。Amazon Q は 3 つのイテレーションを実行しますが、これは設定できません。
-
チャットウィンドウにテスト済みのコードを示します。
-
開発環境を終了します。
devfile が存在しない場合、Amazon Q は devfile を生成するかどうかを尋ねます。はいと答えると、Amazon Q はプロジェクトのコンテキストに基づいて devfile を生成します。この devfile の詳細については、「Amazon Q Developer の devfile の例」を参照してください。devfile を生成した後、Amazon Q は devfile の使用を開始しません。devfile を呼び出すには、/dev コマンドを入力する必要があります。
サンドボックスの仕様
開発環境が起動されるサンドボックスには、2 つの vCPU と 4 GB のメモリがあります。CPU とメモリは設定できません。
Amazon VPC のサポート
Amazon Q は、Amazon Virtual Private Cloud (Amazon VPC) での開発環境の実行をサポートしていません。詳細については、「Amazon Virtual Private Cloud ユーザーガイド」の「Amazon VPC とは?」を参照してください。