gecko_taskgraph.loader package

Submodules

gecko_taskgraph.loader.test module

gecko_taskgraph.loader.test.expand_tests(test_sets_cfg, test_platforms)

Expand the test sets in test_platforms out to sets of test names. Returns a dictionary like get_test_platforms, with an additional test-names key for each test platform, containing a set of test names.

gecko_taskgraph.loader.test.get_builds_by_platform(dep_kind, loaded_tasks)

Find the build tasks on which tests will depend, keyed by platform/type. Returns a dictionary mapping build platform to task.

gecko_taskgraph.loader.test.get_test_platforms(test_platforms_cfg, builds_by_platform, signed_builds_by_platform={})

Get the test platforms for which test tasks should be generated, based on the available build platforms. Returns a dictionary mapping test platform to {test-set, build-platform, build-label}.

gecko_taskgraph.loader.test.loader(kind, path, config, params, loaded_tasks)

Generate tasks implementing Gecko tests.

gecko_taskgraph.loader.transform module

gecko_taskgraph.loader.transform.loader(kind, path, config, params, loaded_tasks)

Get the input elements that will be transformed into tasks in a generic way. The elements themselves are free-form, and become the input to the first transform.

By default, this reads jobs from the jobs key, or from yaml files named by jobs-from. The entities are read from mappings, and the keys to those mappings are added in the name key of each entity.

If there is a job-defaults config, then every job is merged with it. This provides a simple way to set default values for all jobs of a kind. The job-defaults key can also be specified in a yaml file pointed to by jobs-from. In this case it will only apply to tasks defined in the same file.

Other kind implementations can use a different loader function to produce inputs and hand them to transform_inputs.

Module contents