summaryrefslogtreecommitdiff
path: root/automation
diff options
context:
space:
mode:
authorBastien Abadie <bastien@mozilla.com>2019-06-13 14:49:40 +0000
committerBastien Abadie <bastien@mozilla.com>2019-06-13 14:49:40 +0000
commit72cb76fa9a7f7f18dbc2afe831a72107ff87eebe (patch)
treef136ec9010fbfa104204848fd9ffe43acb831a74 /automation
parent7fb83aeda72590280815be70d985515c7f52c707 (diff)
downloadnss-hg-72cb76fa9a7f7f18dbc2afe831a72107ff87eebe.tar.gz
Bug 1559095 - Support try_task_config.json parameters in taskgraph, r=jcj
Differential Revision: https://phabricator.services.mozilla.com/D34846
Diffstat (limited to 'automation')
-rw-r--r--automation/taskcluster/graph/src/queue.js14
-rw-r--r--automation/taskcluster/graph/src/try_syntax.js12
2 files changed, 22 insertions, 4 deletions
diff --git a/automation/taskcluster/graph/src/queue.js b/automation/taskcluster/graph/src/queue.js
index feebd6f56..0b7ade990 100644
--- a/automation/taskcluster/graph/src/queue.js
+++ b/automation/taskcluster/graph/src/queue.js
@@ -14,6 +14,7 @@ let filters = [];
let tasks = new Map();
let tags = new Map();
let image_tasks = new Map();
+let parameters = {};
let queue = new taskcluster.Queue({
baseUrl: "http://taskcluster/queue/v1"
@@ -141,6 +142,10 @@ function convertTask(def) {
scopes.push.apply(scopes, def.scopes)
}
+ let extra = Object.assign({
+ treeherder: parseTreeherder(def)
+ }, parameters);
+
return {
provisionerId: def.provisioner || "aws-provisioner-v1",
workerType: def.workerType || "hg-worker",
@@ -163,10 +168,7 @@ function convertTask(def) {
},
payload,
-
- extra: {
- treeherder: parseTreeherder(def)
- }
+ extra,
};
}
@@ -178,6 +180,10 @@ export function filter(fun) {
filters.push(fun);
}
+export function addParameters(params) {
+ parameters = Object.assign(parameters, params);
+}
+
export function clearFilters(fun) {
filters = [];
}
diff --git a/automation/taskcluster/graph/src/try_syntax.js b/automation/taskcluster/graph/src/try_syntax.js
index c88dd6903..700032a31 100644
--- a/automation/taskcluster/graph/src/try_syntax.js
+++ b/automation/taskcluster/graph/src/try_syntax.js
@@ -3,6 +3,8 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
import * as queue from "./queue";
+import path from 'path'
+import fs from 'fs'
import intersect from "intersect";
import parse_args from "minimist";
import util from "util";
@@ -166,6 +168,16 @@ async function getCommitComment() {
export async function initFilter() {
let comment = await getCommitComment();
+ // Load try_task_config.json
+ // Add parameters to queue for created tasks
+ let config_path = path.normalize(path.join(__dirname, '../../../../try_task_config.json'))
+ if (fs.existsSync(config_path)) {
+ var payload = JSON.parse(fs.readFileSync(config_path));
+ if (payload['version'] == 2) {
+ queue.addParameters(payload['parameters']);
+ }
+ }
+
// Check for try syntax in changeset comment.
let match = comment.match(/\btry:\s*(.*)\s*$/m);