sam deploy - AWS Serverless Application Model

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

sam deploy

AWS SAM アプリケーションをデプロイします。

デフォルトでは、このコマンドを使用すると、AWS SAM CLI は現在の作業ディレクトリがプロジェクトのルートディレクトリであると見なされます。AWS SAM CLI は、最初にsam buildコマンドで、.aws-samサブフォルダ、および名前付きtemplate.yaml。次に、AWS SAM CLI は、template.yamlまたはtemplate.yml現在の作業ディレクトリで、を実行する必要があります。指定すると、--templateオプションを使用すると、AWS SAM CLI のデフォルトの動作が上書きされ、その AWS SAM テンプレートとそれが指すローカルリソースのみがデプロイされます。

このコマンドには、ガイド付きインタラクティブモードが用意されています。このモードは、--guidedオプション。対話型モードでは、デプロイに必要なパラメータが順番に示され、デフォルトのオプションが提供され、オプションでこれらのオプションがプロジェクトディレクトリの設定ファイルに保存されます。を使用してアプリケーションの後続のデプロイメントを実行する場合sam deployに設定されている場合、AWS SAM CLI は設定ファイルから必要なパラメータを取得します。

で宣言されたオブジェクトParametersセクションは AWS 追加のインタラクティブモードのプロンプトとして表示されます。各パラメータの値を入力するように求められます。これらのオブジェクトおよび対応するプロンプトの例については、このトピックの後半のセクション「」を参照してください。

コード署名を使用して構成するサーバーレスアプリケーションは、よりインタラクティブなモードプロンプトを生成します。コードに署名するかどうかを尋ねられます。署名する場合は、署名プロファイルの名前と所有者の入力を求められます。これらのプロンプトの例については、このトピックの後半のセクション「」を参照してください。

オプションで、設定の詳細については、「」を参照してください。--guidedオプションの詳細については、AWS SAM CLI 設定ファイル

AWS CloudFormation を使用して AWS Lambda 関数をデプロイするには、Lambda デプロイパッケージ用の Amazon Simple Storage Service (Amazon S3) バケットが必要です。AWS SAM CLI は、この Amazon S3 バケットを作成して管理します。

使用:

sam deploy [OPTIONS] [ARGS]...

オプション:

オプション 説明
-g, --guided

このオプションを指定して、AWS SAM がデプロイをガイドするためにプロンプトを使用します。

-t, --template-file, --template PATH AWS SAM テンプレートが存在するパスとファイル名。

注意: このオプションを指定すると、AWS SAM はテンプレートとそれが指すローカルリソースのみをデプロイします。

--stack-name TEXT (必須)デプロイ先の AWS CloudFormation スタックの名前。既存のスタックを指定すると、コマンドはスタックを更新します。新しいスタックを指定すると、コマンドはスタックを作成します。
--s3-bucket TEXT このコマンドが AWS CloudFormation テンプレートをアップロードする Amazon S3 バケットの URI。これは、51,200 バイトを超えるサイズのテンプレートを展開する場合に必要です。
--s3-prefix TEXT Amazon S3 バケットにアップロードされるアーティファクトの名前に追加されたプレフィックス。プレフィックス名は、Amazon S3 バケットのパス名 (フォルダ名) です。
--image-repository TEXT このコマンドが関数のイメージをアップロードする Amazon Elastic Container Registry (Amazon ECR) リポジトリの名前。で宣言された関数に必要Imageパッケージタイプが
--signing-profiles LIST デプロイパッケージに署名する署名プロファイルのリスト。このオプションは、キーと値のペアのリストを取ります。キーは署名する関数またはレイヤーの名前、値は署名プロファイルです。オプションのプロファイル所有者には:。例:FunctionNameToSign=SigningProfileName1 LayerNameToSign=SigningProfileName2:SigningProfileOwner
--capabilities LIST AWS CloudFormation が特定のスタックを作成できるように指定する必要がある機能のリスト。一部のスタックテンプレートには、新しい AWS Identity and Access Management (IAM) ユーザーを作成するなど、AWS アカウントのアクセス許可に影響するリソースが含まれている場合があります。これらのスタックの場合は、このオプションを指定して、それらの機能を明示的に確認する必要があります。有効な値は、CAPABILITY_IAMCAPABILITY_NAMED_IAM のみです。IAM リソースがある場合、どちらの機能でも指定できます。カスタム名を持つ IAM リソースがある場合は、CAPABILITY_NAMED_IAM を指定する必要があります。このオプションを指定しない場合、オペレーションは、InsufficientCapabilitiesエラー。
--region TEXT デプロイ先の AWS リージョン。たとえば、us-east-1 です。
--profile TEXT AWS 認証情報を取得する認証情報ファイルの特定のプロファイル。
--kms-key-id TEXT Amazon S3 バケットに保管されているアーティファクトを暗号化するために使用される AWS Key Management Service (AWS KMS) キーの ID。
--force-upload このオプションを指定して、Amazon S3 バケット内の既存のアーティファクトと一致する場合でも、アーティファクトをアップロードします。一致するアーティファクトは上書きされます。
--no-execute-changeset チェンジセットを実行するかどうかを示します。チェンジセットを実行する前にスタックの変更を表示する場合は、このオプションを指定します。このコマンドは、AWS CloudFormation チェンジセットを作成し、チェンジセットを実行せずに終了します。チェンジセットを実行するには、このオプションを指定せずに同じコマンドを実行します。
--role-arn TEXT AWS CloudFormation がチェンジセットを実行するときにが引き受ける IAM ロールの Amazon リソースネーム (ARN)。
--fail-on-empty-changeset | --no-fail-on-empty-changeset スタックに変更を加えていない場合に 0 以外の終了コードを返すかどうかを指定します。デフォルトの動作では、ゼロ以外の終了コードが返されます。
--confirm-changeset | --no-confirm-changeset AWS SAM CLI が計算されたチェンジセットをデプロイするかどうかを確認するプロンプトを表示します。
--use-json AWS CloudFormation テンプレートの JSON を出力します。デフォルトの出力は YAML です。
--metadata テンプレートで参照されているすべてのアーティファクトにアタッチするメタデータのマップ。
--notification-arns LIST AWS CloudFormation がスタックに関連付ける Amazon Simple Notification Service (Amazon SNS) トピック ARN のリスト。
--tags LIST 作成または更新されたスタックに関連付けるタグの一覧。AWS CloudFormation は、これらのタグをサポートするスタックのリソースにもこれらのタグを伝達します。
--parameter-overrides キーと値のペアとしてエンコードされた AWS CloudFormation パラメータオーバーライドを含む文字列。AWS Command Line Interface (AWS CLI) と同じ形式を使用します。例:ParameterKey=ParameterValue InstanceType=t1.micro
--config-file PATH 使用するデフォルトのパラメータ値が含まれている設定ファイルのファイル名。デフォルト値は です。samconfig.tomlプロジェクトディレクトリのルートにあります。設定ファイルについて詳しくは、AWS SAM CLI 設定ファイル を参照してください。
--config-env TEXT 使用する設定ファイル内のデフォルトのパラメータ値を指定する環境名。デフォルト値は default です。設定ファイルについて詳しくは、AWS SAM CLI 設定ファイル を参照してください。
--no-progressbar Amazon S3 にアーティファクトをアップロードするときに、進行状況バーを表示しません。
--debug デバッグロギングをオンにして、AWS SAM CLI が生成するデバッグメッセージを出力し、タイムスタンプを表示します。
--help このメッセージを表示して終了します。

Examples

Parameters

以下に、宣言されたオブジェクトの例を示します。Parametersセクションと、sam deploy --guided

AWS SAM テンプレート:

Parameters: MyPar: Type: String Default: MyParVal

対応するsam deploy --guidedプロンプト:

Parameter MyPar [MyParVal]:

コード署名

コード署名で設定された関数の例を次に示します。

AWS SAM テンプレート:

Resources: HelloWorld: Type: AWS::Serverless::Function Properties: CodeUri: hello_world/ Handler: app.lambda_handler Runtime: python3.7 CodeSigningConfigArn: arn:aws:lambda:us-east-1:111122223333:code-signing-config:csc-12e12345db1234567

対応するsam deploy --guidedプロンプト:

#Found code signing configurations in your function definitions Do you want to sign your code? [Y/n]: #Please provide signing profile details for the following functions & layers #Signing profile details for function 'HelloWorld' Signing Profile Name: Signing Profile Owner Account ID (optional): #Signing profile details for layer 'MyLayer', which is used by functions {'HelloWorld'} Signing Profile Name: Signing Profile Owner Account ID (optional):