{ "ownerApp" : "Cloud Computation Platform", "name" : "ccp_build_runtime", "createBy" : "Marco Lettere", "description": "Build a runtime to be used in the gCube Cloud Computation Platform", "version" : 10, "ownerEmail" : "m.lettere@gmail.com", "inputParameters" : ["runtime", "runtime-descriptor-endpoint", "runtime-status-endpoint"], "tasks" : [ { "name": "LAMBDA_TASK", "taskReferenceName": "init", "type": "LAMBDA", "inputParameters": { "descriptor_url" : "${workflow.input.runtime-descriptor-endpoint}", "scriptExpression": "1" } }, { "name" : "pyrest", "taskReferenceName" : "update_status_building", "type" : "SIMPLE", "inputParameters" : { "url" : "${workflow.input.runtime-status-endpoint}", "method" : "put", "body" : { "status" : "BUILDING"} } }, { "name" : "pyexec", "taskReferenceName" : "fetch_descriptor_and_build", "type" : "SIMPLE", "inputParameters" : { "operation" : "Shell", "commands" : [ { "line" : "curl ${init.input.descriptor_url} -o /tmp/runtime${workflow.input.runtime}.json"}, { "line" : "sudo packer build /tmp/runtime${workflow.input.runtime}.json"} ] } }, { "name": "decide_task", "taskReferenceName": "decide1", "inputParameters": { "case_value_param": "${fetch_descriptor_and_build.output.status}" }, "type": "DECISION", "caseValueParam": "case_value_param", "defaultCase" : [ { "name" : "pyrest", "taskReferenceName" : "update_status_ready", "type" : "SIMPLE", "inputParameters" : { "url" : "${workflow.input.runtime-status-endpoint}", "method" : "put", "body" : { "status" : "NONE"} } } ], "decisionCases": { "COMPLETED": [ { "name" : "pyrest", "taskReferenceName" : "update_status_ready", "type" : "SIMPLE", "inputParameters" : { "url" : "${workflow.input.runtime-status-endpoint}", "method" : "put", "body" : { "status" : "READY"} } } ], "FAILED": [ { "name" : "pyrest", "taskReferenceName" : "update_status_failed", "type" : "SIMPLE", "inputParameters" : { "url" : "${workflow.input.runtime-status-endpoint}", "method" : "put", "body" : { "status" : "FAILED"} } } ] } } ] }