SDK - Compiler - Quoting the predicate operands (#2043)

Fixes https://github.com/kubeflow/pipelines/issues/1950
This commit is contained in:
Alexey Volkov 2019-09-06 17:05:21 -07:00 committed by Kubernetes Prow Robot
parent 2a3dd327db
commit d83601d19a
4 changed files with 8 additions and 5 deletions

View File

@ -450,6 +450,9 @@ class Compiler(object):
condition = sub_group.condition
operand1_value = self._resolve_value_or_reference(condition.operand1, subgroup_inputs)
operand2_value = self._resolve_value_or_reference(condition.operand2, subgroup_inputs)
if condition.operator in ['==', '!=']:
operand1_value = '"' + operand1_value + '"'
operand2_value = '"' + operand2_value + '"'
task['when'] = '{} {} {}'.format(operand1_value, condition.operator, operand2_value)
# Generate dependencies section for this task.

View File

@ -35,7 +35,7 @@ spec:
- flip-again
name: condition-2
template: condition-2
when: '{{tasks.flip-again.outputs.parameters.flip-again-output}} == tails'
when: '"{{tasks.flip-again.outputs.parameters.flip-again-output}}" == "tails"'
- arguments:
parameters:
- name: flip-output
@ -119,7 +119,7 @@ spec:
- flip
name: condition-1
template: condition-1
when: '{{tasks.flip.outputs.parameters.flip-output}} == heads'
when: '"{{tasks.flip.outputs.parameters.flip-output}}" == "heads"'
- arguments:
parameters:
- name: flip-again-output
@ -131,7 +131,7 @@ spec:
- flip
name: condition-3
template: condition-3
when: '{{tasks.flip.outputs.parameters.flip-output}} == tails'
when: '"{{tasks.flip.outputs.parameters.flip-output}}" == "tails"'
- name: flip
template: flip
name: pipeline-flip-coin

View File

@ -75,7 +75,7 @@ spec:
- flip-3
name: condition-2
template: condition-2
when: '{{tasks.flip-3.outputs.parameters.flip-3-output}} == heads'
when: '"{{tasks.flip-3.outputs.parameters.flip-3-output}}" == "heads"'
- dependencies:
- print
name: flip-3

View File

@ -97,7 +97,7 @@ spec:
value: '{{inputs.parameters.maxval}}'
name: condition-2
template: condition-2
when: '{{inputs.parameters.flip-output}} == heads'
when: '"{{inputs.parameters.flip-output}}" == "heads"'
inputs:
parameters:
- name: flip-output