本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
服务 CloudFormation IaC 文件参数详细信息和示例
您可以在服务和管道基础设施即代码 (IaC) 文件中定义和引用参数。有关 AWS Proton 参数、参数类型、参数命名空间以及如何在 IaC 文件中使用参数的详细说明,请参阅AWS Proton 参数。
定义服务参数
您可以为服务 IaC 文件定义输入和输出参数。
读取服务 IaC 文件中的参数值
您可以在服务 IaC 文件中读取与服务和其他资源相关的参数。您可以通过在参数命名空间中引用参数的名称来读取 AWS Proton 参数值。
-
输入参数 - 引用
service_instance.inputs.
以读取服务实例输入值。input-name
-
资源参数-通过引用
service.name
、service_instance.name
和environment.name
等名称来读取 AWS Proton 资源参数。 -
输出参数 - 引用
environment.outputs.
或output-name
service_instance.components.default.outputs.
以读取其他资源的输出。output-name
包含参数的示例服务 IaC 文件
以下示例是服务 CloudFormation IaC 文件中的片段。environment.outputs.
命名空间引用环境 IaC 文件的输出。service_instance.inputs.
命名空间引用服务实例输入参数。该service_instance.name
属性指的是 AWS Proton 资源参数。
Resources: StoreServiceInstanceInputValue: Type: AWS::SSM::Parameter Properties: Type: String Value: "{{ service.name }} {{ service_instance.name }} {{ service_instance.inputs.my_sample_service_instance_required_input }} {{ service_instance.inputs.my_sample_service_instance_optional_input }} {{ environment.outputs.MySampleInputValue }} {{ environment.outputs.MyOtherSampleInputValue }}" # resource parameter references # input parameter references # output references to an environment infrastructure as code file Outputs: MyServiceInstanceParameter: # output definition Value: !Ref StoreServiceInstanceInputValue MyServiceInstanceRequiredInputValue: # output definition Value: "{{ service_instance.inputs.my_sample_service_instance_required_input }}" # input parameter reference MyServiceInstanceOptionalInputValue: # output definition Value: "{{ service_instance.inputs.my_sample_service_instance_optional_input }}" # input parameter reference MyServiceInstancesEnvironmentSampleOutputValue: # output definition Value: "{{ environment.outputs.MySampleInputValue }}" # output reference to an environment IaC file MyServiceInstancesEnvironmentOtherSampleOutputValue: # output definition Value: "{{ environment.outputs.MyOtherSampleInputValue }}" # output reference to an environment IaC file