Skip to content

Support YAML anchors in task cmds object. #2634

@trulede

Description

@trulede

var cmds []*Cmd

Support the decoding of YAML anchors in task cmds, similar to #2551.

Example taskfile:

version: '3'

silent: true

vars:
  FOO_VAR: tf_var_foo

env:
  FOO_ENVAR: tf_envar_foo 

tasks:
  default:
    cmds:
      - task: override
  print:
    internal: true
    cmds: &print_cmds
      - cmd: echo "{{.TASK}}"
      - cmd: echo "  var FOO_VAR = {{.FOO_VAR}}"
      - cmd: echo "  var FOO_ENVAR = {{.FOO_ENVAR}}"
      - cmd: echo "  env FOO_ENVAR = $FOO_ENVAR"
  override:
    vars:
      FOO_VAR: t_var_foo
    env:
      FOO_ENVAR: t_envar_foo
    cmds: 
      <<: *print_cmds

General idea is to support DRY principle for sequences of commands.

Metadata

Metadata

Assignees

Labels

area: parserChanges related to parsing Taskfiles.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions