This item tracks implementing a similar view to that which is currently available in Legoland (example <https://cros-goldeneye.corp.google.com/chromeos/healthmonitoring/buildDetails?buildbucketId=8930424161889857344>). In other words, a linear timeline that shows both a stage’s duration relative to total build time and where stages are running concurrently.
The following revision refers to this bug: https://chromium.googlesource.com/infra/luci/luci-go.git/+/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39 commit 7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39 Author: David Burger <dburger@chromium.org> Date: Tue Dec 04 23:47:04 2018 Add timeline visualization to milo build page Add a timeline visualization to the milo build page using the vis timeline component (http://visjs.org/docs/timeline/). A custom build of vis is added which includes only DataSet and Timeline (hammer and moment are removed, moment is already included as a separate resource). Bug: 903369 Change-Id: I8b30a43185132a17913435a387715a56d95ef9ba Reviewed-on: https://chromium-review.googlesource.com/c/1342666 Commit-Queue: David Burger <dburger@chromium.org> Reviewed-by: Takuto Ikuta <tikuta@chromium.org> Reviewed-by: Ryan Tseng <hinoka@chromium.org> Reviewed-by: Nodir Turakulov <nodir@chromium.org> [add] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/appengine/static/common/css/timeline.css [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/appengine/static/common/js/build.js [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/appengine/static/common/third_party/css/jquery-ui.min.css [add] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/appengine/static/common/third_party/css/vis.min.css [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/appengine/static/common/third_party/js/jquery-ui.min.js [add] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/appengine/static/common/third_party/js/vis-custom.min.js [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/appengine/templates/includes/base.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/appengine/templates/pages/build.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/buildbot.build-Debug_page-_CrWinGoma_30608.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/buildbot.build-Debug_page-_chromium_presubmit_426944.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/buildbot.build-Debug_page-_gerritCL_1234.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/buildbot.build-Debug_page-_newline_1234.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/buildbot.build-Debug_page-_win_chromium_rel_ng_246309.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/buildbot.builder-Basic_Test_no_builds.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/buildbot.builder-Basic_Test_with_builds.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/console-Full_console_with_Header.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/frontpage-Basic_frontpage.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/search-Basic_search_page.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-Basic_successful_build.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-canceled.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-exception.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-expired.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-finished-logdog-expired-stream.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-gerrit.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-internal.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-link.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-nested.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-patch-failure.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-pending-logdog.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-pending.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-running-logdog-no-annotation-stream.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-running-logdog.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-running.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-timeout.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.build-build-unicode.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/expectations/swarming.log-Basic_log.html [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/milo/frontend/view_build.go [modify] https://crrev.com/7bbfca73d2bb2cd56e0284c0014011ca6a8d6d39/server/analytics/analytics.go
This is checked in but waiting for this to be pushed to production. hinoka@ is doing some refactoring of the build page that is going to delay this slightly.
I met with Ryan - the build page refactoring has taken a large step forward. I'm now working on getting the timeline to work with the new page.
The following revision refers to this bug: https://chromium.googlesource.com/infra/luci/luci-go.git/+/63312ce568477702b27979f8e33d6b9fbac1c8a5 commit 63312ce568477702b27979f8e33d6b9fbac1c8a5 Author: David Burger <dburger@chromium.org> Date: Fri Jan 18 17:35:34 2019 Restore timeline functionality for new build page Restore the timeline functionality that was briefly present for build pages and now has been adjusted to work with the new build page approach. Note that some time handling functions previously in middleware.go were moved to a common/time.go location to avoid a cyclic dependency problem when trying to use them in the build.go page directly. I believe this cyclic dependency situation is eliminated when view_build_legacy.go is retired. BUG=903369 Change-Id: I92f211a7a68bf487edae31293ca3be64630b1ace Reviewed-on: https://chromium-review.googlesource.com/c/1404298 Commit-Queue: David Burger <dburger@chromium.org> Reviewed-by: Ryan Tseng <hinoka@chromium.org> [add] https://crrev.com/63312ce568477702b27979f8e33d6b9fbac1c8a5/milo/common/time.go [add] https://crrev.com/63312ce568477702b27979f8e33d6b9fbac1c8a5/milo/common/time_test.go [modify] https://crrev.com/63312ce568477702b27979f8e33d6b9fbac1c8a5/milo/frontend/appengine/static/common/css/timeline.css [modify] https://crrev.com/63312ce568477702b27979f8e33d6b9fbac1c8a5/milo/frontend/appengine/static/common/js/build.js [modify] https://crrev.com/63312ce568477702b27979f8e33d6b9fbac1c8a5/milo/frontend/expectations/buildbucket.build-Test_page-_linux-rel.html [modify] https://crrev.com/63312ce568477702b27979f8e33d6b9fbac1c8a5/milo/frontend/middleware.go [modify] https://crrev.com/63312ce568477702b27979f8e33d6b9fbac1c8a5/milo/frontend/middleware_test.go [modify] https://crrev.com/63312ce568477702b27979f8e33d6b9fbac1c8a5/milo/frontend/ui/build.go
Comment 1 by jclinton@chromium.org
, Nov 13