TaskCluster Script Worker
Project description
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, or in environment variables: TASKCLUSTER_ACCESS_TOKEN, TASKCLUSTER_CLIENT_ID, and TASKCLUSTER_CERTIFICATE.
Launch: scriptworker [config_path]
Testing
Note: GPG tests require gpg 2.0.x!
Without integration tests,
NO_TESTS_OVER_WIRE=1 python setup.py test
With integration tests, first create a client with the assume:project:taskcluster:worker-test-scopes scope.
Then create a ./secrets.json or ~/.scriptworker that looks like:
{ "integration_credentials": { "clientId": "...", "accessToken": "...", "certificate": "..." } }
(certificate is only specified if using temp creds)
then
python setup.py test
It’s also possible to create a ./secrets.json as above, then:
cp docker/Dockerfile.test Dockerfile docker build -t scriptworker-test . && docker run scriptworker-test tox
GPG Homedir testing
Sometimes it’s nice to be able to test things like rebuild_gpg_homedirs. To do so:
cp docker/Dockerfile.gnupg Dockerfile docker build -t scriptworker-gpg . && docker run -i scriptworker-gpg bash -il # in the docker shell, rebuild_gpg_homedirs scriptworker.yaml
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.