AWS SAM CLI の設定 - AWS Serverless Application Model

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS SAM CLI の設定

の利点の 1 AWS SAM つは、反復的なタスクを削除して開発者の時間を最適化することです。 には、samconfigこの目的のために という名前の設定ファイル AWS SAMCLIが含まれています。デフォルトでは、 への設定 AWS SAMCLIは必要ありませんが、設定ファイルでカスタマイズしたパラメータ AWS SAM を参照できるようにすることで、より少ないパラメータでコマンドを実行できるように設定ファイルを更新できます。次の表の例は、コマンドを最適化する方法を示しています。

で最適化 samconfig

sam build --cached --parallel --use-containers

sam build

sam local invoke --env-vars locals.json

sam local invoke

sam local start-api --env-vars locals.json --warm-containers EAGER

sam local start-api

AWS SAMCLI には、デベロッパーがサーバーレスアプリケーションを作成、開発、デプロイするのに役立つ一連のコマンドが用意されています。これらの各コマンドは、アプリケーションとデベロッパーの設定に基づいてオプションのフラグで設定できます。詳細については、「」のAWS SAMCLIコンテンツを参照してください。 GitHub

このセクションのトピックでは、サーバーレスアプリケーションの開発時間を最適化するために AWS SAM CLI 設定ファイル を作成し、デフォルト設定をカスタマイズする方法を示します。

設定ファイル ( samconfig ファイル) を作成する方法

AWS SAMCLI 設定ファイル (ファイル名 samconfig) は、通常 TOML 構造を使用するテキストファイルですが、YAML でも使用できます。 AWS クイックスタートテンプレートを使用する場合、このファイルは sam init コマンドの実行時に作成されます。sam deploy -\-guided コマンドを使用してアプリケーションをデプロイするときに、このファイルを更新できます。

デプロイが完了すると、デフォルト値を使用したdefault場合、samconfigファイルには という名前のプロファイルが含まれます。deploy コマンドを再実行すると、 はこのプロファイルに保存されている構成設定 AWS SAM を適用します。

samconfig ファイルの利点は、 が deploy コマンドに加えて使用可能な他のコマンドの設定 AWS SAM を保存することです。新しいデプロイで作成されたこれらの値以外にも、 samconfig ファイルで設定できる属性が多数あり、 AWS SAMを使用して開発者ワークフローの他の側面を簡素化できますCLI。

プロジェクト設定を構成する

で使用する設定ファイルで、 AWS SAMCLIコマンドパラメータ値などのプロジェクト固有の設定を指定できます AWS SAMCLI。この設定ファイルの詳細については、「AWS SAM CLI 設定ファイル」を参照してください。

設定ファイルの使用

設定ファイルは、環境、コマンド、およびパラメータ値で構成されます。詳細については、「設定ファイルの基本」を参照してください。

新しい環境を設定するには
  1. 設定ファイルに新しい環境を指定します。

    以下に、新しい prod 環境を指定する例を示します。

    TOML
    [prod.global.parameters]
    YAML
    prod: global: parameters:
  2. 設定ファイルの parameters セクションで、パラメーター値をキーと値のペアとして指定します。

    以下に、prod 環境のアプリケーションのスタック名を指定する例を示します。

    TOML
    [prod.global.parameters]
    stack_name = "prod-app"
    YAML
    prod: global: parameters: stack_name: prod-app
  3. --config-env オプションを使用して、使用する環境を指定します。

    以下に例を示します。

    $ sam deploy --config-env "prod"
パラメータ値を設定するには
  1. パラメータ値を設定したい AWS SAM CLI コマンドを指定します。すべての AWS SAM CLI コマンドのパラメータ値を設定するには、global 識別子を使用します。

    以下に、default 環境の sam deploy コマンドにパラメーター値を指定する例を示します。

    TOML
    [default.deploy.parameters]
    confirm_changeset = true
    YAML
    default: deploy: parameters: confirm_changeset: true

    以下に、default 環境のすべての AWS SAM CLI コマンドにパラメータ値を指定する例を示します。

    TOML
    [default.global.parameters]
    stack_name = "sam-app"
    YAML
    default: global: parameters: stack_name: sam-app
  2. AWS SAM CLI のインタラクティブフローを使用して、パラメータ値を指定することや、設定ファイルを変更することもできます。

    sam deploy --guided インタラクティブフローの例を次に示します。

    $ sam deploy --guided Configuring SAM deploy ====================== Looking for config file [samconfig.toml] : Found Reading default arguments : Success Setting default arguments for 'sam deploy' ========================================= Stack Name [sam-app]: ENTER AWS Region [us-west-2]: ENTER #Shows you resources changes to be deployed and require a 'Y' to initiate deploy Confirm changes before deploy [Y/n]: n #SAM needs permission to be able to create roles to connect to the resources in your template Allow SAM CLI IAM role creation [Y/n]: ENTER #Preserves the state of previously provisioned resources when an operation fails Disable rollback [y/N]: ENTER HelloWorldFunction may not have authorization defined, Is this okay? [y/N]: y Save arguments to configuration file [Y/n]: ENTER SAM configuration file [samconfig.toml]: ENTER SAM configuration environment [default]: ENTER

詳細については、「設定ファイルの作成と変更」を参照してください。

基本的な TOML の例

以下は samconfig.toml 設定ファイルの例です。

...
version = 0.1

[default]
[default.global]
[default.global.parameters]
stack_name = "sam-app"

[default.build.parameters]
cached = true
parallel = true

[default.deploy.parameters]
capabilities = "CAPABILITY_IAM"
confirm_changeset = true
resolve_s3 = true

[default.sync.parameters]
watch = true

[default.local_start_api.parameters]
warm_containers = "EAGER"

[prod]
[prod.sync]
[prod.sync.parameters]
watch = false

基本的な YAML の例

以下は samconfig.yaml 設定ファイルの例です。

version 0.1 default: global: parameters: stack_name: sam-app build: parameters: cached: true parallel: true deploy: parameters: capabilities: CAPABILITY_IAM confirm_changeset: true resolve_s3: true sync: parameters: watch: true local_start_api: parameters: warm_containers: EAGER prod: sync: parameters: watch: false

認証情報と基本設定を構成する

AWS Command Line Interface (AWS CLI) を使用して、 AWS 認証情報、デフォルトのリージョン名、デフォルトの出力形式などの基本設定を行います。構成が完了すると、これらの設定を AWS SAM CLI で使用できるようになります。詳細については、「AWS Command Line Interface ユーザーガイド」の次を参照してください:

簡単な設定手順については、「ステップ 5: AWS CLI を使用して AWS 認証情報を設定する」を参照してください。