Skip to content

Bug 2038707 - Ensure 'complete' kind never causes dependencies to get…#873

Draft
ahal wants to merge 1 commit into
mozilla:enterprise-mainfrom
ahal:ahal/push-tmmwxvwntntm
Draft

Bug 2038707 - Ensure 'complete' kind never causes dependencies to get…#873
ahal wants to merge 1 commit into
mozilla:enterprise-mainfrom
ahal:ahal/push-tmmwxvwntntm

Conversation

@ahal

@ahal ahal commented May 11, 2026

Copy link
Copy Markdown
Member

… pulled in

Copilot AI review requested due to automatic review settings May 11, 2026 16:41

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a transform intended to prevent the complete kind from forcing its dependent tasks to be pulled into the graph by converting normal dependencies into if-dependencies.

Changes:

  • Insert gecko_taskgraph.transforms.convert_if_deps into the complete kind transform chain.
  • Introduce a new transform (convert_if_deps.py) to convert dependencies into if-dependencies when a per-task flag is enabled.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.

File Description
taskcluster/kinds/complete/kind.yml Adds the new transform into the complete kind’s transform pipeline.
taskcluster/gecko_taskgraph/transforms/convert_if_deps.py Implements a new transform to convert dependencies to if-dependencies behind a convert-if-deps flag.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +17 to +19
if_deps = set(task.setdefault("if-dependencies", set()))
if_deps.update(deps.values())
task["if-dependencies"] = if_deps
for task in tasks:
if (deps := task.get("dependencies")) and task.pop("convert-if-deps", False):
if_deps = set(task.setdefault("if-dependencies", set()))
if_deps.update(deps.values())
If `convert-if-deps` is True, converts all dependencies to if-dependencies.
"""
for task in tasks:
if (deps := task.get("dependencies")) and task.pop("convert-if-deps", False):
Comment on lines 7 to 11
transforms:
- taskgraph.transforms.task_context
- taskgraph.transforms.from_deps
- gecko_taskgraph.transforms.convert_if_deps
- gecko_taskgraph.transforms.task
Comment on lines +17 to +18
if_deps = set(task.setdefault("if-dependencies", set()))
if_deps.update(deps.values())
@ahal

ahal commented May 11, 2026

Copy link
Copy Markdown
Member Author

Unfortunately I realized if-dependencies won't help us until taskcluster/taskgraph#710 is fixed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants