sam package - AWS Serverless Application Model

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

sam package

AWS Serverless Application Model コマンドラインインターフェイス (AWS SAM CLI) は AWS SAM アプリケーションをパッケージ化します。

このコマンドは、コードと依存関係の.zipファイルを作成し、そのファイルを Amazon Simple Storage Service (Amazon S3) にアップロードします。Amazon S3 に保存されているすべてのファイルの暗号化 AWS SAM を有効にします。次に、 AWS SAM テンプレートのコピーが返され、ローカルアーティファクトへの参照を、コマンドがアーティファクトをアップロードした Amazon S3 の場所に置き換えます。

デフォルトでは、このコマンドを使用すると、 AWS SAM CLI は、現在の作業ディレクトリがプロジェクトのルートディレクトリであることを前提としています。の AWS SAM CLI まず、 sam build コマンドを使用して構築され、.aws-samサブフォルダにあり、 という名前のテンプレートファイルを見つけようとしますtemplate.yaml。次に、 AWS SAM CLI は、 または という名前のテンプレートファイルを現在の作業ディレクトリtemplate.yamltemplate.ymlで検索しようとします。--template オプションを指定すると、 AWS SAM CLIのデフォルトの動作は上書きされ、その AWS SAM テンプレートとそれが指すローカルリソースのみをパッケージ化します。

注記

sam deploysam package の機能を暗黙的に実行するようになりました。sam deploy コマンドを直接使用して、アプリケーションをパッケージ化およびデプロイできます。

使用方法

$ sam package <arguments> <options>

引数

リソース ID

パッケージ化する Lambda 関数の ID です。

この引数はオプションです。アプリケーションに単一の Lambda 関数が含まれている場合、 AWS SAM CLIはそれをパッケージ化します。アプリケーションに複数の関数が含まれている場合は、関数の ID を 1 つ指定してパッケージ化します。

有効な値 : リソースの論理 ID またはリソース ARN。

オプション

--config-env TEXT

使用する設定ファイル内のデフォルトパラメータ値を指定する環境名です。デフォルト値は「default」です。設定ファイルの詳細については、「AWS SAM CLI   設定ファイル」を参照してください。

--config-file PATH

使用するデフォルトのパラメータ値が含まれる設定ファイルのパスとファイル名です。デフォルト値は、プロジェクトディレクトリのルートにある「samconfig.toml」です。設定ファイルの詳細については、「AWS SAM CLI   設定ファイル」を参照してください。

--debug

デバッグログ記録を有効にして、 によって生成されたデバッグメッセージを印刷します。 AWS SAM CLI タイムスタンプを表示します。

--force-upload

Amazon S3 バケット内の既存のファイルを上書きします。このフラグを指定して、アーティファクトが Amazon S3 バケット内の既存のアーティファクトと一致する場合でも、それらをアップロードします。

--help

このメッセージを表示して終了します。

--image-repository TEXT

このコマンドが関数URIの画像をアップロードする Amazon Elastic Container Registry (Amazon ECR) リポジトリの 。Image パッケージタイプで宣言された関数に必要です。

--kms-key-id TEXT

Amazon S3 バケットに保存されているアーティファクトの暗号化に使用される AWS Key Management Service (AWS KMS) キーの ID。このオプションが指定されていない場合、 は Amazon S3-managed暗号化キー AWS SAM を使用します。

--metadata

(オプション) テンプレートで参照されるすべてのアーティファクトにアタッチするメタデータのマップです。

--no-progressbar

Amazon S3 へのアーティファクトのアップロード時に、進行状況バーを表示しません。

--output-template-file PATH

コマンドがパッケージ化されたテンプレートを書き込むファイルへのパス。パスを指定しない場合、コマンドはテンプレートを標準出力に書き込みます。

--profile TEXT

認証情報ファイルから AWS 認証情報を取得する特定のプロファイル。

--region TEXT

デプロイ先の AWS リージョン。例えば、us-east-1 などです。

--resolve-s3

パッケージ化に使用する Amazon S3 バケットを自動的に作成します。--s3-bucket および --resolve-s3 オプションの両方を指定すると、エラーが発生します。

--s3-bucket TEXT

このコマンドがアーティファクトをアップロードする Amazon S3 バケットの名前です。アーティファクトが 51,200 バイトより大きい場合には、--s3-bucket または --resolve-s3 オプションは必須です。--s3-bucket および --resolve-s3 オプションの両方を指定すると、エラーが発生します。

--s3-prefix TEXT

Amazon S3 バケットにアップロードされるアーティファクト名に追加されたプレフィックスです。プレフィックス名は、Amazon S3 バケットのパス名 (フォルダ名) です。これは、Zip パッケージタイプで宣言された関数のみに適用されます。

--save-params

コマンドラインで指定したパラメータを設定 AWS SAM ファイルに保存します。

--signing-profiles LIST

(オプション) デプロイパッケージに署名するための署名プロファイルのリストです。このパラメータはキーバリューペアのリストを使用します。このペアのキーは署名する関数またはレイヤーの名前、値は署名プロファイルで、オプションのプロファイル所有者は : で区切られます。例えば、FunctionNameToSign=SigningProfileName1 LayerNameToSign=SigningProfileName2:SigningProfileOwner と指定します。

--template-file, --template, -t PATH

AWS SAM テンプレートがあるパスとファイル名。

注記

このオプションを指定すると、 は、参照先のテンプレートとローカルリソースのみを AWS SAM パッケージ化します。

--use-json

AWS CloudFormation テンプレートJSONの出力。デフォルトでは、YAML が使用されます。

次の例では、Lambda 関数と CodeDeploy アプリケーションのアーティファクトを作成してパッケージ化します。アーティファクトは Amazon S3 バケットにアップロードされます。コマンドの出力は、package.yml という新しいファイルです。

$ sam package \ --template-file template.yml \ --output-template-file package.yml \ --s3-bucket amzn-s3-demo-bucket