서비스 CloudFormation IaC 파일 매개 변수 세부 정보 및 예제 - AWS Proton

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

서비스 CloudFormation IaC 파일 매개 변수 세부 정보 및 예제

서비스 및 파이프라인 인프라에서 파라미터를 코드형 인프라(IaC) 파일로 정의하고 참조할 수 있습니다. AWS Proton 파라미터, 파라미터 유형, 파라미터 네임스페이스 및 IaC 파일의 파라미터 사용 방법에 대한 자세한 설명은 AWS Proton 파라미터을 참조하세요.

서비스 파라미터를 정의하세요.

서비스 IaC 파일의 입력 및 출력 파라미터를 모두 정의할 수 있습니다.

  • 입력 파라미터스키마 파일에 서비스 인스턴스 입력 파라미터를 정의합니다.

    다음 목록에는 일반적인 사용 사례에 대한 서비스 입력 파라미터의 예가 나와 있습니다.

    • Port

    • 태스크 크기

    • 이미지

    • 원하는 개수

    • Docker 파일

    • 유닛 테스트 명령

    서비스를 생성할 때 입력 파라미터 값을 제공합니다.

    • 콘솔을 사용하여 다음을 제공하는 스키마 기반 양식을 작성하십시오. AWS Proton

    • CLI를 사용하여 값이 포함된 사양을 제공하세요.

  • 출력 파라미터 — 서비스 IaC 파일에서 서비스 인스턴스 출력을 정의합니다. 그런 다음 다른 리소스의 IaC 파일에서 이러한 출력을 참조할 수 있습니다.

서비스 IaC 파일에서 파라미터 값 읽기

서비스 IaC 파일에서 서비스 및 기타 리소스와 관련된 파라미터를 읽을 수 있습니다. 파라미터 네임스페이스에서 파라미터 이름을 참조하여 파라미터 값을 읽습니다. AWS Proton

  • 입력 파라미터 - service_instance.inputs.input-name를 참조하여 서비스 인스턴스 입력 값을 읽습니다.

  • 리소스 파라미터 -,, 등의 service.name 이름을 참조하여 AWS Proton 리소스 파라미터를 읽습니다. service_instance.name environment.name

  • 출력 파라미터 - 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