Skip to content

Running task with dependencies in watch mode stopped watching for sources of dependencies #2199

Closed
@SheGe

Description

@SheGe

Description

I upgraded Task from version 3.42.1 to 3.43.2, and since then, the feature that watches for changes in sources within tasks provided via dependencies has stopped working. In version 3.42.1, I was able to execute a single task that had dependencies (or referenced other tasks) with sources definitions anywhere in the execution chain of a complex DAG, and the watch mode functioned correctly.

Expected behavior for the given example Taskfile definition:
The helm:package task should be restarted whenever any of its defined sources change, even when triggered through:

  • task up:watch
  • task up --watch

Version

3.43.2

Operating system

Debian 12

Experiments Enabled

No response

Example Taskfile

version: '3'

set: [pipefail]
shopt: [globstar]

interval: 1s

tasks:
  helm:package:
    sources:
      - charts/my-chart/templates/*.yaml
      - charts/my-chart/*.yaml
    cmds:
      - mkdir -p "${DIST_DIR}"
      - helm lint ${CHART_DIR}
      - |
        VERSION=$(yq eval '.version' ${CHART_DIR}/Chart.yaml)
        CHART_NAME=$(yq eval '.name' ${CHART_DIR}/Chart.yaml)
        rm -f ${DIST_DIR}/${CHART_NAME}-${VERSION}.tgz
        helm package ${CHART_DIR} --version ${VERSION} -d "${DIST_DIR}"
    env:
      DIST_DIR: "{{ .ROOT_DIR }}/dist"
      CHART_DIR: "{{ .ROOT_DIR }}/charts/my-chart"

  up:watch:
    watch: true
    silent: true
    deps:
      - task: helm:package
    cmds:
      - echo "🚀 System primed and ready! Keep this bad boy running and let's rock! 🤘"

  up:
    deps:
      - task: helm:package

Metadata

Metadata

Assignees

Labels

area: watcherChanges related to the Taskfile watcher.

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions