Skip to main content
Task Status Code Coverage CodSpeed Performance Pypi Version Documentation Status License

Taskgraph

Taskgraph is a Python library to generate graphs of tasks for the Taskcluster CI service. It is the recommended approach for configuring tasks once your project outgrows a single .taskcluster.yml file and is what powers the over 30,000 tasks and counting that make up Firefox’s CI.

For more information and usage instructions, see the docs.

How It Works

Taskgraph leverages the fact that Taskcluster is a generic task execution platform. This means that tasks can be scheduled via its comprehensive API, and aren’t limited to being triggered in response to supported events.

Taskgraph leverages this execution platform to allow CI systems to scale to any size or complexity.

  1. A decision task is created via Taskcluster’s normal .taskcluster.yml file. This task invokes taskgraph.

  2. Taskgraph evaluates a series of yaml based task definitions (similar to those other CI offerings provide).

  3. Taskgraph applies transforms on top of these task definitions. Transforms are Python functions that can programmatically alter or even clone a task definition.

  4. Taskgraph applies some optional optimization logic to remove unnecessary tasks.

  5. Taskgraph submits the resulting task graph to Taskcluster via its API.

Taskgraph’s combination of declarative task configuration combined with programmatic alteration are what allow it to support CI systems of any scale. Taskgraph is the library that powers the 30,000+ tasks making up Firefox’s CI.

Installation

Taskgraph supports Python 3.8 and up, and can be installed from Pypi:

pip install taskcluster-taskgraph

Alternatively, the repo can be cloned and installed directly:

git clone https://github.com/taskcluster/taskgraph
cd taskgraph
pip install .

In both cases, it’s recommended to use a Python virtual environment.

Get Involved

If you’d like to get involved, please see our contributing docs!

Metadata

Release files for taskcluster-taskgraph 24.6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for taskcluster-taskgraph 24.6.0
File Size Uploaded Provenance Actions
taskcluster_taskgraph-24.6.0.tar.gz 691.5 kB With provenance Details for taskcluster_taskgraph-24.6.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for taskcluster-taskgraph 24.6.0
File Interpreter ABI Platform Actions
taskcluster_taskgraph-24.6.0-py3-none-any.whl Python 3 none any Details for taskcluster_taskgraph-24.6.0-py3-none-any.whl

Total release size: 914.5 kB

Release files / taskcluster_taskgraph-24.6.0.tar.gz

Download URL taskcluster_taskgraph-24.6.0.tar.gz
Size 691.5 kB
Tags Source
SHA-256 checksum
How to use checksums
e3545685fdd098ef3c32696e5180d34200dbf5e8e409bdf94107a53837414581
BLAKE2b-256 checksum
How to use checksums
8839d7d4279bf209325de45fb2da3df4625b0ec62715cf4e84b47e72390e4073
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Release files / taskcluster_taskgraph-24.6.0-py3-none-any.whl

Download URL taskcluster_taskgraph-24.6.0-py3-none-any.whl
Size 223.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
596a9ab202165d4e7a85603ff6543288f6fbb589e8a11630e3f72f43e7c6318d
BLAKE2b-256 checksum
How to use checksums
cd1216e89f4aed9804c536684e46739d3ad07c67196ba55ac0b69643b1fde4ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

Security for taskcluster-taskgraph 24.6.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for taskcluster_taskgraph-24.6.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 30, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

24.6.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page