sam deploy - AWS Serverless Application Model

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

sam deploy

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

このコマンドを使用すると、デフォルトでAWS SAMCLIは、現在の作業ディレクトリがプロジェクトのルートディレクトリであると仮定します。-AWS SAMCLIはまず、sam buildコマンドで、.aws-samサブフォルダ、および名前付きtemplate.yaml。次に、AWS SAMCLIは、という名前のテンプレートファイルを検索しようとしますtemplate.yamlまたはtemplate.yml現在の作業ディレクトリで。指定すると、--templateオプションAWS SAMCLIのデフォルトの動作はオーバーライドされ、AWS SAMテンプレートと、それが指すローカルリソースです。

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

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

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

指定するときに必要に応じて保存される設定の詳細については、「」を参照してください。--guidedオプションの詳細については、AWS SAMCLI 設定ファイル

のデプロイAWS Lambda関数をAWS CloudFormationLambda デプロイパッケージ用の Amazon Simple Storage Service (Amazon S3) バケットが必要です。-AWS SAMCLI は、この 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 このコマンドがアップロードする Amazon S3 バケットの URIAWS CloudFormationテンプレートに追加します。これは、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アカウントを作成します。たとえば、新しいAWS Identity and Access Management(IAM) ユーザーです。このようなスタックの場合は、このオプションを指定して、それらの機能を明示的に確認する必要があります。有効な値は、CAPABILITY_IAMCAPABILITY_NAMED_IAM のみです。IAM リソースがある場合、どちらの機能でも指定できます。カスタム名を持つ IAM リソースがある場合は、CAPABILITY_NAMED_IAM を指定する必要があります。このオプションを指定しない場合、オペレーションはInsufficientCapabilitiesエラー。
--region TEXT -AWSデプロイ先リージョン。たとえば、us-east-1 です。
--profile TEXT 認証情報ファイルから特定のプロファイルで、AWS認証情報。
--kms-key-id TEXT の IDAWS Key Management Service(AWS KMS) キーを使用して、Amazon S3 バケットに保管されているアーティファクトを暗号化します。
--force-upload Amazon S3 バケット内の既存のアーティファクトと一致する場合でも、アーティファクトをアップロードするには、このオプションを指定します。一致するアーティファクトは上書きされます。
--no-execute-changeset 変更セットを実行するかどうかを示します。チェンジセットを実行する前にスタックの変更を表示する場合は、このオプションを指定します。このコマンドでは、AWS CloudFormationチェンジセットを実行し、チェンジセットを実行せずに終了します。チェンジセットを実行するには、このオプションを指定せずに同じコマンドを実行します。
--role-arn TEXT IAM ロールの Amazon リソースネーム (ARN)AWS CloudFormation変更セットを実行するときに仮定します。
--fail-on-empty-changeset | --no-fail-on-empty-changeset スタックに変更を加えていない場合に 0 以外の終了コードを返すかどうかを指定します。デフォルトの動作では、ゼロ以外の終了コードが返されます。
--confirm-changeset | --no-confirm-changeset かどうかを確認するプロンプトが表示されます。AWS SAMCLI は、計算された変更セットをデプロイします。
--use-json AWS CloudFormation テンプレートの JSON を出力します。デフォルトの出力は YAML です。
--metadata テンプレートで参照されているすべてのアーティファクトにアタッチするメタデータのマップ。
--notification-arns LIST Amazon Simple Notification Service (Amazon SNS) トピックの ARN の一覧AWS CloudFormationスタックに関連付けます。
--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 SAMCLI 設定ファイル を参照してください。
--config-env TEXT 使用する設定ファイル内のデフォルトのパラメータ値を指定する環境名。デフォルト値は default です。設定ファイルについて詳しくは、AWS SAMCLI 設定ファイル を参照してください。
--no-progressbar Amazon S3 にアーティファクトをアップロードするときに、進行状況バーを表示しません。
--debug デバッグログをオンにして、AWS SAMCLI は、タイムスタンプを生成し、表示します。
--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):