blob: b71ef8c73f687790c1abd487e717acc637c30f5d [file] [log] [blame]
<html>
<head>
<title>task-sk demo</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1, user-scalable=yes">
<script src="/res/common/js/common.js"></script>
<script src="/res/imp/bower_components/webcomponentsjs/webcomponents-lite.js"></script>
<script type="text/javascript" charset="utf-8">
// task1 is a task to display.
var task1 = {
"attempt": 0,
"commits": null,
"created": "2019-02-19T13:27:33.565771Z",
"dbModified": "2019-02-19T13:29:14.946038Z",
"finished": "2019-02-19T13:29:14.669965Z",
"id": "QT5J8rNsgnumXH67JwTr",
"isolatedOutput": "f43fcadbbffe79a92f5da6792ed992581aa620bd",
"jobs": [
"aYwjrLWysQRUW2lGFQvR",
// This is job2.id.
"ABCDEF"
],
"max_attempts": 2,
"parentTaskIds": [
"J1iwABakhHfGNzGc0n0G",
"db0BuaY14LAtgqirQr0h"
],
"properties": null,
"retryOf": "",
"started": "2019-02-19T13:27:33.920761Z",
"status": "FAILURE",
"swarmingBotId": "skia-gce-215",
"swarmingTaskId": "431ec237d09f5410",
"issue": "193176",
"patch_repo": "https://skia.googlesource.com/skia.git",
"patchset": "2",
"server": "https://skia-review.googlesource.com",
"repo": "https://skia.googlesource.com/skia.git",
"revision": "9883def4f8661f8eec4ccbae2e34d7fcb14bf65d",
"name": "Test-Debian9-EMCC-GCE-GPU-AVX2-wasm-Release-All-CanvasKit",
"forcedJobId": ""
};
// job1 represents real task data.
var job1 = {
"buildbucketBuildId": 8921090193851453000,
"buildbucketLeaseKey": 0,
"created": "2019-02-19T13:20:52.277737Z",
"dbModified": "2019-02-19T13:33:14.64704Z",
"dependencies": {
"Build-Debian9-EMCC-wasm-Release-CanvasKit": [
"Housekeeper-PerCommit-BundleRecipes"
],
"Housekeeper-PerCommit-BundleRecipes": [],
[task1.name]: [
"Housekeeper-PerCommit-BundleRecipes",
"Build-Debian9-EMCC-wasm-Release-CanvasKit"
],
"Upload-Test-Debian9-EMCC-GCE-GPU-AVX2-wasm-Release-All-CanvasKit": [
"Housekeeper-PerCommit-BundleRecipes",
task1.name
]
},
"finished": "2019-02-19T13:32:46.274182Z",
"id": task1.jobs[0],
"isForce": false,
"name": "Test-Debian9-EMCC-GCE-GPU-AVX2-wasm-Release-All-CanvasKit",
"priority": 0,
"issue": "193176",
"patch_repo": "https://skia.googlesource.com/skia.git",
"patchset": "2",
"server": "https://skia-review.googlesource.com",
"repo": "https://skia.googlesource.com/skia.git",
"revision": "9883def4f8661f8eec4ccbae2e34d7fcb14bf65d",
"status": "SUCCESS",
"tasks": {
"Build-Debian9-EMCC-wasm-Release-CanvasKit": [
{
"attempt": 0,
"id": "J1iwABakhHfGNzGc0n0G",
"max_attempts": 2,
"status": "SUCCESS",
"swarmingTaskId": "431ebd696ac4fe10"
}
],
"Housekeeper-PerCommit-BundleRecipes": [
{
"attempt": 0,
"id": "db0BuaY14LAtgqirQr0h",
"max_attempts": 2,
"status": "SUCCESS",
"swarmingTaskId": "431ebc8bdc182810"
}
],
[task1.name]: [
{
"attempt": task1.attempt,
"id": task1.id,
"max_attempts": task1.max_attempts,
"status": task1.status,
"swarmingTaskId": task1.swarmingTaskId
},
{
"attempt": 1,
"id": "fmHFVsREalHNMozGW7Pg",
"max_attempts": 2,
"status": "SUCCESS",
"swarmingTaskId": "431ec43eb083e010"
}
],
"Upload-Test-Debian9-EMCC-GCE-GPU-AVX2-wasm-Release-All-CanvasKit": [
{
"attempt": 0,
"id": "6qz24baK8BCl8ubhKo5K",
"max_attempts": 2,
"status": "SUCCESS",
"swarmingTaskId": "431ec69823433510"
}
]
},
};
// job2 is fake data but is more visually interesting.
var job2 = {
"created": (new Date(new Date().getTime() - 5000000)).toUTCString(),
"dbModified": "2016-10-10T19:56:44.572122663Z",
"dependencies": {
"F": ["E"],
"E": ["B"],
"D": ["B"],
[task1.name]: ["A"],
"B": ["A"],
"A": [],
},
"finished": "",
"id": "ABCDEF",
"isForce": false,
"name": "ABCDEF",
"priority": 0.8,
"issue": "2410843002",
"patchset": "1",
"server": "https://codereview.chromium.org",
"repo": "https://skia.googlesource.com/skia.git",
"revision": "6ca48820407244bbdeb8f9e0ed7d76dd94270460",
"status": "",
"tasks": {
"A": [{
"id": "A1",
"status": "SUCCESS",
"swarmingTaskId": "31cd28b854e04d10",
}],
"B": [{
"id": "B1",
"status": "FAILURE",
"swarmingTaskId": "31cd28b854e04d10",
}, {
"id": "B2",
"status": "SUCCESS",
"swarmingTaskId": "31cd28b854e04d10",
}],
[task1.name]: [{
"id": task1.id,
"status": task1.status,
"swarmingTaskId": task1.swarmingTaskId,
}],
"D": [{
"id": "D1",
"status": "",
"swarmingTaskId": "31cd28b854e04d10",
}],
"E": [{
"id": "E1",
"status": "RUNNING",
"swarmingTaskId": "31cd28b854e04d10",
}],
},
};
// Mock out sk.get and so we can fake a response from the server.
sk.get = function(url) {
return new Promise(function (resolve, reject) {
if (url.indexOf("/json/task/") != -1) {
resolve(JSON.stringify(task1));
} else if (url.indexOf("/json/job/") != -1) {
if (url.indexOf(job1.id) != -1) {
resolve(JSON.stringify(job1));
} else if (url.indexOf(job2.id) != -1) {
resolve(JSON.stringify(job2));
} else {
reject("Unknown Job url " + url);
}
} else if (url == "/loginstatus/") {
resolve('{"Email":"user@google.com","LoginURL":"https://accounts.google.com/"}');
} else {
reject("Unknown url " + url);
}
});
};
sk.post = function(url) {
return new Promise(function (resolve, reject) {
var j = task1;
if (url.indexOf("task1") == -1) {
j = task2;
}
j.status = "CANCELED";
j.finished = (new Date()).toISOString();
resolve(JSON.stringify(j));
});
};
</script>
<link rel="import" href="task-sk.html">
<link rel="import" href="/res/common/imp/error-toast-sk.html">
<link rel="import" href="/res/common/imp/login.html">
<link rel="import" href="/res/imp/bower_components/paper-toggle-button/paper-toggle-button.html" />
</head>
<body>
<login-sk style="display:none"></login-sk>
<h1>task-sk demo</h1>
<task-sk id="task_sk" task-id="task1" swarming-server="chromium-swarm.appspot.com"></task-sk>
<error-toast-sk></error-toast-sk>
</body>
</html>