Updated on 2023-08-11 GMT+08:00

FGS.SmnEventMap

Element Description

The FGS.SmnEventMap element is used to create Simple Message Notification (SMN) trigger resources for FunctionGraph. SMN triggers depend on the SMN service. To create SMN triggers, you need to enable the SMN service. Based on SMN events, SMN triggers can trigger function execution.

Element Properties

Table 1 Property Description

Property

Required

Descripiton

remark

No

Subscription remark.

Type: string

Value Description: The field is optional. When the field is not configured, the default value is "APItest".

Default: APItest

Suggestion: Use the get_input function to pass this parameter. Its value can then be automatically selected when you create a stack on the AOS console.

topicName

Yes

SMN topic to which you want to subscribe.

Type: string

Value Description: The field must be selected. The field is obtained from the created LTS log group.

Suggestion: Use the get_input function to pass this parameter. Its value can then be automatically selected when you create a stack on the AOS console.

funcId

Yes

function urn.

Type: string

Value Description: The field is automatically retrieved from the refID field of type HuaweiCloud.FGS.Function element by the get_reference function. The field must be selected.

Suggestion: Using the default configuration.

Relationships Between Elements

Table 2 Relationship description

Description

Target

ContainedIn

FGS.Function

Return Value

None.

Blueprint Example

tosca_definitions_version: huaweicloud_tosca_version_1_0
inputs:
  codeUrl:
    description: >-
      The address of the function code package on OBS. You need to upload the
      function code to OBS barrel in advance.
    label: Function
    type: string
  handler:
    default: index.handler
    description: >-
      The Execution Entry of the function. Default value is index. handler. It
      can be configured independently by code file name and entry function name.
    label: Function
    type: string
  memorySize:
    constraints:
      valid_values:
        - 128
        - 256
        - 512
        - 768
        - 1024
        - 1280
        - 1536
    default: 128
    description: The memory size of the function.
    label: Function
    type: integer
  name:
    constraints:
      regex: '^[a-zA-Z]([a-zA-Z0-9_-]*[a-zA-Z0-9])?$'
    default: image_watermark
    description: The name of the function.
    label: Function
    type: string
  runtime:
    constraints:
      valid_values:
        - Node.js6.10
        - Python2.7
        - Python3.6
        - Java8
        - Go1.8
        - Node.js8.10
    description: The runtime of the function.
    label: Function
    type: string
  timeout:
    constraints:
      in_range:
        - 3
        - 300
    default: 3
    description: The timeout of the function. The effective range is 3~300.
    label: Function
    type: integer
  xrole:
    description: The agency of the function. It should be created in advance.
    label: Function
    type: string
  smn_topicName:
    description: SMN topic to which you want to subscribe.
    label: SMN trigger
    type: string
node_templates:
  fgsf36en:
    properties:
      codeUrl:
        get_input: codeUrl
      handler:
        get_input: handler
      memorySize:
        get_input: memorySize
      name:
        get_input: name
      role:
        get_input: xrole
      runtime:
        get_input: runtime
      timeout:
        get_input: timeout
      code: ''
      codeType: obs
    type: HuaweiCloud.FGS.Function
  fgsse1fs:
    type: HuaweiCloud.FGS.SmnEventMap
    properties:
      topicName:
        get_input: smn_topicName
      funcId:
        get_reference: fgsf36en
    requirements:
      - funcId:
          node: fgsf36en
outputs:
  function-urn:
    description: function URN
    value:
      get_attribute:
        - fgsf36en
        - refID
  smn_trigger_info:
    description: SMN trigger info
    value:
      get_attribute:
        - fgsse1fs
        - smnEventMap