Updated on 2023-12-13 GMT+08:00

FGS.TimerEventMap

Element Description

HuaweiCloud.FGS.TimerEventMap is used to create timer trigger resources for FunctionGraph. Timer triggers can periodically trigger function execution.

Element Properties

Table 1 Property Description

Property

Required

Descripiton

name

Yes

TIMER trigger name

Type: string

Value Description: Supports customization.

Value Constraint: You can only begin with english letters , and contain only letters, numbers, underlines, and middle scribe. The length can not exceed 64 characters.

Suggestion: Use the get_input function to import this field. The value can be automatically obtained on the AOS page.

schedule

Yes

Trigger schedule

Type: string

Value Description: The field must be selected.When the schedule type is Rate, you can set schedule at a fixed rate of minutes, hours, or days, and each type only supports integer configuration. You can set a fixed rate from 1 to 60 minutes, 1 to 24 hours, or 1 to 30 days. When the schedule type is Cron, you can set schedule at the Cron expression. Examples of schedule rules: Rate schedule rule: "3m","1h","1d"; Cron schedule rule: "0 0/30 * * * ?", "@every 30m". For details of timing schedule, see the FGS documentation at https://support.huaweicloud.com/intl/en-us/usermanual-functiongraph/functiongraph_01_0207.html.

Suggestion: Use the get_input function to import this field. The value can be automatically obtained on the AOS page.

trigger_status

No

Trigger status.

Type: string

Value Description: The field is optional. When the field is not configured, the default trigger state ACTIVE is used. Support "DISABLED", "ACTIVE". "DISABLED" means closing the trigger, and "ACTIVE" means the trigger is turned on.

Default: ACTIVE

Value Constraint: Valid values can only be "DISABLED", "ACTIVE".

Suggestion: Use the get_input function to import this field. The value can be automatically obtained on the AOS page.

schedule_type

Yes

Trigger schedule type.

Type: string

Value Description: Support "Rate", "Cron". For details of timing schedule, see the FGS documentation at https://support.huaweicloud.com/intl/en-us/usermanual-functiongraph/functiongraph_01_0207.html.

Default: Rate

Value Constraint: Valid values can only be "Rate","Cron".

Suggestion: Use the get_input function to import this field. The value can be automatically obtained on the AOS page.

user_event

No

User Annex information.

Type: string

Value Description: The field is optional. When the attachment information is entered, the information of the attachment will be included in the execution event when the trigger function of the Timer trigger is executed. The size of the attachment information is less than 2KB

Default: ''

Suggestion: Use the get_input function to import this field. The value can be automatically obtained on the AOS page.

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
  timer_name:
    description: TIMER trigger name.
    label: TIMER trigger
    type: string
  timer_schedule_type:
    default: Rate
    constraints:
      valid_values:
        - Rate
        - Cron
    description: 'Trigger schedule type. Valid values:["Rate","Cron"].'
    label: TIMER trigger
    type: string
  timer_schedule:
    description: Trigger schedule.
    label: TIMER 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
  fgste1cr:
    type: HuaweiCloud.FGS.TimerEventMap
    properties:
      name:
        get_input: timer_name
      schedule:
        get_input: timer_schedule
      schedule_type:
        get_input: timer_schedule_type
      funcId:
        get_reference: fgsf36en
    requirements:
      - funcId:
          node: fgsf36en
outputs:
  function-urn:
    description: function URN
    value:
      get_attribute:
        - fgsf36en
        - refID
  timer_trigger_info:
    description: TIMER trigger info
    value:
      get_attribute:
        - fgste1cr
        - timerEventMap