Name Description Size
__init__.py 0
attributes.py Determine whether the given set of task attributes matches. The conditions are given as keyword arguments, where each keyword names an attribute. The keyword value can be a literal, a set, or a callable. A literal must match the attribute exactly. Given a set, the attribute value must be in the set. A callable is called with the attribute value. If an attribute is specified as a keyword argument but not present in the attributes, the result is False. 4654
backstop.py Determines whether the given parameters represent a backstop push. Args: push_interval (int): Number of pushes time_interval (int): Minutes between forced schedules. Use 0 to disable. trust_domain (str): "gecko" for Firefox, "comm" for Thunderbird integration_projects (set): project that uses backstop optimization Returns: bool: True if this is a backstop, otherwise False. 2830
bugbug.py 3118
cached_tasks.py Allow the results of this task to be cached. This adds index routes to the task so it can be looked up for future runs, and optimization hints so that cached artifacts can be found. Exactly one of `digest` and `digest_data` must be passed. :param TransformConfig config: The configuration for the kind being transformed. :param dict taskdesc: The description of the current task. :param str cache_type: The type of task result being cached. :param str cache_name: The name of the object being cached. :param digest: A unique string indentifying this version of the artifacts being generated. Typically this will be the hash of inputs to the task. :type digest: bytes or None :param digest_data: A list of bytes representing the inputs of this task. They will be concatenated and hashed to create the digest for this task. :type digest_data: list of bytes or None 3188
chunking.py Utility functions to handle test chunking. 9272
declarative_artifacts.py 2983
docker.py POSTs a tar file to a given docker API path. The tar argument can be anything that can be passed to requests.post() as data (e.g. iterator or file object). The extra keyword arguments are passed as arguments to the docker API. 11554
hash.py Hash a single file. Returns the SHA-256 hash in hex form. 1596
hg.py Given the parameters for this action and a revision, find the pushlog_id of the revision. 4205
keyed_by.py For values which can either accept a literal value, or be keyed by some attributes, perform that lookup and return the result. For example, given item:: by-test-platform: macosx-10.11/debug: 13 win.*: 6 default: 12 a call to `evaluate_keyed_by(item, 'thing-name', {'test-platform': 'linux96')` would return `12`. Items can be nested as deeply as desired:: by-test-platform: win.*: by-project: ash: .. cedar: .. linux: 13 default: 12 Args: value (str): Name of the value to perform evaluation on. item_name (str): Used to generate useful error messages. attributes (dict): Dictionary of attributes used to lookup 'by-<key>' with. defer (list): Allows evaluating a by-* entry at a later time. In the example above it's possible that the project attribute hasn't been set yet, in which case we'd want to stop before resolving that subkey and then call this function again later. This can be accomplished by setting `defer=["project"]` in this example. enforce_single_match (bool): If True (default), each task may only match a single arm of the evaluation. 3419
parameterization.py Resolve all instances of `{'relative-datestamp': '..'}` in the given task definition 3188
partials.py Convert build platform names into balrog platform names. Remove known values instead to catch aarch64 and other platforms that may be added. 10609
partners.py LOGIN_QUERY, MANIFEST_QUERY, and REPACK_CFG_QUERY are all written to the Github v4 API, which users GraphQL. See https://developer.github.com/v4/ 19547
perfile.py 3605
platforms.py Given a build platform, return the platform family (linux, macosx, etc.) 1674
python_path.py Find a Python object given a path of the form <modulepath>:<objectpath>. Conceptually equivalent to def find_object(modulepath, objectpath): import <modulepath> as mod return mod.<objectpath> 1577
schema.py Validate that object satisfies schema. If not, generate a useful exception beginning with msg_prefix. 7718
scriptworker.py Make scriptworker.cot.verify more user friendly by making scopes dynamic. Scriptworker uses certain scopes to determine which sets of credentials to use. Certain scopes are restricted by branch in chain of trust verification, and are checked again at the script level. This file provides functions to adjust these scopes automatically by project; this makes pushing to try, forking a project branch, and merge day uplifts more user friendly. In the future, we may adjust scopes by other settings as well, e.g. different scopes for `push-to-candidates` rather than `push-to-releases`, even if both happen on mozilla-beta and mozilla-release. Additional configuration is found in the :ref:`graph config <taskgraph-graph-config>`. 26883
signed_artifacts.py Defines artifacts to sign before repackage. 6765
taskcluster.py Get the current TASKCLUSTER_ROOT_URL. When running in a task, this must come from $TASKCLUSTER_ROOT_URL; when run on the command line, we apply a defualt that points to the production deployment of Taskcluster. If use_proxy is set, this attempts to get TASKCLUSTER_PROXY_URL instead, failing if it is not set. 13184
taskgraph.py Tools for interacting with existing taskgraphs. 1705
templates.py Merge dict and arrays (override scalar values) Keys from source override keys from dest, and elements from lists in source are appended to lists in dest. :param dict source: to copy from :param dict dest: to copy to (modified in place) 1668
time.py Convert a string to a json date in the future :param str input_str: (ex: 1d, 2d, 6years, 2 seconds) :returns: Unit given in seconds 3490
treeherder.py Split a symbol expressed as grp(sym) into its two parts. If no group is given, the returned group is '?' 2138
verify.py Container for a sequence of verifications over a TaskGraph. Each verification is represented as a callable taking (task, taskgraph, scratch_pad), called for each task in the taskgraph, and one more time with no task but with the taskgraph and the same scratch_pad that was passed for each task. 17123
workertypes.py Get the configuration for this worker_type alias: {provisioner, worker-type, implementation, os} 3284
yaml.py Parse the first YAML document in a stream and produce the corresponding Python object. 990