clean up skeleton

This commit is contained in:
swrup 2025-11-05 19:41:38 +01:00
parent f4eb197093
commit d693537b39
6 changed files with 100 additions and 810 deletions

View file

@ -1,10 +1,6 @@
(* mirage >= 4.9.0 & < 4.11.0 *)
open Mirage
type conn = Connect
let conn = typ Connect
let mte =
main "Unikernel.Make" ~local_libs:[ "mte" ]
~packages:
@ -13,15 +9,7 @@ let mte =
package "hxd" ~sublibs:[ "core"; "string" ]; package "rresult";
package "h2" ~min:"0.13.0"; package "base64" ~sublibs:[ "rfc2045" ];
]
(kv_ro @-> kv_ro @-> kv_ro @-> tcpv4v6 @-> conn @-> http_server @-> job)
let conn =
let connect _ modname = function
| [ _tcpv4v6; ctx ] ->
code ~pos:__POS__ {ocaml|%s.connect %s|ocaml} modname ctx
| _ -> assert false
in
impl ~connect "Connect.Make" (tcpv4v6 @-> mimic @-> conn)
(kv_ro @-> kv_ro @-> kv_ro @-> tcpv4v6 @-> http_server @-> job)
let stackv4v6 = generic_stackv4v6 default_network
let tcpv4v6 = tcpv4v6_of_stackv4v6 stackv4v6
@ -30,14 +18,8 @@ let dns = generic_dns_client stackv4v6 he
let certificates = crunch "../data/tls/certificates"
let keys = crunch "../data/tls/keys"
let assets = crunch "../data/assets"
let conn =
let happy_eyeballs = mimic_happy_eyeballs stackv4v6 he dns in
conn $ tcpv4v6 $ happy_eyeballs
let port = Runtime_arg.create ~pos:__POS__ "Unikernel.port"
let http_server = paf_server ~port tcpv4v6
let () =
register "mte"
[ mte $ assets $ certificates $ keys $ tcpv4v6 $ conn $ http_server ]
register "mte" [ mte $ assets $ certificates $ keys $ tcpv4v6 $ http_server ]