Commit graph

101 commits

Author SHA1 Message Date
rand
0f493e9b47 Removing trailing slashes (#80)
This PR solves the issue of there being both "<url>/" and "<url>" paths, that in the builder-web context shouldn't mean different things.

The slashes are now removed using a `Dream` middleware, and the request is redirected using a permanent redirect (that doesn't change the method used): https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Location

Notable changes:
* Trailing slashes from the hardcoded link urls were removed, as unneccesary redirects are then avoided.
* All links in `Views` were rewritten to be absolute instead of relative.
* As `Dream` deprecated `path` - `Utils.Path` was created containing some helpers for manipulating paths. *Note that `String.split_on_char` has a different semantics.*
* A blacklist `routeprefix_blacklist_when_removing_trailing_slash` was added, containing `Dream` route-prefixes to ignore.
* Only `GET` and `HEAD` requests are redirected.
* `redirect_parent` helper was rewritten using new `Utils.Path` functions to avoid brittle string manipulation + fixed the edgecase of redirecting to `/`.
* Added `Uri` dependency to make URL manipulation safer.

Co-authored-by: rand00 <oth.rand@gmail.com>
Co-authored-by: Reynir Björnsson <reynir@reynir.dk>
Reviewed-on: https://git.robur.io/robur/builder-web/pulls/80
Co-authored-by: rand <rand@r7p5.earth>
Co-committed-by: rand <rand@r7p5.earth>
2022-04-21 10:40:21 +00:00
rand
258ffbd979 Merge branch 'main' into 20220325_viz_descriptions 2022-03-30 10:26:00 +00:00
rand00
ef253b7b87 Views: Added usage-descriptions on mouse-over on '?' below each visualzation (not mobile compatible) 2022-03-29 12:56:11 +02:00
rand00
d90cbea35c Views: Removed visual border from viz iframes + size fix 2022-03-23 20:38:22 +01:00
eef8e54776 Include more information on the front page, especially how unikernels can be executed. 2022-03-03 11:36:09 +01:00
923bc3d9d4 Add Solo5 device manifest to job_build
A user browsing a build can view what network and block devices the
unikernel expects before downloading the unikernel.
2022-02-23 14:09:09 +00:00
rand00
550dd59a19 Builder-web: Implemented better page-not-found 2022-02-21 12:13:51 +00:00
rand00
9333773335 Views: Fixed issue #70: Platform query-param is preserved in Job links 2022-02-08 10:54:13 +00:00
d89c5f5a1b Unify layout, centered horizontally
Reviewed-on: https://git.robur.io/robur/builder-web/pulls/74
2022-02-07 15:38:12 +00:00
43b9bf93ed Remove trailing whitespace 2022-02-07 13:51:56 +00:00
rand00
a601c143d6 Views.Job_build: Fixed for 80-col rule 2022-02-03 20:15:14 +01:00
rand00
7633b63f21 Views.Job_build: Avoiding too much indentation with current ocp-indent settings via less nesting 2022-02-03 20:11:36 +01:00
rand00
cb11326cd4 Views.Job_build: Separated body html out into named functions 2022-02-03 20:06:55 +01:00
rand00
a28b0829b3 .ocp-indent & Views: Changed max_indent to 4 - the default 2022-02-03 19:39:51 +01:00
rand00
5a6ce19c33 Views.Job: Separated nested list-generation out into named functions 2022-02-03 14:50:17 +01:00
rand00
f0632dff6f Views: More syntax + separated out failed-builds footer in Builds 2022-02-03 14:42:33 +01:00
rand00
b0fc7c1d9d Views.breadcrumbs: Consistent style of multiline tuples in list 2022-02-03 14:38:48 +01:00
rand00
f1214e01a3 Views: Syntax betterings for readability 2022-02-03 14:32:04 +01:00
rand00
82bcdf9f3b Views: Removed some opened records in parameters -
.. prefix with record-name is more safe and less cumbersome
2022-02-03 14:06:11 +01:00
rand00
126fe38465 Views: Configured .ocp-indent.conf to sensible defaults, and indented everything with this. Settings are:
normal
base = 2
type = 2
in = 0
with = 0
match_clause = 2
ppx_stritem_ext = 2
max_indent = 2
strict_with = never
strict_else = always
strict_comments = false
align_ops = true
align_params = auto
2022-02-03 14:00:24 +01:00
rand00
87442c4a09 Views: Builds: Separated html-generation out into named functions for ease of reading 2022-02-03 13:50:37 +01:00
rand00
b631b05de2 Views: Syntax 2022-02-03 13:28:16 +01:00
rand00
db3f87934b Views++: Made long parameter-lists into named parameters 2022-02-03 13:27:22 +01:00
rand00
3680336b22 Views: Removed outcommented + fixed some 80-col problems 2022-02-03 12:57:21 +01:00
rand00
f8b17e6b17 Views: Removed global open of Tyxml.Html and switched to prefix -
.. there are too many common names in this modules scope, and code gets easier to understand
 .. also I don't think global open is a good idea in general for this kind of module, so better
    to fix this style now than be sorry later
2022-02-03 12:54:02 +01:00
rand00
ae5c5cb67d Views: Using ocp-indent to indent everything consistently + fixed code aesthetics (80 char rule etc.) 2022-02-02 23:27:25 +01:00
rand00
c17802d84f Views++: Factored Job.Build to Job_build + Renamed Builder to Builds to avoid collision with lib 2022-02-02 23:03:16 +01:00
3fe07c7b34 Clean up trailing spaces 2022-02-01 11:43:07 +00:00
rand00
d6c04e861e Views: Removed usage of containers 2022-02-01 11:30:44 +00:00
rand00
161fec77af Views: Using Option.of_list 2022-02-01 11:30:44 +00:00
rand00
6f95f7e965 Views: Switch viz order + fixed iframe size 2022-02-01 11:30:44 +00:00
rand00
1bba2d7855 Views: Adjusted height of deps viz iframe again 2022-02-01 11:30:44 +00:00
rand00
c80ee590bd New centered flex-layout for builds page with 2 columns + some refactorings around Views 2022-02-01 11:30:44 +00:00
rand00
915468bbf1 Views: Adjusted height of deps viz iframe 2022-02-01 11:30:44 +00:00
rand00
48ba9b7bfe Views: Also rendering dependencies for non-binary packages 2022-02-01 11:30:44 +00:00
rand00
64cf4fc350 Added dependencies visualization to builds pages 2022-02-01 11:30:44 +00:00
rand00
6658244a18 Views: Only rendering treemap for unikernels with '.debug' artifact 2022-02-01 11:30:44 +00:00
rand00
c6ff42d391 Views: Fix fize of treemap 2022-02-01 11:30:44 +00:00
rand00
79c40473b4 Views: Changed background color 2022-02-01 11:30:44 +00:00
rand00
6a70220dee Removed debug-printing + Adjusted size of treemap iframe 2022-02-01 11:30:44 +00:00
rand00
462bbf5942 Treemap scale: Passing on binary-size to new Treemap renderer 2022-02-01 11:30:44 +00:00
rand00
c9ab07832e Views: Removed old code 2022-02-01 11:30:44 +00:00
rand00
4e2d069b26 Views: Chosen a static width relative to textsize for treemap 2022-02-01 11:30:44 +00:00
rand00
b52e3bc0b0 Views: Rewrote static css to be one big string instead 2022-02-01 11:30:44 +00:00
rand00
5548c04a3e Several changes related to treemap rendering:
* Rendering treemap in build-page as iframe, as the svg needs static CSS classes to work; and static CSS doesn't compose
  * Added 'include_static_css' param to Views.layout (useful for later)
  * Added Builder_web.dream_svg helper if we want to serve a svg directly
2022-02-01 11:30:44 +00:00
Robur
7fa8402eee use modulectomy to render svg of the unikernel binaries 2022-02-01 11:30:44 +00:00
Robur
8489d1ff36 Remove README from build page 2021-12-02 14:49:45 +00:00
Robur
0afec1617b markdown sanitization, addresses issue #46 2021-12-02 11:27:00 +00:00
Robur
088b55acc3 remove failed builds from job page
add a job page with failed builds, link to it
2021-11-17 16:39:49 +00:00
Robur
2e82778e87 Only show successful builds on the front page
Failed builds can be viewed on the linked /failed-builds/ page.
2021-11-17 16:00:58 +00:00