Skip to main content

Taskcluster Utilities

Project description

https://travis-ci.org/askeing/taskcluster-util-python.svg

Python Taskcluster Utilities.

Installation

To install taskcluster_util, simply:

$ pip install -U taskcluster_util

Tools Usages

Temporary Credentials

You can get your temporary credentials from https://auth.taskcluster.net/ (using Persona with LDAP account).

The temporary credentials will remain valid for 31 days.

tc_credentials.json

You can put the credentials into tc_credentials.json file under your home folder.

$ <YOUR_EDITOR> ~/tc_credentials.json

The file format will be:

{
        "clientId": "<YOUR_CLIENTID>",
        "accessToken": "<YOUR_ACCESSTOKEN>",
        "certificate": <YOUR_CERTIFICATE>
}

Here’s a simple example:

{
        "clientId": "foo-XXX",
        "accessToken": "hello-world-XXX",
        "certificate": {"version":1,"scopes":["*"],"start":1,"expiry":9,"seed":"hello","signature":"world="}
}

taskcluster_download

Download artifacts from command line.

usage: taskcluster_download [-h] [--credentials CREDENTIALS]
                            (-n NAMESPACE | -t TASK_ID) [-a ARITFACT_NAME]
                            [-d DEST_DIR] [-v]

The simple download tool for Taskcluster.

optional arguments:
  -h, --help            show this help message and exit
  --credentials CREDENTIALS
                        The credential JSON file
                        (default: <YOUR_HOME>/tc_credentials.json)
  -n NAMESPACE, --namespace NAMESPACE
                        The namespace of task
  -t TASK_ID, --taskid TASK_ID
                        The taskId of task
  -v, --verbose         Turn on verbose output, with all the debug logger.

Download Artifact:
  The artifact name and dest folder

  -a ARITFACT_NAME, --artifact ARITFACT_NAME
                        The artifact name on Taskcluster
  -d DEST_DIR, --dest-dir DEST_DIR
                        The dest folder (default: current working folder)

The tc_credentials.json Template:
    {
        "clientId": "",
        "accessToken": "",
        "certificate": {
            "version":1,
            "scopes":["*"],
            "start":xxx,
            "expiry":xxx,
            "seed":"xxx",
            "signature":"xxx"
        }
    }

taskcluster_traverse

Travese namespace and download artifacts from GUI.

usage: taskcluster_traverse [-h] [--credentials CREDENTIALS] [-n NAMESPACE]
                            [-d DEST_DIR] [-v]

The simple GUI traverse and download tool for Taskcluster.

optional arguments:
  -h, --help            show this help message and exit
  --credentials CREDENTIALS
                        The credential JSON file
                        (default: <YOUR_HOME>/tc_credentials.json)
  -n NAMESPACE, --namespace NAMESPACE
                        The namespace of task
  -d DEST_DIR, --dest-dir DEST_DIR
                        The dest folder (default: current working folder)
  -v, --verbose         Turn on verbose output, with all the debug logger.

The tc_credentials.json Template:
    {
        "clientId": "",
        "accessToken": "",
        "certificate": {
            "version":1,
            "scopes":["*"],
            "start":xxx,
            "expiry":xxx,
            "seed":"xxx",
            "signature":"xxx"
        }
    }

SSL InsecurePlatformWarning

If you got the following error message when running the tools, please install requests[security] package.

InsecurePlatformWarning: A true SSLContext object is not available.
This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail.
For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.

Install package by pip install. Please note it’s not required for Python 2.7.9+.

pip install requests[security]

If you got Setup script exited with error: command ‘gcc’ failed with exit status 1 error when install requests[security], please install libffi-dev. (Ubuntu)

sudo apt-get install libffi-dev

Release History

0.0.19 (2015-10-30)

Features and Improvements

  • Modify the logger and gui of taskcluster_traverse.

0.0.18 (2015-10-30)

Features and Improvements

  • Move tc_credentials.json to User’s Home folder.

  • Update README file.

  • Update usage.

  • Modify the Credentials input GUI of taskcluster_traverse.

0.0.17 (2015-10-27)

Features and Improvements

  • Add the credentials information.

0.0.16 (2015-10-13)

Bugfixes

  • Fix the issue of downloading public artifact when no credentials

0.0.15 (2015-10-02)

Features and Improvements

  • Upgrade the taskcluster library to 0.0.27, which fixed the bewit issue.

  • Download artifacts by Signed URL, not API method.

0.0.14 (2015-10-01)

Bugfixes

  • Fix the internal server error (cause by taskcluster v0.0.21).

0.0.13 (2015-09-07)

Features and Improvements

  • Refactoring.

  • Using the prograssbar package to display the download progress.

  • Add hooking point ‘do_after_download’ after downloading.

0.0.12 (2015-09-04)

Bugfixes

  • Fix some description error.

0.0.11 (2015-09-04)

Features and Improvements

  • Add taskcluster_traverse.

  • Modify setup.py, HISTORY, and README.

  • Add more function of TaskFinder.

  • Add Makefile and travis ci settings.

  • Add unittest cases.

Bugfixes

  • Fix the temp folder deleted issue when downloading multiple times.

0.0.10 (2015-08-04)

Features and Improvements

  • Download artifacts from taskcluster.

0.0.1 (2015-07-15)

  • Initiate the project.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

taskcluster_util-0.0.19.tar.gz (11.6 kB view details)

Uploaded Source

File details

Details for the file taskcluster_util-0.0.19.tar.gz.

File metadata

File hashes

Hashes for taskcluster_util-0.0.19.tar.gz
Algorithm Hash digest
SHA256 24a81b2ddb6e136337c165022deca537bd4f3101a83a2a999ae38208fb42b44e
MD5 914217189c9d0659aed1a65359b33031
BLAKE2b-256 b046c013683b551f6dd99c06bb814fd757565c4646d1676e20915627f2e0b33b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page