aws step函数的python dsl

steppygraph的Python项目详细描述


steppy graph-用于step函数的alpha质量dsl

示例用法:

s = StateMachine()
    res = Resource(name="foores", type=ResourceType.LAMBDA)
    s.next(Task(resource=res, name="Kermit", comment='Foo'))
    s.next(Wait(name="Waiting time", comment='Foo', seconds=2))
    s.next(Pass(name="Pass the buck"))
    s.next(Task(resource=res, name="Miss Piggy", comment='Foo'))
    s.build()

    print(s.to_json())

应产生类似于:

{
    "StartAt": "Kermit",
    "States": {
        "Kermit": {
            "Comment": "Foo",
            "End": false,
            "Next": "Waiting time",
            "Resource": "arn:aws:lambda:::function:foores",
            "TimeoutSeconds": 600,
            "Type": "Task"
        },
        "Miss Piggy": {
            "Comment": "Foo",
            "End": true,
            "Resource": "arn:aws:lambda:::function:foores",
            "TimeoutSeconds": 600,
            "Type": "Task"
        },
        "Pass the buck": {
            "Comment": "",
            "End": false,
            "Next": "Miss Piggy",
            "Type": "Pass"
        },
        "Waiting time": {
            "Comment": "Foo",
            "End": false,
            "Next": "Pass the buck",
            "Seconds": 2,
            "Type": "Wait"
        }
    },
    "TimeoutSeconds": 600
}

注意-通过statemachine中的next()方法添加的状态总是“自动连接的”,即它们有一个布尔值 将自动将它们连接到图形中的下一个状态的标志集。对要添加的状态使用“添加状态” 添加而不自动连接下一个属性。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在未知属性上的PUT和POST失败会引发不同的行为   java无法使GWTRPC正常工作   java如何在安卓中更改一个特定视图的主题?   机器学习为什么改变了java中等式的两面?   java继承和重定向标准输出   java为什么Clojure中嵌套循环/重复速度慢?   使用JavaParser解析Java代码并查找父节点的语句类型   java读取类的方法并在arraylist中存储Web服务的路径名   java模板聚合匹配和投影一个没有id的字段   java为什么给定数组不返回false   java如何链接JLabel和JSpinner以调整大小   在java中,当过滤器只返回一个对象时,如何使用流和过滤器将值填充到对象中   java为什么使用getInstance   如何得到我的。运行java命令的bat文件