Please notice that the values printed out in different funcs in different layer, they will inherit and override the vars from parent block func level
vars:
a: global_aaa
b: global_bbb
c: global_ccc
tasks:
- name: task
task:
- func: block
desc: show example the route goes to call goelse for the condition of not if condition
succeeds
vars:
a: local_aaa
b: local_bbb
dvars:
- name: da
value: local_da
- name: db
value: local_db
do:
- func: shell
do:
- echo "shell step1"
- echo "shell step2"
- func: cmd
vars:
a: block_layer1_aaa
do:
- name: print
cmd: |
layer 1
up_runtime_task_layer_number: {{.up_runtime_task_layer_number}}
a: {{.a}}
b: {{.b}}
c: {{.c}}
da: {{.da}}
db: {{.db}}
- func: shell
do:
- echo "shell step3"
- echo "shell step4"
- func: block
desc: test embeded 2nd layer of block
vars:
a: local_block_layer2_aaa
b: local_block_layer2_bbb
dvars:
- name: da
value: local_da_layer2
- name: db
value: local_db_layer2
do:
- func: cmd
vars:
a: block_layer2_aaa
do:
- name: print
cmd: |
layer 2
up_runtime_task_layer_number: {{.up_runtime_task_layer_number}}
a: {{.a}}
b: {{.b}}
c: {{.c}}
da: {{.da}}
db: {{.db}}
- func: shell
do:
- echo "shell step5"
- echo "shell step6"
loading [Config]: ./tests/functests/upconfig.yml
Main config:
Version -> 1.0.0
RefDir -> ./tests/functests
WorkDir -> cwd
AbsWorkDir -> /up_project/up
TaskFile -> c0129
Verbose -> vvv
ModuleName -> self
ShellType -> /bin/sh
MaxCallLayers -> 8
Timeout -> 3600000
MaxModuelCallLayers -> 256
EntryTask -> task
ModRepoUsernameRef ->
ModRepoPasswordRef ->
work dir: /up_project/up
-exec task: task
loading [Task]: ./tests/functests/c0129
module: [self], instance id: [dev], exec profile: []
profile - envVars:
(*core.Cache)({
})
Task1: [task ==> task: ]
-Step1: [: show example the route goes to call goelse for the condition of not if condition succeeds ]
self: final context exec vars:
(*core.Cache)({
"da": "local_da",
"a": "local_aaa",
"b": "local_bbb",
"c": "global_ccc",
"up_runtime_task_layer_number": 0,
"db": "local_db"
})
-Step1:
self: final context exec vars:
(*core.Cache)({
"a": "local_aaa",
"b": "local_bbb",
"c": "global_ccc",
"up_runtime_task_layer_number": 0,
"db": "local_db",
"da": "local_da"
})
cmd( 1):
echo "shell step1"
-
shell step1
-
.. ok
cmd( 2):
echo "shell step2"
-
shell step2
-
.. ok
. ok
-Step2:
self: final context exec vars:
(*core.Cache)({
"da": "local_da",
"a": "block_layer1_aaa",
"b": "local_bbb",
"c": "global_ccc",
"last_result": (*utils.ExecResult)({
Cmd: "echo \"shell step2\"",
Code: 0,
Output: "shell step2",
ErrMsg: ""
}),
"up_runtime_task_layer_number": 0,
"db": "local_db"
})
~SubStep1: [print: ]
layer 1
up_runtime_task_layer_number: 0
a: block_layer1_aaa
b: local_bbb
c: global_ccc
da: local_da
db: local_db
-Step3:
self: final context exec vars:
(*core.Cache)({
"up_runtime_task_layer_number": 0,
"db": "local_db",
"da": "local_da",
"a": "local_aaa",
"b": "local_bbb",
"c": "global_ccc",
"last_result": (*utils.ExecResult)({
Cmd: "echo \"shell step2\"",
Code: 0,
Output: "shell step2",
ErrMsg: ""
})
})
cmd( 1):
echo "shell step3"
-
shell step3
-
.. ok
cmd( 2):
echo "shell step4"
-
shell step4
-
.. ok
. ok
-Step4: [: test embeded 2nd layer of block ]
self: final context exec vars:
(*core.Cache)({
"a": "local_block_layer2_aaa",
"b": "local_block_layer2_bbb",
"up_runtime_task_layer_number": 0,
"da": "local_da_layer2",
"db": "local_db_layer2",
"c": "global_ccc",
"last_result": (*utils.ExecResult)({
Cmd: "echo \"shell step4\"",
Code: 0,
Output: "shell step4",
ErrMsg: ""
})
})
-Step1:
self: final context exec vars:
(*core.Cache)({
"db": "local_db_layer2",
"a": "block_layer2_aaa",
"b": "local_block_layer2_bbb",
"c": "global_ccc",
"up_runtime_task_layer_number": 0,
"da": "local_da_layer2"
})
~SubStep1: [print: ]
layer 2
up_runtime_task_layer_number: 0
a: block_layer2_aaa
b: local_block_layer2_bbb
c: global_ccc
da: local_da_layer2
db: local_db_layer2
-Step5:
self: final context exec vars:
(*core.Cache)({
"b": "local_bbb",
"c": "global_ccc",
"up_runtime_task_layer_number": 0,
"db": "local_db",
"da": "local_da",
"a": "local_aaa"
})
cmd( 1):
echo "shell step5"
-
shell step5
-
.. ok
cmd( 2):
echo "shell step6"
-
shell step6
-
.. ok
. ok