From 2a7f910b97eb6e2a33945496d60d5887a192abf6 Mon Sep 17 00:00:00 2001 From: Marcel Weinberg Date: Sun, 12 Jan 2020 01:12:37 +0100 Subject: [PATCH 1/3] add examples workflow and metadata yaml for orquesta-ask-multiple-parameters --- .../orquesta-ask-multiple-parameters.yaml | 7 +++ .../orquesta-ask-multiple-parameters.yaml | 56 +++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 contrib/examples/actions/orquesta-ask-multiple-parameters.yaml create mode 100644 contrib/examples/actions/workflows/orquesta-ask-multiple-parameters.yaml diff --git a/contrib/examples/actions/orquesta-ask-multiple-parameters.yaml b/contrib/examples/actions/orquesta-ask-multiple-parameters.yaml new file mode 100644 index 0000000000..983484641a --- /dev/null +++ b/contrib/examples/actions/orquesta-ask-multiple-parameters.yaml @@ -0,0 +1,7 @@ +--- +name: orquestar_ask_multiple_parameters +description: A basic workflow that demonstrates inquiry with multiple parameters. +runner_type: "orquesta" +entry_point: "workflows/orquesta-ask-multiple-parameters.yaml" +enabled: true +parameters: {} diff --git a/contrib/examples/actions/workflows/orquesta-ask-multiple-parameters.yaml b/contrib/examples/actions/workflows/orquesta-ask-multiple-parameters.yaml new file mode 100644 index 0000000000..dad936da91 --- /dev/null +++ b/contrib/examples/actions/workflows/orquesta-ask-multiple-parameters.yaml @@ -0,0 +1,56 @@ +version: 1.0 + +description: A basic workflow that demonstrates inquiry with multiple parameters. + +tasks: + start: + action: core.echo message="Automation started." + next: + - when: <% succeeded() %> + do: get_approval + + get_approval: + action: core.ask + input: + schema: + type: object + properties: + approved: + type: boolean + description: "Continue?" + required: True + department_id: + type: number + description: "Your department ID:" + required: True + extra_output: + type: string + description: "Your message to echo next if you approve to continue:" + default: "None" + ttl: 60 + next: + - when: <% task(get_approval).result.response.extra_output != 'None' and task(get_approval).result.response.approved = true %> + publish: + - custom_output: <% task(get_approval).result.response.extra_output %> + - approver_department_id: <% task(get_approval).result.response.department_id %> + do: echo_extra_message + - when: <% task(get_approval).result.response.approved = true %> + publish: + - approver_department_id: <% task(get_approval).result.response.department_id %> + do: finish + - when: <% task(get_approval).result.response.approved = false %> + do: stop + + echo_extra_message: + action: core.echo message="Extra info <% ctx('custom_output') %>." + next: + - when: <% succeeded() %> + do: finish + + finish: + action: core.echo message="Approved by department <% ctx('approver_department_id') %>. Automation completed." + + stop: + action: core.echo message="Automation stopped." + next: + - do: fail From 370c8869bbdaa160feba1d660abebd335b693cca Mon Sep 17 00:00:00 2001 From: Marcel Weinberg Date: Tue, 14 Jan 2020 16:35:50 +0100 Subject: [PATCH 2/3] typo, removed the trailing r from orquestar --- contrib/examples/actions/orquesta-ask-multiple-parameters.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/examples/actions/orquesta-ask-multiple-parameters.yaml b/contrib/examples/actions/orquesta-ask-multiple-parameters.yaml index 983484641a..3280d7f016 100644 --- a/contrib/examples/actions/orquesta-ask-multiple-parameters.yaml +++ b/contrib/examples/actions/orquesta-ask-multiple-parameters.yaml @@ -1,5 +1,5 @@ --- -name: orquestar_ask_multiple_parameters +name: orquesta_ask_multiple_parameters description: A basic workflow that demonstrates inquiry with multiple parameters. runner_type: "orquesta" entry_point: "workflows/orquesta-ask-multiple-parameters.yaml" From 6dec3e86632c8860968f28804cec435f2053326d Mon Sep 17 00:00:00 2001 From: Marcel Weinberg Date: Fri, 17 Jan 2020 13:11:04 +0100 Subject: [PATCH 3/3] update when rules to avoid triggering multiple task transitions in parallel --- .../workflows/orquesta-ask-multiple-parameters.yaml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/contrib/examples/actions/workflows/orquesta-ask-multiple-parameters.yaml b/contrib/examples/actions/workflows/orquesta-ask-multiple-parameters.yaml index dad936da91..92cfd7ad08 100644 --- a/contrib/examples/actions/workflows/orquesta-ask-multiple-parameters.yaml +++ b/contrib/examples/actions/workflows/orquesta-ask-multiple-parameters.yaml @@ -26,15 +26,14 @@ tasks: extra_output: type: string description: "Your message to echo next if you approve to continue:" - default: "None" ttl: 60 next: - - when: <% task(get_approval).result.response.extra_output != 'None' and task(get_approval).result.response.approved = true %> - publish: + - when: <% task(get_approval).result.response.containsKey("extra_output") and task(get_approval).result.response.approved = true %> + publish: - custom_output: <% task(get_approval).result.response.extra_output %> - approver_department_id: <% task(get_approval).result.response.department_id %> do: echo_extra_message - - when: <% task(get_approval).result.response.approved = true %> + - when: <% not task(get_approval).result.response.containsKey("extra_output") and task(get_approval).result.response.approved = true %> publish: - approver_department_id: <% task(get_approval).result.response.department_id %> do: finish