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.7.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.7.0
File Size Uploaded Provenance Actions
taskcluster_taskgraph-24.7.0.tar.gz 736.9 kB With provenance Details for taskcluster_taskgraph-24.7.0.tar.gz

Built distribution (wheel)

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

Total release size: 960.6 kB

Release files / taskcluster_taskgraph-24.7.0.tar.gz

Download URL taskcluster_taskgraph-24.7.0.tar.gz
Size 736.9 kB
Tags Source
SHA-256 checksum
How to use checksums
5664e1dc53266384b627d88699cc859e7054534598d4a684b063207c3a3d62ad
BLAKE2b-256 checksum
How to use checksums
8ad490a261f8153306861f9b818ffdb38fefa7da2e402f6ef5748e7513e62231
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 6, 2026.

Transparency log

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

Download URL taskcluster_taskgraph-24.7.0-py3-none-any.whl
Size 223.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c436bf5c467206dbe071fd056224a55273289c911c19dc4b0bc53902adad1132
BLAKE2b-256 checksum
How to use checksums
2d4e083c949410be93034376642419fd2d6f000fd703863bbb6b4111a00cb787
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 6, 2026.

Transparency log

Security for taskcluster-taskgraph 24.7.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.7.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 Nov 6, 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.7.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