Browse Source

Redirect /job to / and /job/:job/build to /job/:job

replaces #81
pull/104/head
Hannes Mehnert 4 months ago
parent
commit
4c3a5986d6
  1. 12
      lib/builder_web.ml

12
lib/builder_web.ml

@ -476,11 +476,23 @@ let add_routes datadir configdir =
>>= fun () -> Dream.respond "" |> Lwt_result.ok
in
let redirect_parent req =
let path = Dream.target req in
let parent =
String.split_on_char '/' |>
List.rev |> List.tl |> List.rev |>
String.concat "/"
in
Dream.redirect ~status:`Temporary_Redirect req (parent ^ "/")
in
let w f req = or_error_response (f req) in
Dream.router [
Dream.get "/" (w builds);
Dream.get "/job" (w redirect_parent);
Dream.get "/job/:job/" (w job);
Dream.get "/job/:job/build" (w redirect_parent);
Dream.get "/job/:job/failed/" (w job_with_failed);
Dream.get "/job/:job/build/latest/**" (w redirect_latest);
Dream.get "/job/:job/build/:build/" (w job_build);

Loading…
Cancel
Save