Scriptworker Readme
Scriptworker implements the TaskCluster worker model, then launches a pre-defined script.
This worker was designed for Releng processes that need specific, limited, and pre-defined capabilities.
Free software: MPL2 License
Usage
Create a config file. By default scriptworker will look in ./scriptworker.yaml, but this config path can be specified as the first and only commandline argument. There is an example config file, and all config items are specified in scriptworker.constants.DEFAULT_CONFIG.
Credentials can live in ./scriptworker.yaml, ./secrets.json, ~/.scriptworker.
Launch: scriptworker [config_path]
Testing
Without integration tests install tox, then
NO_CREDENTIALS_TESTS=1 uv run tox -e py311
Without any tests connecting to the net, then NO_TESTS_OVER_WIRE=1 uv run tox -e py311
With integration tests, first create a client in the Taskcluster UI with the scopes:
queue:cancel-task:test-dummy-scheduler/* queue:claim-work:test-dummy-provisioner/dummy-worker-* queue:create-task:lowest:test-dummy-provisioner/dummy-worker-* queue:define-task:test-dummy-provisioner/dummy-worker-* queue:get-artifact:SampleArtifacts/_/X.txt queue:scheduler-id:test-dummy-scheduler queue:schedule-task:test-dummy-scheduler/* queue:task-group-id:test-dummy-scheduler/* queue:worker-id:test-dummy-workers/dummy-worker-*
Then generate a no priviledge personal access token in Github for the scriptworker_github_token (to avoid rate limiting) and create a ./secrets.json or ~/.scriptworker that looks like:
{
"integration_credentials": {
"clientId": "...",
"accessToken": "...",
}
"scriptworker_github_token": "..."
}
then to run all tests: uv run tox
Metadata
Release files for scriptworker 63.5.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| scriptworker-63.5.0.tar.gz | 103.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| scriptworker-63.5.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 186.0 kB
Release files / scriptworker-63.5.0.tar.gz
| Download URL | scriptworker-63.5.0.tar.gz |
|---|---|
| Size | 103.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
dfbb2d1a0d9a87187b56e5ac2c5929f548c95b8112d6f88c0ffac66d024ab1cb
|
|
BLAKE2b-256 checksum How to use checksums |
762a811489dd2f205883a2712784cfed4ecd78ee98b1dd273d03af403b20926c
|
| 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 Sep 23, 2026.
Transparency logRelease files / scriptworker-63.5.0-py3-none-any.whl
| Download URL | scriptworker-63.5.0-py3-none-any.whl |
|---|---|
| Size | 82.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e26f14e679534f950d603f6e677bf7bce7dac73f8e8c6b3bd707c998844eea7c
|
|
BLAKE2b-256 checksum How to use checksums |
f92a7dacbbad8605267aad9a65e24ad553ce9b0e992307b0cfbc5e8cda384c0b
|
| 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 Sep 23, 2026.
Transparency log