AWS::Serverless::Application
AWS Serverless Application Repository
注記
AWS CloudFormation にデプロイすると、AWS SAM は、AWS SAM リソースを CloudFormation リソースに変換します。詳細については、「AWS SAM 向けに生成された CloudFormation リソース」を参照してください。
構文
AWS Serverless Application Model (AWS SAM) テンプレートでこのエンティティを宣言するには、以下の構文を使用します。
YAML
Type: AWS::Serverless::Application Properties: Location:String | ApplicationLocationObjectNotificationARNs:ListParameters:MapTags:MapTimeoutInMinutes:Integer
プロパティ
-
Location -
ネストされたアプリケーションのテンプレート URL、ファイルパス、またはロケーションオブジェクトです。
テンプレート URL が指定されている場合は、CloudFormation TemplateUrl ドキュメントに指定されている形式に従い、有効な CloudFormation または SAM テンプレートが含まれている必要があります。AWS Serverless Application Repository に公開されたアプリケーションを指定するには、ApplicationLocationObject を使用することができます。
ローカルファイルパスを指定する場合は、定義が適切に変換されるようにするために、テンプレートが
sam deployまたはsam packageコマンドを含むワークフローを実行する必要があります。タイプ: 文字列 | ApplicationLocationObject
必須: はい
CloudFormation との互換性: このプロパティは、
AWS::CloudFormation::StackリソースのTemplateURLプロパティに似ています。CloudFormation バージョンでは、ApplicationLocationObject からアプリケーションを取得するために AWS Serverless Application Repository を使用しません。 -
NotificationARNs -
スタックイベントに関する通知が送信される既存の Amazon SNS トピックのリストです。
タイプ: リスト
必須: いいえ
CloudFormation との互換性: このプロパティは、
AWS::CloudFormation::StackリソースのNotificationARNsプロパティに直接渡されます。 -
Parameters -
アプリケーションパラメータ値です。
タイプ: マップ
必須: いいえ
CloudFormation との互換性: このプロパティは、
AWS::CloudFormation::StackリソースのParametersプロパティに直接渡されます。 -
このアプリケーションに追加されるタグを指定するマップ (文字列対文字列) です。キーと値に使用できるのは英数字のみです。キーの長さは 1~127 文字の Unicode 文字で、「aws:」をプレフィックスとして使用することはできません。値の長さは 1~255 文字の Unicode 文字にすることができます。
タイプ: マップ
必須: いいえ
CloudFormation との互換性: このプロパティは、
AWS::CloudFormation::StackリソースのTagsプロパティに似ています。SAM の Tags プロパティは、キーバリューペアで構成されています。CloudFormation では、タグオブジェクトのリストで構成されています。スタックが作成されると、SAM がこのアプリケーションにlambda:createdBy:SAMタグを自動的に追加します。さらに、このアプリケーションが AWS Serverless Application Repository からのものである場合、SAM は 2 つの追加のタグserverlessrepo:applicationId:とApplicationIdserverlessrepo:semanticVersion:も自動的に追加します。SemanticVersion -
TimeoutInMinutes -
ネストされたスタックが CloudFormation 状態になるまで
CREATE_COMPLETEが待機する時間 (分) です。デフォルトではタイムアウトが設定されていません。CloudFormation は、ネストされたスタックがCREATE_COMPLETE状態になったことを検出すると、親スタック内でネストされたスタックのリソースをCREATE_COMPLETEとしてマークして、親スタックの作成を再開します。ネストされたスタックがCREATE_COMPLETE状態になる前にタイムアウト期限が切れると、CloudFormation はネストされたスタックは失敗としてマークし、ネストされたスタックと親スタックの両方をロールバックします。タイプ: 整数
必須: いいえ
CloudFormation との互換性: このプロパティは、
AWS::CloudFormation::StackリソースのTimeoutInMinutesプロパティに直接渡されます。
戻り値
参照番号
このリソースの論理 ID が Ref 組み込み関数に提供されると、基盤となる AWS::CloudFormation::Stack リソースのリソース名が返されます。
Ref 関数の使用方法の詳細については、AWS CloudFormation ユーザーガイドの「Ref」を参照してください。
Fn::GetAtt
Fn::GetAtt は、このタイプの指定された属性の値を返します。利用可能な属性とサンプル戻り値は以下のとおりです。
Fn::GetAtt の使用の詳細については、AWS CloudFormation ユーザーガイドの「Fn::GetAtt」を参照してください。
Outputs.ApplicationOutputName-
という前のスタック出力の値です。ApplicationOutputName
例
SAR アプリケーション
Serverless Application Repository からのテンプレートを使用するアプリケーションです。
YAML
Type: AWS::Serverless::Application Properties: Location: ApplicationId: 'arn:aws:serverlessrepo:us-east-1:012345678901:applications/my-application' SemanticVersion: 1.0.0 Parameters: StringParameter: parameter-value IntegerParameter: 2
通常のアプリケーション
S3 url からのアプリケーションです。
YAML
Type: AWS::Serverless::Application Properties: Location: https://s3.amazonaws.com/sam-s3-demo-bucket/template.yaml