All Products
Search
Document Center

Resource Orchestration Service:ALIYUN::DataWorks::Project

Last Updated:Aug 12, 2024

ALIYUN::DataWorks::Project is used to create a DataWorks workspace.

Syntax

{
  "Type": "ALIYUN::DataWorks::Project",
  "Properties": {
    "ProjectIdentifier": String,
    "DisableDevelopment": Boolean,
    "IsAllowDownload": Boolean,
    "ProjectName": String,
    "ProjectDescription": String,
    "ProjectMode": Integer,
    "ResourceGroupId": String,
    "Tags": List
  }
}

Properties

Property

Type

Required

Editable

Description

Constraint

ProjectIdentifier

String

Yes

No

The name of the workspace.

The name can contain only letters, digits, and underscores (_). It must start with a letter or a digit.

DisableDevelopment

Boolean

No

No

Specifies whether to disable the development engineer role.

Valid values:

  • false (default): does not disable the development engineer role.

  • true: disables the development engineer role.

IsAllowDownload

Boolean

No

No

Specifies whether to allow query result download from DataStudio.

Valid values:

  • 1 (default): allows query result download from DataStudio.

  • 0: does not allow query result download from DataStudio.

ProjectName

String

No

No

The display name of the workspace.

None

ProjectDescription

String

No

No

The description of the workspace.

None

ProjectMode

Integer

No

No

The mode of the workspace.

Valid values:

  • 2 (default): basic mode

  • 3: standard mode

ResourceGroupId

String

No

No

The ID of the resource group.

None

Tags

List

No

Yes

The tags that are added to the workspace.

For more information, see Tags properties.

Tags syntax

"Tags": [
  {
    "Value": String,
    "Key": String
  }
]

Tags properties

Property

Type

Required

Editable

Description

Constraint

Key

String

Yes

No

The tag key.

None

Value

String

No

No

The tag value.

None

Return values

Fn::GetAtt

  • ProjectIdentifier: the name of the workspace.

  • IsDefault: indicates whether the workspace is the default workspace.

  • SchedulerMaxRetryTimes: the default number of automatic reruns when errors occur.

  • ProtectedMode: indicates whether the workspace is protected.

  • ProjectId: the ID of the workspace.

  • TablePrivacyMode: the visibility permissions on the MaxCompute table.

  • EnvTypes: the environment information of the workspace.

  • ResidentArea: the type of the workspace.

  • SchedulerRetryInterval: the default time interval for automatic rerun when errors occur.

Examples

YAML format

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  ProjectIdentifier:
    Type: String
    Description:
      en: The name of the workspace. The name can contain letters, digits, and underscores (_) and must start with a letter or digit.
    AllowedPattern: ^[a-zA-Z][a-zA-Z0-9_]{2,27}$
    Required: true
    Default: test_project
Resources:
  Project:
    Type: ALIYUN::DataWorks::Project
    Properties:
      ProjectIdentifier:
        Ref: ProjectIdentifier
Outputs:
  ProjectIdentifier:
    Description: The name of the workspace. The name can contain letters, digits, and underscores (_) and must start with a letter or digit.
    Value:
      Fn::GetAtt:
        - Project
        - ProjectIdentifier
  IsDefault:
    Description: |-
      Indicates whether the workspace is the default workspace. Valid values:
      1: The workspace is the default workspace.
      0: The workspace is not the default workspace.
    Value:
      Fn::GetAtt:
        - Project
        - IsDefault
  SchedulerMaxRetryTimes:
    Description: The default maximum number of automatic reruns that are allowed after an error occurs.
    Value:
      Fn::GetAtt:
        - Project
        - SchedulerMaxRetryTimes
  ProtectedMode:
    Description: |-
      Indicates whether the workspace protection feature is enabled. Valid values:
      1: The workspace protection feature is enabled.
      0: The workspace protection feature is disabled.
    Value:
      Fn::GetAtt:
        - Project
        - ProtectedMode
  ProjectId:
    Description: The ID of the workspace.
    Value:
      Fn::GetAtt:
        - Project
        - ProjectId
  TablePrivacyMode:
    Description: |-
      Indicates whether the MaxCompute tables in the workspace are visible to the users within the tenant. Valid values:
      0: The MaxCompute tables are invisible to the users within a tenant.
      1: The MaxCompute tables are visible to the users within a tenant.
    Value:
      Fn::GetAtt:
        - Project
        - TablePrivacyMode
  EnvTypes:
    Description: |-
      The environment of the workspace. Valid values: PROD and DEV.
      The value PROD indicates the production environment. Workspaces in basic mode provide only the production environment.
      The value DEV indicates the development environment. Workspaces in standard mode provide both the development environment and the production environment.
    Value:
      Fn::GetAtt:
        - Project
        - EnvTypes
  ResidentArea:
    Description: 'The type of the workspace. Valid values: private and swap.'
    Value:
      Fn::GetAtt:
        - Project
        - ResidentArea
  SchedulerRetryInterval:
    Description: 'The interval between automatic reruns after an error occurs. Unit: milliseconds. The maximum interval is 30 minutes. You must pay attention to the conversion between units.'
    Value:
      Fn::GetAtt:
        - Project
        - SchedulerRetryInterval

JSON format

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "ProjectIdentifier": {
      "Type": "String",
      "Description": {
        "en": "The name of the workspace. The name can contain letters, digits, and underscores (_) and must start with a letter or digit."
      },
      "AllowedPattern": "^[a-zA-Z][a-zA-Z0-9_]{2,27}$",
      "Required": true,
      "Default": "test_project"
    }
  },
  "Resources": {
    "Project": {
      "Type": "ALIYUN::DataWorks::Project",
      "Properties": {
        "ProjectIdentifier": {
          "Ref": "ProjectIdentifier"
        }
      }
    }
  },
  "Outputs": {
    "ProjectIdentifier": {
      "Description": "The name of the workspace. The name can contain letters, digits, and underscores (_) and must start with a letter or digit.",
      "Value": {
        "Fn::GetAtt": [
          "Project",
          "ProjectIdentifier"
        ]
      }
    },
    "IsDefault": {
      "Description": "Indicates whether the workspace is the default workspace. Valid values:\n1: The workspace is the default workspace.\n0: The workspace is not the default workspace.",
      "Value": {
        "Fn::GetAtt": [
          "Project",
          "IsDefault"
        ]
      }
    },
    "SchedulerMaxRetryTimes": {
      "Description": "The default maximum number of automatic reruns that are allowed after an error occurs.",
      "Value": {
        "Fn::GetAtt": [
          "Project",
          "SchedulerMaxRetryTimes"
        ]
      }
    },
    "ProtectedMode": {
      "Description": "Indicates whether the workspace protection feature is enabled. Valid values:\n1: The workspace protection feature is enabled.\n0: The workspace protection feature is disabled.",
      "Value": {
        "Fn::GetAtt": [
          "Project",
          "ProtectedMode"
        ]
      }
    },
    "ProjectId": {
      "Description": "The ID of the workspace.",
      "Value": {
        "Fn::GetAtt": [
          "Project",
          "ProjectId"
        ]
      }
    },
    "TablePrivacyMode": {
      "Description": "Indicates whether the MaxCompute tables in the workspace are visible to the users within the tenant. Valid values:\n0: The MaxCompute tables are invisible to the users within a tenant.\n1: The MaxCompute tables are visible to the users within a tenant.",
      "Value": {
        "Fn::GetAtt": [
          "Project",
          "TablePrivacyMode"
        ]
      }
    },
    "EnvTypes": {
      "Description": "The environment of the workspace. Valid values: PROD and DEV.\nThe value PROD indicates the production environment. Workspaces in basic mode provide only the production environment.\nThe value DEV indicates the development environment. Workspaces in standard mode provide both the development environment and the production environment.",
      "Value": {
        "Fn::GetAtt": [
          "Project",
          "EnvTypes"
        ]
      }
    },
    "ResidentArea": {
      "Description": "The type of the workspace. Valid values: private and swap.",
      "Value": {
        "Fn::GetAtt": [
          "Project",
          "ResidentArea"
        ]
      }
    },
    "SchedulerRetryInterval": {
      "Description": "The interval between automatic reruns after an error occurs. Unit: milliseconds. The maximum interval is 30 minutes. You must pay attention to the conversion between units.",
      "Value": {
        "Fn::GetAtt": [
          "Project",
          "SchedulerRetryInterval"
        ]
      }
    }
  }
}