AWS CloudFormation Concepts Intrinsic Functions: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 12: Line 12:


The intrinsic function Ref returns the value of the specified [[AWS_CloudFormation_Concepts#Input_Parameters|parameter]] or [[AWS_CloudFormation_Concepts#Resources|resource]]. When a parameter logical name is specified, it returns the value of the parameter. When a resource logical name is specified, it returns a value that can be typically used to refer to that resource, such as a physical ID.
The intrinsic function Ref returns the value of the specified [[AWS_CloudFormation_Concepts#Input_Parameters|parameter]] or [[AWS_CloudFormation_Concepts#Resources|resource]]. When a parameter logical name is specified, it returns the value of the parameter. When a resource logical name is specified, it returns a value that can be typically used to refer to that resource, such as a physical ID.
!Ref AWS::NoValue
!Ref MyParameter


=Join=
=Join=

Revision as of 04:41, 14 March 2019

External

Intrinsic Function Reference

Internal

Ref

Ref

The intrinsic function Ref returns the value of the specified parameter or resource. When a parameter logical name is specified, it returns the value of the parameter. When a resource logical name is specified, it returns a value that can be typically used to refer to that resource, such as a physical ID.

!Ref AWS::NoValue
!Ref MyParameter

Join

Join
!Join [ delimiter, [ comma-delimited list of values ] ]
!Join ['-', [ a, b, c ]]

returns "a:b:c"

Split

Split
!Split ['.', "www.example.com"]

returns ["www", "example", "com"].

Select

Select

Sub

Sub

Sub substitutes variables in an input string with specified values.

If only template parameters, resource logical IDs and resource attributes are substituted in the String parameter, no variable map is required:

!Sub '${TemplateParameterA} is a ${TemplateParameterB}'
!Sub '${AWS::Region}-something'

ImportValue

ImportValue

Can be used as a key in a YAML structure:

...
ServiceRole:
  Fn::ImportValue: ...

or a value:

...
EnvironmentVariables:
  - Name: TARGET_BUCKET
     Value:
       Fn::ImportValue: !Sub '${AWS::Region}-BuildBucket'

FindInMap

!FindInMap [ MapName, TopLevelKey, SecondLevelKey ]