创建流程

本文介绍如何通过控制台和命令行工具创建Pass流程。

使用控制台创建流程

本文以使用代码段创作为例。

  1. 登录Serverless工作流控制台

  2. 在顶部菜单栏,选择地域。

  3. 流程页面,单击创建流程

  4. 创建流程页面,单击使用代码段创作,填写相关信息。

    create-flow2

    说明

    Hello World示例项目方式在创建流程时不支持修改流程定义

    • 流程名称:自定义填写流程的名称。长度在1~128字符之间,只能包含字母、数字、下划线(_)及短划线(-),且不能以短划线(-)开头。

    • (可选)流程备注:按需填写流程备注。

    • 流程定义:通过可视化流程辅助您编写流程定义。

    您需要将流程定义的YAML内容修改为以下内容。

    version: v1
    type: flow
    steps:
       - type: pass
         name: pass1  

    参数说明如下。

    参数

    描述

    version

    流程的版本,目前版本仅支持v1

    type

    表示流程类型,默认参数:flow

    steps

    定义了流程的步骤。

    type

    pass表示传递步骤。更多信息,请参见基本介绍

    name

    步骤的名称,可自定义步骤名称。

  5. 单击下一步

  6. 配置流程角色

    说明

    当您的流程需要调用其他云服务例如函数计算,您可以通过配置流程角色快速授权Serverless工作流调用函数计算的权限,由于本示例流程没有访问其他云服务,您可以不填写流程角色。更多信息,请参见执行角色

    • 如果您已成功创建RAM角色,您可以直接选择现有的RAM角色

    • 如果您初次使用Serverless工作流,您可以通过以下步骤创建RAM角色。

      1. 配置流程角色区域,单击为我创建RAM角色,设置角色名称

      2. 系统权限下拉框中,选择AliyunFCInvocationAccess,然后单击创建角色create_flow_step2

      3. 角色快捷创建页面,单击同意授权create_flow_step3

  7. 创建流程页面,单击创建流程

    成功创建该流程后,页面显示如下。

    image

使用命令行工具创建流程

在使用前您需要安装和配置阿里云命令行工具CLI。更多信息,请参见安装指南配置指南

# 使用帮助
aliyun fnf CreateFlow help

预期输出:

阿里云CLI命令行工具 3.0.57

Product: fnf (FunctionFlow)
Link:    https://xxxxx.CreateFlow.html

Parameters:
  --Definition              String  Required
  --Description             String  Required
  --Name                    String  Required
  --Type                    String  Required
  --ExternalStorageLocation String  Optional
  --RequestId               String  Optional
  --RoleArn                 String  Optional

您可以使用CreateFlow命令创建一个流程。

  1. 准备工作。为叙述方便,您可以将下面的流程定义存放在当前路径下的一个文件中。

    version: v1
    type: flow
    steps:
      - type: pass
        name: pass1  
  2. 创建流程。

    重要

    您需要将下面的RoleArn替换成您的流程角色。关于流程角色的详细信息,请参见流程角色介绍

    aliyun fnf CreateFlow --Description "demo" --Type FDL --RoleArn acs:ram::xxx:xxx --Name cli_guide_1 --Definition "$(<./flow.yaml)"

    预期输出:

    # 命令执行结果
    {
      "Name": "cli_guide_1",
      "Description": "demo",
      "Definition": "version: v1\ntype: flow\nsteps:\n  - type: pass\n    name: pass1  ",
      "Id": "47ced55d-590b-482a-975f-915ac2365ad6",
      "Type": "FDL",
      "RoleArn": "acs:ram::xxx:xxx",
      "CreatedTime": "2024-06-24T02:31:43.359Z",
      "LastModifiedTime": "2024-06-24T02:31:43.359Z",
      "ExecutionMode": "Standard",
      "RequestId": "88aa74ff-1716-7680-965e-e0d893739bb0"
    }