Commit Graph

33 Commits

Author SHA1 Message Date
Tom Prince
25e12b05a3 Bug 1385055 - Add some taskgraph parameters for dealing with comm-central and related repositories. r=dustin
MozReview-Commit-ID: 4tdxfJcx8Fz
2017-07-27 12:26:48 -06:00
Dustin J. Mitchell
d08f492fb6 Bug 1383880: parse try config during the decision task; r=ahal
This sets the try_mode property, and parses the try message (if given), early
in the decision task and puts the results into the parameters.

The proximate need is to set optimze_target_tasks for some try modes and not
others. This also replaces the existing logic for parsing messages for certain
kinds, and makes the distinction between the different try modes a little
clearer.

MozReview-Commit-ID: AXJEGLh6pEV
2017-08-21 23:14:14 +00:00
Phil Ringnalda
b76b48b887 Backed out 12 changesets (bug 1383880) for decision task bustage
CLOSED TREE

Backed out changeset fd3615e7e0a3 (bug 1383880)
Backed out changeset 8cceb6a82bfb (bug 1383880)
Backed out changeset 571a6c9054a5 (bug 1383880)
Backed out changeset ec2b8ba5a949 (bug 1383880)
Backed out changeset 8e5847d9acda (bug 1383880)
Backed out changeset b354fdf6e233 (bug 1383880)
Backed out changeset ebdd6ccbcfca (bug 1383880)
Backed out changeset ebcc9d20981a (bug 1383880)
Backed out changeset 97eedc84d6e8 (bug 1383880)
Backed out changeset a3116da52b4e (bug 1383880)
Backed out changeset b3eb0c939720 (bug 1383880)
Backed out changeset 7c07cb798530 (bug 1383880)

MozReview-Commit-ID: EPDuQHr7w2y
2017-09-20 19:57:39 -07:00
Dustin J. Mitchell
a7457a95f7 Bug 1383880: parse try config during the decision task; r=ahal
This sets the try_mode property, and parses the try message (if given), early
in the decision task and puts the results into the parameters.

The proximate need is to set optimze_target_tasks for some try modes and not
others. This also replaces the existing logic for parsing messages for certain
kinds, and makes the distinction between the different try modes a little
clearer.

MozReview-Commit-ID: AXJEGLh6pEV
2017-08-21 23:14:14 +00:00
Simon Fraser
0ab9dada04 Bug 1342392 Migrate partial update generation in-tree r=rail
MozReview-Commit-ID: G6EFXY0UzSa
2017-09-18 13:36:36 +01:00
Sebastian Hengst
f1bbda3eeb Backed out changeset 0d71c0be62de (bug 1342392) for bustage in partial update generator for docker images: recompress.sh not found. r=backout 2017-09-18 14:15:42 +02:00
Simon Fraser
d2b8ac4d0d Bug 1342392 Migrate partial update generation in-tree r=rail
MozReview-Commit-ID: 84fP48sMYhS
2017-09-15 11:04:35 +01:00
Sebastian Hengst
ca434b9d52 Backed out changeset a43387ee65d7 (bug 1342392) for failing flake8 and py-compat jobs. r=backout 2017-09-18 13:50:16 +02:00
Simon Fraser
498d6b87a7 Bug 1342392 Migrate partial update generation in-tree r=rail
MozReview-Commit-ID: 84fP48sMYhS
2017-09-15 11:04:35 +01:00
Wes Kocher
d62fefa0af Backed out 2 changesets (bug 1342392) for bustage a=backout
Backed out changeset b0e86286b173 (bug 1342392)
Backed out changeset 01bf0c29331e (bug 1342392)

MozReview-Commit-ID: 71fcOZ2RgEp
2017-09-11 17:35:09 -07:00
Simon Fraser
278648e798 Bug 1342392 Move partial update generation in-tree r=dustin,jlorenzo 2017-09-11 09:55:52 +01:00
Sebastian Hengst
27461f48cf Backed out 2 changesets (bug 1342392) for adding .orig file and flake lint failures. r=backout on a CLOSED TREE
Backed out changeset bf0bcdc7482e (bug 1342392)
Backed out changeset 7f5ae5ff1181 (bug 1342392)
2017-09-11 10:38:08 +02:00
Simon Fraser
e9d9241564 Bug 1342392 Move partial update generation in-tree r=dustin,jlorenzo 2017-09-11 09:24:10 +01:00
Sebastian Hengst
cd4005d4a7 Backed out changeset b53ff084c2d7 (bug 1383880) 2017-09-06 17:47:45 +02:00
Dustin J. Mitchell
40fa2c8f48 Bug 1383880: parse try config during the decision task; r=ahal
This sets the try_mode property, and parses the try message (if given), early
in the decision task and puts the results into the parameters.

The proximate need is to set optimze_target_tasks for some try modes and not
others. This also replaces the existing logic for parsing messages for certain
kinds, and makes the distinction between the different try modes a little
clearer.

MozReview-Commit-ID: AXJEGLh6pEV
2017-08-21 23:14:14 +00:00
Ryan VanderMeulen
c41dc43ff0 Backed out 9 changesets (bug 1383880) for decision task bustage.
Backed out changeset 53f5d47a7cb0 (bug 1383880)
Backed out changeset a0abda41172a (bug 1383880)
Backed out changeset 729a7e2091e8 (bug 1383880)
Backed out changeset a33f5a14a471 (bug 1383880)
Backed out changeset 5b10d321cfee (bug 1383880)
Backed out changeset 8056488d8aed (bug 1383880)
Backed out changeset e62c90e3c1e8 (bug 1383880)
Backed out changeset 91f116ce6c2a (bug 1383880)
Backed out changeset 045498bc36c4 (bug 1383880)
2017-09-01 15:37:08 -04:00
Dustin J. Mitchell
464d6eeb31 Bug 1383880: parse try config during the decision task; r=ahal
This sets the try_mode property, and parses the try message (if given), early
in the decision task and puts the results into the parameters.

The proximate need is to set optimze_target_tasks for some try modes and not
others. This also replaces the existing logic for parsing messages for certain
kinds, and makes the distinction between the different try modes a little
clearer.

MozReview-Commit-ID: AXJEGLh6pEV
2017-08-21 23:14:14 +00:00
Andrew Halberstadt
91fd656da8 Bug 1387135 - Add ability to apply templates to task definitions via try_task_config.json, r=dustin
This provides a mechanism to modify the behaviour of tasks from a try push. The try_task_config.json
looks something like:

{
  "tasks": ["build-linux64/opt", "test-linux64/opt-mochitest-e10s-1"],
  "templates": {
    "artifact": {"enabled": 1}
  }
}

This tells taskgraph to apply the 'artifact' template to all tasks. Templates are JSONe based
.yml files that live under taskcluster/taskgraph/templates. Taskgraph will render every template
against every task definition. The templates themselves can then use JSONe condition statements to
filter out which tasks they should or shouldn't apply to.

MozReview-Commit-ID: J8HVZzOt4mX
2017-08-15 11:36:29 -04:00
Dustin J. Mitchell
9035033b90 Bug 1351011: remove unused triggered_by property; r=Callek
The purpose of this parameter has been superseded by the `include_nightly`
property.

MozReview-Commit-ID: 4iXQsv9Drqg
2017-03-27 20:10:08 +00:00
Paul Bignier
80de03c17c Bug 1352839 - Fix various typos of the word "taskcluster" in the tree. r=garndt 2017-04-02 09:13:00 -04:00
Aki Sasaki
82ede80faa bug 1344321 - enable run-on-projects for nightlies. r=dustin a=release
This patch enables `run-on-projects` to work appropriately for
nightly builds and tests.  Initially, we were setting an empty
`run-on-projects` for nightly `build_platform`s, then explicitly
targeting the platforms in nightly-specific `target_task_method`s.

Instead, this patch enables nightlies to `run-on-projects` everywhere,
but governs the use of nightlies by either the `include_nightly`
parameter, or the `--include-nightly` try option.  This lets us filter
nightly-related `target_task_method`s against `run-on-projects` without
losing all nightly tasks.

Then, enable spidermonkey tests by removing optimization from beta and
release.  This patch also enables everything then disables specific
tasks, rather than disabling everything and enabling specific tasks.
Since we're beginning with a `filter_for_project` call, we should be
able to reduce these if blocks to zero over time, if desired.

MozReview-Commit-ID: A9tolynaChF
2017-03-14 15:31:58 -07:00
Aki Sasaki
3f38919567 bug 1344321 - add nightly test support. r=dustin a=release
this patch:

- adds linux{32,64}-nightly/opt test platforms that mirror the non-nightly test platforms.

- adds an `include_nightly` per-project parameter; this is refered to in the default `target_task_method`.  It's still possible to launch custom `target_task_method`s to trigger nightlies against, say, try.

- adds a `filter_for_project` method in `target_tasks.py` that allows for `include_nightly` and `run_on_projects` filtering in the various `target_task_method`s.

- adds nightly filtering into the `TryOptionSyntax` object.  By default, this will be off.  To trigger nightly tests on try, either submit a new decision task with a different `target_task_method` (e.g. `nightly_fennec`) or flip the `include_nightly` flag to True.

- adds the `nightly` attribute to tests if their builds have that attribute.

MozReview-Commit-ID: DttIZH0BHS2
2017-03-09 16:32:41 -08:00
Gregory Szorc
5d56d07832 Bug 1318200 - Introduce task graph filtering; r=dustin
Previously, we ran a single "target task" function to mutate the full
task graph into a subset based on input parameters (try syntax,
repository being built for, etc). This concept is useful. But
the implementation was limiting because we could only have a single
"target tasks" function.

This commit introduces the concept of "filters." They conceptually
do the same thing as "target tasks methods" but you can run more than
1 of them.

Filters are simply functions that examine an input graph+parameters
and emit nodes that should be retained. Filters, like target tasks
methods, are defined via decorated functions in a module.

TaskGraphGenerator has been converted to use filters. The list of
defined filters can be defined in the parameters dict passed into
TaskGraphGenerator. A default filter list is provided in decision.py.

The intent is to eventually convert target tasks to filters. Until
that happens, we always run the registered target tasks method via
a filter proxy function.

No new tests have been added because we don't yet have any
functionality relying explicitly on filters. Tests will be added in
a subsequent commit once we add a new filter.

While I was here, I also snuck in some logging on the size of the
graphs.

MozReview-Commit-ID: ERn2hIYbMRp
2016-11-17 15:53:30 -08:00
Dustin J. Mitchell
45eb10a983 Bug 1296842: make target-task related parameters a fixed set; r=jmaher
The `from_parameters` method was never used, and let do confusion over the role
of these parameters.  Now there are only two, and they are always required.

MozReview-Commit-ID: AbPqijXucu5
2016-11-07 19:13:34 +00:00
Dustin J. Mitchell
579055d782 Bug 1296842: document triggered_by property; r=jmaher
MozReview-Commit-ID: 8sAsWbCpUft
2016-11-07 15:26:44 +00:00
Dustin J. Mitchell
6696cddd8b Bug 1296842: better parameter documentation to help readers; r=jmaher
MozReview-Commit-ID: N9EHe2s6PS
2016-11-07 15:02:13 +00:00
Jordan Lund
9b9318450f Bug 1314795 - introduce build_date to params that defaults to pushdate, r=dustin
MozReview-Commit-ID: AviPKtw3BiY
2016-11-02 19:23:27 -07:00
Dustin J. Mitchell
3abcfe9038 Bug 1293733: accept pushdate from command line; r=garndt
MozReview-Commit-ID: BrGiowlMVCa
2016-07-13 18:50:50 +00:00
Gregory Szorc
b671404cef Backed out changeset fc1ed3fd8584 (bug 1291473) on suspicion of breaking decision tasks 2016-08-08 13:15:37 -07:00
Dustin J. Mitchell
f2b47e6e61 Bug 1291473: accept pushdate from command line; r=garndt
MozReview-Commit-ID: BrGiowlMVCa
2016-07-13 18:50:50 +00:00
Gregory Arndt
02dc4d8855 Bug 1280129 - Update tasks to use v2 treeherder routes r=dustin
Jobs reporting to treeherder should rely on the task route for project,
revision, and pushlog ID rather than things stuffed into task.extra.treeherder.

This also removes the need for a revision_hash that was calculated by mozilla-taskcluster.

MozReview-Commit-ID: EcQM9QRZzgG
2016-06-14 12:56:25 -05:00
Dustin J. Mitchell
833bb86436 Bug 1274611: Implement task-graph optimization; r=gps
* Implement & document optimization (although legacy kind doesn't do much of it)
 * Introduce `optimize_target_tasks` parameter to control whether tasks in the
   target set can be optimized (no for try, yes for most other branches)
 * Refactor to include resolved taskIds in the optimized task graph
 * Include a `label-to-taskid.json` artifact.
 * Introduce {'task-reference': '... <dependency-name> ...'} for referring to
   parent tasks' taskId.

MozReview-Commit-ID: LWvlWNz49U5
2016-06-05 19:49:41 +00:00
Dustin J. Mitchell
2db03e8aeb Bug 1258497: Implement a new taskgraph generation system; r=gps
The `taskgraph` package generates TaskCluster task graphs based on collections
of task "kinds".  Initially, there is only one kind, the "legacy" kind, which
reads the YAML files from `testing/taskcluster/tasks` to generate the task
graph.

Try syntax is implemented by filtering the tasks in the taskgraph after it has
been created, then extending the result to include any prerequisite tasks.

A collection of `mach taskgraph` subcommands are provided for developers to
extend or debug the task-graph generation process.

MozReview-Commit-ID: 1TJCns4XxZ8
2016-05-16 22:53:22 +00:00