All Products
Search
Document Center

Resource Orchestration Service:ALIYUN::ARMS::DeliverTask

Last Updated:Oct 24, 2024

ALIYUN::ARMS::DeliverTask is used to create a delivery task.

Syntax

{
  "Type": "ALIYUN::ARMS::DeliverTask",
  "Properties": {
    "TargetList": List,
    "TaskName": String,
    "DataSourceName": String,
    "DataSourceId": String,
    "ExternalLabel": String,
    "FilterType": Boolean,
    "FilterList": String,
    "TaskDescription": String
  }
}

Properties

Property

Type

Required

Editable

Description

Constraint

TargetList

List

Yes

Yes

The destination list.

For more information, see TargetList properties.

TaskName

String

Yes

No

The name of the delivery task.

None.

DataSourceName

String

No

Yes

The name of the data source.

None.

DataSourceId

String

No

Yes

The ID of the data source.

None.

ExternalLabel

String

No

Yes

The external label of the delivery task.

None.

FilterType

Boolean

No

No

Specifies whether to use a whitelist for data filtering.

The default value is true.

FilterList

String

No

Yes

The metrics used for data filtering.

The metric supports regular expressions, multiple line breaks, and multiple conditions for accurate delivery.

TaskDescription

String

No

No

The description of the delivery task.

None.

TargetList syntax

"TargetList": [
  {
    "TargetParam": String,
    "TargetType": String,
    "FaultTolerantPolicy": String,
    "TargetName": String,
    "RetryPolicy": String
  }
]

TargetList properties

Property

Type

Required

Editable

Description

Constraint

TargetType

String

Yes

Yes

The destination type.

None.

FaultTolerantPolicy

String

No

Yes

The fault tolerance policy for the destination.

Valid values:

  • ALL (default): Fault tolerance is allowed. If a fault occurs, the execution continues. If the number of retries specified by the RetryPolicy property is exceeded, a message is delivered to a dead-letter queue or directly discarded.

  • NONE: Fault tolerance is not allowed. If a fault occurs and the number of retries specified by the RetryPolicy property is exceeded, the execution is blocked.

RetryPolicy

String

No

Yes

The retry policy for the destination.

Valid values:

  • BACKOFF_RETRY: Up to 3 retries are allowed. The retry interval ranges from 10 to 20 seconds at random.

  • EXPONENTIAL_DECAY_RETRY (default): Up to 176 retries are allowed. The retry interval exponentially increases to 512 seconds from 1 second. The total retry period is one day.

TargetParam

String

No

Yes

The destination parameter.

None.

TargetName

String

No

Yes

The destination name.

None.

Return values

Fn::GetAtt

TasId: the ID of the delivery task.

Examples

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  TargetList:
    AssociationPropertyMetadata:
      Parameters:
        TargetParam:
          Type: String
          Description:
            en: The parameter of the target.
          Required: false
        TargetType:
          Type: String
          Description:
            en: The type of the target.
          Required: true
        FaultTolerantPolicy:
          Type: String
          Description:
            en: |-
              The fault tolerant policy of the target. Valid values:
              - ALL (default): Exception tolerance is allowed. When an exception occurs, the execution will not be blocked, and the message will be delivered to the dead message queue or dropped directly according to the configuration after exceeding the retry policy.
              - NONE: Fault tolerance is not allowed and execution is blocked when an exception occurs and exceeds the retry policy configuration.
          AllowedValues:
            - ALL
            - NONE
          Required: false
          Default: ALL
        TargetName:
          Type: String
          Description:
            en: The name of the target.
          Required: false
        RetryPolicy:
          Type: String
          Description:
            en: |-
              The retry policy of the target. Valid values:
              - BACKOFF_RETRY: retry three times, with a random interval between 10 and 20 seconds
              - EXPONENTIAL_DECAY_RETRY (default): retry 176 times, each retry interval exponentially increased to 512 seconds, total retry time is 1 day; The interval for each retry is: 1,2,4,8,... 512 seconds.
          AllowedValues:
            - BACKOFF_RETRY
            - EXPONENTIAL_DECAY_RETRY
          Required: false
          Default: EXPONENTIAL_DECAY_RETRY
    AssociationProperty: List[Parameters]
    Type: Json
    Description:
      en: The list of the target.
    Required: true
  TaskName:
    Type: String
    Description:
      en: The name of the task.
    AllowedPattern: '[a-zA-Z0-9-]{1,64}'
    Required: true
Resources:
  DeliverTask:
    Type: ALIYUN::ARMS::DeliverTask
    Properties:
      TargetList:
        Ref: TargetList
      TaskName:
        Ref: TaskName
Outputs:
  TaskId:
    Description: The ID of the task.
    Value:
      Fn::GetAtt:
        - DeliverTask
        - TaskId
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "TargetList": {
      "AssociationPropertyMetadata": {
        "Parameters": {
          "TargetParam": {
            "Type": "String",
            "Description": {
              "en": "The parameter of the target."
            },
            "Required": false
          },
          "TargetType": {
            "Type": "String",
            "Description": {
              "en": "The type of the target."
            },
            "Required": true
          },
          "FaultTolerantPolicy": {
            "Type": "String",
            "Description": {
              "en": "The fault tolerant policy of the target. Valid values:\n- ALL (default): Exception tolerance is allowed. When an exception occurs, the execution will not be blocked, and the message will be delivered to the dead message queue or dropped directly according to the configuration after exceeding the retry policy.\n- NONE: Fault tolerance is not allowed and execution is blocked when an exception occurs and exceeds the retry policy configuration."
            },
            "AllowedValues": [
              "ALL",
              "NONE"
            ],
            "Required": false,
            "Default": "ALL"
          },
          "TargetName": {
            "Type": "String",
            "Description": {
              "en": "The name of the target."
            },
            "Required": false
          },
          "RetryPolicy": {
            "Type": "String",
            "Description": {
              "en": "The retry policy of the target. Valid values:\n- BACKOFF_RETRY: retry three times, with a random interval between 10 and 20 seconds\n- EXPONENTIAL_DECAY_RETRY (default): retry 176 times, each retry interval exponentially increased to 512 seconds, total retry time is 1 day; The interval for each retry is: 1,2,4,8,... 512 seconds."
            },
            "AllowedValues": [
              "BACKOFF_RETRY",
              "EXPONENTIAL_DECAY_RETRY"
            ],
            "Required": false,
            "Default": "EXPONENTIAL_DECAY_RETRY"
          }
        }
      },
      "AssociationProperty": "List[Parameters]",
      "Type": "Json",
      "Description": {
        "en": "The list of the target."
      },
      "Required": true
    },
    "TaskName": {
      "Type": "String",
      "Description": {
        "en": "The name of the task."
      },
      "AllowedPattern": "[a-zA-Z0-9-]{1,64}",
      "Required": true
    }
  },
  "Resources": {
    "DeliverTask": {
      "Type": "ALIYUN::ARMS::DeliverTask",
      "Properties": {
        "TargetList": {
          "Ref": "TargetList"
        },
        "TaskName": {
          "Ref": "TaskName"
        }
      }
    }
  },
  "Outputs": {
    "TaskId": {
      "Description": "The ID of the task.",
      "Value": {
        "Fn::GetAtt": [
          "DeliverTask",
          "TaskId"
        ]
      }
    }
  }
}