diff --git a/task_test.go b/task_test.go index 5ac47c25..092c23e7 100644 --- a/task_test.go +++ b/task_test.go @@ -1964,10 +1964,6 @@ task: [included3:task1] echo "VAR_1 is included-default-var1" VAR_1 is included-default-var1 task: [included3:task1] echo "VAR_2 is included-default-var2" VAR_2 is included-default-var2 -task: [included4:task1] echo "VAR_1 is included4-var1" -VAR_1 is included4-var1 -task: [included4:task1] echo "VAR_2 is included-default-var2" -VAR_2 is included-default-var2 `) require.NoError(t, e.Run(context.Background(), &task.Call{Task: "task1"})) t.Log(buff.String()) diff --git a/taskfile/reader.go b/taskfile/reader.go index edcf54e0..32308076 100644 --- a/taskfile/reader.go +++ b/taskfile/reader.go @@ -249,7 +249,7 @@ func (r *Reader) include(ctx context.Context, node Node) error { Aliases: include.Aliases, AdvancedImport: include.AdvancedImport, Excludes: include.Excludes, - Vars: templater.ReplaceVars(include.Vars, cache), + Vars: include.Vars, } if err := cache.Err(); err != nil { return err diff --git a/testdata/include_with_vars/Taskfile.yml b/testdata/include_with_vars/Taskfile.yml index 0f5e0d88..5ded3e33 100644 --- a/testdata/include_with_vars/Taskfile.yml +++ b/testdata/include_with_vars/Taskfile.yml @@ -1,23 +1,16 @@ version: "3" -vars: - VAR_1: included4-var1 - includes: included1: - taskfile: include/Taskfile.include.yml + taskfile: include/Taskfile.include1.yml vars: VAR_1: included1-var1 included2: - taskfile: include/Taskfile.include.yml + taskfile: include/Taskfile.include2.yml vars: VAR_1: included2-var1 included3: - taskfile: include/Taskfile.include.yml - included4: - taskfile: include/Taskfile.include.yml - vars: - VAR_1: "{{.VAR_1}}" + taskfile: include/Taskfile.include3.yml tasks: task1: @@ -25,4 +18,3 @@ tasks: - task: included1:task1 - task: included2:task1 - task: included3:task1 - - task: included4:task1 diff --git a/testdata/include_with_vars/include/Taskfile.include.yml b/testdata/include_with_vars/include/Taskfile.include1.yml similarity index 100% rename from testdata/include_with_vars/include/Taskfile.include.yml rename to testdata/include_with_vars/include/Taskfile.include1.yml diff --git a/testdata/include_with_vars/include/Taskfile.include2.yml b/testdata/include_with_vars/include/Taskfile.include2.yml new file mode 100644 index 00000000..3bb7a68e --- /dev/null +++ b/testdata/include_with_vars/include/Taskfile.include2.yml @@ -0,0 +1,11 @@ +version: "3" + +vars: + VAR_1: '{{.VAR_1 | default "included-default-var1"}}' + VAR_2: '{{.VAR_2 | default "included-default-var2"}}' + +tasks: + task1: + cmds: + - echo "VAR_1 is {{.VAR_1}}" + - echo "VAR_2 is {{.VAR_2}}" diff --git a/testdata/include_with_vars/include/Taskfile.include3.yml b/testdata/include_with_vars/include/Taskfile.include3.yml new file mode 100644 index 00000000..3bb7a68e --- /dev/null +++ b/testdata/include_with_vars/include/Taskfile.include3.yml @@ -0,0 +1,11 @@ +version: "3" + +vars: + VAR_1: '{{.VAR_1 | default "included-default-var1"}}' + VAR_2: '{{.VAR_2 | default "included-default-var2"}}' + +tasks: + task1: + cmds: + - echo "VAR_1 is {{.VAR_1}}" + - echo "VAR_2 is {{.VAR_2}}"