diff --git a/.gitlab/ci/templates.yml b/.gitlab/ci/templates.yml index 57a04fcdc738ff2678f403701d23a5cc22766c76..1e14b3fdbe53c02568f94e512c0498d8b53252ac 100644 --- a/.gitlab/ci/templates.yml +++ b/.gitlab/ci/templates.yml @@ -2,7 +2,7 @@ variables: # /!\ CI_REGISTRY is overriden to use a private Docker registry mirror in AWS ECR # in GitLab namespaces `nomadic-labs` and `tezos` ## This value MUST be the same as `opam_repository_tag` in `scripts/version.sh` - build_deps_image_version: 575ab3679d48a9ffe1823859374692b8dd134d08 + build_deps_image_version: df8d0aa9d9a08a49cf97f27e58662c10fb3f70f2 build_deps_image_name: "${CI_REGISTRY}/tezos/opam-repository" GIT_STRATEGY: fetch GIT_DEPTH: "1" diff --git a/manifest/main.ml b/manifest/main.ml index 650c9323551db33daa5e699d1175b058334da088..66fe6814cfdfc86991e493889b2dfe4807de98ae 100644 --- a/manifest/main.ml +++ b/manifest/main.ml @@ -293,7 +293,7 @@ let qcheck_core = external_lib "qcheck-core" V.True let re = external_lib ~js_compatible:true "re" V.(at_least "1.7.2") -let resto_version = V.(at_least "0.10" && less_than "1.0") +let resto_version = V.(at_least "1.0") let resto = external_lib ~js_compatible:true "resto" resto_version diff --git a/opam/tezos-mockup-proxy.opam b/opam/tezos-mockup-proxy.opam index 8be49e5df5365368d40ed3ca03906931f8278ada..1e1fe32fddb0da5042d0f21d5015462103f06891 100644 --- a/opam/tezos-mockup-proxy.opam +++ b/opam/tezos-mockup-proxy.opam @@ -13,7 +13,7 @@ depends: [ "tezos-client-base" "tezos-protocol-environment" "tezos-rpc-http" - "resto-cohttp-self-serving-client" { >= "0.10" & < "1.0" } + "resto-cohttp-self-serving-client" { >= "1.0" } "tezos-rpc-http-client" "tezos-shell-services" "uri" { >= "2.2.0" } diff --git a/opam/tezos-mockup.opam b/opam/tezos-mockup.opam index 39bfaf29438d89d8c17a47496a362040eff7af23..e0e8eb524ba6c928c98a16b7c92854d09513421c 100644 --- a/opam/tezos-mockup.opam +++ b/opam/tezos-mockup.opam @@ -12,7 +12,7 @@ depends: [ "tezos-base" "tezos-client-base" "tezos-mockup-proxy" - "resto-cohttp-self-serving-client" { >= "0.10" & < "1.0" } + "resto-cohttp-self-serving-client" { >= "1.0" } "tezos-rpc" "tezos-p2p-services" "tezos-p2p" diff --git a/opam/tezos-rpc-http-client-unix.opam b/opam/tezos-rpc-http-client-unix.opam index e7791ac00d3082993d2cf932fec3abcc198219ca..b728543e1d8d0505e698755d5aaaa5317e62199d 100644 --- a/opam/tezos-rpc-http-client-unix.opam +++ b/opam/tezos-rpc-http-client-unix.opam @@ -12,7 +12,7 @@ depends: [ "tezos-stdlib-unix" "tezos-base" "cohttp-lwt-unix" { >= "2.2.0" } - "resto-cohttp-client" { >= "0.10" & < "1.0" } + "resto-cohttp-client" { >= "1.0" } "tezos-rpc-http-client" ] build: [ diff --git a/opam/tezos-rpc-http-client.opam b/opam/tezos-rpc-http-client.opam index 85248e3c6f8720c836e89b7a8d1ae9821ccfa518..060aaa04d2723f0b1d24dd1e3cc98c7189ed0faa 100644 --- a/opam/tezos-rpc-http-client.opam +++ b/opam/tezos-rpc-http-client.opam @@ -10,7 +10,7 @@ license: "MIT" depends: [ "dune" { >= "3.0" } "tezos-base" - "resto-cohttp-client" { >= "0.10" & < "1.0" } + "resto-cohttp-client" { >= "1.0" } "tezos-rpc-http" ] build: [ diff --git a/opam/tezos-rpc-http-server.opam b/opam/tezos-rpc-http-server.opam index 664be09e9928255554ce0299a1db0e6264b57ee7..777f8ab3c0bc9c3fa9346943d3e58f6b531d1175 100644 --- a/opam/tezos-rpc-http-server.opam +++ b/opam/tezos-rpc-http-server.opam @@ -11,8 +11,8 @@ depends: [ "dune" { >= "3.0" } "tezos-base" "tezos-stdlib-unix" - "resto-cohttp-server" { >= "0.10" & < "1.0" } - "resto-acl" { >= "0.10" & < "1.0" } + "resto-cohttp-server" { >= "1.0" } + "resto-acl" { >= "1.0" } "tezos-rpc" "tezos-rpc-http" "tezos-stdlib" {with-test} diff --git a/opam/tezos-rpc-http.opam b/opam/tezos-rpc-http.opam index 04b6cff8eab087bbfdea921325330da054519867..f2f4c80538bcfab46c2dc69bd6878e4058f32013 100644 --- a/opam/tezos-rpc-http.opam +++ b/opam/tezos-rpc-http.opam @@ -10,7 +10,7 @@ license: "MIT" depends: [ "dune" { >= "3.0" } "tezos-base" - "resto-cohttp" { >= "0.10" & < "1.0" } + "resto-cohttp" { >= "1.0" } "uri" { >= "2.2.0" } ] build: [ diff --git a/opam/tezos-rpc.opam b/opam/tezos-rpc.opam index 5b2a9e42bb17d0be23eff1cb4f1350060d16012a..bce9eefe83e6b05d631145f59bb223d815235b73 100644 --- a/opam/tezos-rpc.opam +++ b/opam/tezos-rpc.opam @@ -11,8 +11,8 @@ depends: [ "dune" { >= "3.0" } "data-encoding" { >= "0.6" & < "0.7" } "tezos-error-monad" - "resto" { >= "0.10" & < "1.0" } - "resto-directory" { >= "0.10" & < "1.0" } + "resto" { >= "1.0" } + "resto-directory" { >= "1.0" } "uri" { >= "2.2.0" } ] build: [ diff --git a/scripts/version.sh b/scripts/version.sh index ac0925c6adf434b6d0ac662ad2f2afc086312c66..57350db7585a6b08f95e583b018f26d9484813cf 100755 --- a/scripts/version.sh +++ b/scripts/version.sh @@ -25,7 +25,7 @@ export full_opam_repository_tag=5b15e5ee8adbd7522032018e1694f547555ba2b6 ## opam_repository is an additional, tezos-specific opam repository. ## This value MUST be the same as `build_deps_image_version` in `.gitlab/ci/templates.ym export opam_repository_url=https://gitlab.com/tezos/opam-repository -export opam_repository_tag=575ab3679d48a9ffe1823859374692b8dd134d08 +export opam_repository_tag=df8d0aa9d9a08a49cf97f27e58662c10fb3f70f2 export opam_repository_git=$opam_repository_url.git export opam_repository=$opam_repository_git\#$opam_repository_tag diff --git a/src/bin_dal_node/RPC_server.ml b/src/bin_dal_node/RPC_server.ml index 8af87431a3318c0602f3d45b20391e75296b9bbb..01076976ec0aa7d73b10479a94476d4bf7b84170 100644 --- a/src/bin_dal_node/RPC_server.ml +++ b/src/bin_dal_node/RPC_server.ml @@ -109,15 +109,17 @@ let start configuration dir = let host = Ipaddr.V6.to_string rpc_addr in let node = `TCP (`Port rpc_port) in let acl = RPC_server.Acl.default rpc_addr in + let server = + RPC_server.init_server dir ~acl ~media_types:Media_type.all_media_types + in Lwt.catch (fun () -> - let* server = + let* () = RPC_server.launch - ~media_types:Media_type.all_media_types ~host - ~acl + server + ~callback:(RPC_server.resto_callback server) node - dir in return_ok server) fail_with_exn diff --git a/src/bin_node/node_run_command.ml b/src/bin_node/node_run_command.ml index c5c276d8c40aecfb7d81ebda799634d4c1860164..3a2aecd57ac37d866838b5ab3bf19ed7b9fce73e 100644 --- a/src/bin_node/node_run_command.ml +++ b/src/bin_node/node_run_command.ml @@ -404,53 +404,49 @@ let launch_rpc_server ~acl_policy ~media_types (config : Node_config_file.t) let cors_headers = sanitize_cors_headers ~default:["Content-Type"] rpc_config.cors_headers in - let metric_middleware = - let transform_callback callback connection request body = - let do_call () = callback connection request body in - let cohttp_meth = Cohttp.Request.meth request in - let uri = Cohttp.Request.uri request in - let path = Uri.path uri in - let decoded = Resto.Utils.decode_split_path path in - let*! description = - let* resto_meth = - match cohttp_meth with - | #Resto.meth as meth -> Lwt.return_ok meth - | _ -> Lwt.return_error @@ `Method_not_allowed [] - in - let* uri_desc = - RPC_directory.lookup_uri_desc dir () resto_meth decoded - in - Lwt.return_ok (uri_desc, Resto.string_of_meth resto_meth) + let transform_callback callback connection request body = + let open Lwt_result_syntax in + let do_call () = callback connection request body in + let cohttp_meth = Cohttp.Request.meth request in + let uri = Cohttp.Request.uri request in + let path = Uri.path uri in + let decoded = Resto.Utils.decode_split_path path in + let*! description = + let* resto_meth = + match cohttp_meth with + | #Resto.meth as meth -> Lwt.return_ok meth + | _ -> Lwt.return_error @@ `Method_not_allowed [] in - match description with - | Ok (uri, meth) -> - (* We update the metric only if the URI can succesfully - be matched in the directory tree. *) - Prometheus.Summary.(time (labels metric [uri; meth]) Sys.time do_call) - | Error _ -> - (* Otherwise, the call must be done anyway. *) - do_call () + let* uri_desc = RPC_directory.lookup_uri_desc dir () resto_meth decoded in + Lwt.return_ok (uri_desc, Resto.string_of_meth resto_meth) in - let is_metric_collection_enable = List.is_empty config.metrics_addr in - if is_metric_collection_enable then None - else Some Resto_cohttp_server.Server.{transform_callback} + match description with + | Ok (uri, meth) -> + (* We update the metric only if the URI can succesfully + be matched in the directory tree. *) + Prometheus.Summary.(time (labels metric [uri; meth]) Sys.time do_call) + | Error _ -> + (* Otherwise, the call must be done anyway. *) + do_call () + in + let cors = + RPC_server. + { + allowed_origins = rpc_config.cors_origins; + allowed_headers = cors_headers; + } in + let server = + RPC_server.init_server + ~cors + ~acl + ~media_types:(Media_type.Command_line.of_command_line media_types) + dir + in + let callback = transform_callback (RPC_server.resto_callback server) in Lwt.catch (fun () -> - let*! server = - RPC_server.launch - ~host - mode - dir - ~acl - ?middleware:metric_middleware - ~media_types:(Media_type.Command_line.of_command_line media_types) - ~cors: - { - allowed_origins = rpc_config.cors_origins; - allowed_headers = cors_headers; - } - in + let*! () = RPC_server.launch ~host server ~callback mode in return server) (function (* FIXME: https://gitlab.com/tezos/tezos/-/issues/1312 diff --git a/src/bin_proxy_server/proxy_server_main_run.ml b/src/bin_proxy_server/proxy_server_main_run.ml index 44af1c9d3ee8f8fbe489bdde6ca812e3de8dd7f3..23ba6e23918fcdcb6875c5e554ebd5a276f3e005 100644 --- a/src/bin_proxy_server/proxy_server_main_run.ml +++ b/src/bin_proxy_server/proxy_server_main_run.ml @@ -63,19 +63,24 @@ let launch_rpc_server dir {address; port; tls_cert_and_key; forwarding_endpoint} | Some (cert, key) -> `TLS (`Crt_file_path cert, `Key_file_path key, `No_password, `Port port) in + let server = + Tezos_rpc_http_server.RPC_server.init_server + dir + ~media_types:Tezos_rpc_http.Media_type.all_media_types + in let middleware = Tezos_rpc_http_server.RPC_middleware.proxy_server_query_forwarder forwarding_endpoint in + let callback = + Tezos_rpc_http_server.RPC_server.resto_callback server |> middleware + in Lwt.catch (fun () -> - Lwt_result.ok - @@ Tezos_rpc_http_server.RPC_server.launch - ~host - mode - dir - ~middleware - ~media_types:Tezos_rpc_http.Media_type.all_media_types) + let*! () = + Tezos_rpc_http_server.RPC_server.launch ~host server ~callback mode + in + Lwt.return_ok server) (function | Unix.Unix_error (Unix.EADDRINUSE, "bind", "") -> tzfail (Proxy_server_RPC_Port_already_in_use [(address, port)]) diff --git a/src/bin_signer/http_daemon.ml b/src/bin_signer/http_daemon.ml index 48f3801b993482b9e1e51a4412c743aa74212541..b40fe873e1962752cde67a9420d0e21d6a9202b0 100644 --- a/src/bin_signer/http_daemon.ml +++ b/src/bin_signer/http_daemon.ml @@ -52,17 +52,20 @@ let run (cctxt : #Client_context.wallet) ~hosts ?magic_bytes return_some hashes else return_none) in + let server = + RPC_server.init_server ~media_types:Media_type.all_media_types dir + in Lwt.catch (fun () -> List.map (fun host -> let*! () = Events.(emit listening) host in - let*! _server = + let*! () = RPC_server.launch ~host:(Ipaddr.V6.to_string host) + server + ~callback:(RPC_server.resto_callback server) mode - dir - ~media_types:Media_type.all_media_types in Lwt_utils.never_ending ()) hosts diff --git a/src/lib_rpc_http/RPC_client.ml b/src/lib_rpc_http/RPC_client.ml index c415041479520bc8f36ec2883cebd03d9df786d4..6466d2e374dc1a5ee2bc3c5f378072b10fa2ebf3 100644 --- a/src/lib_rpc_http/RPC_client.ml +++ b/src/lib_rpc_http/RPC_client.ml @@ -139,15 +139,23 @@ module Make (Client : Resto_cohttp_client.Client.CALL) = struct let generic_call ?headers ?accept ?body ?media meth uri : (content, content) RPC_context.rest_result Lwt.t = let open Lwt_syntax in - let* r = Client.generic_call meth ?headers ?accept ?body ?media uri in + let* r = + Client.generic_call + meth + ?headers + ?accept + ?body + ?media + ~redirect_behaviour: + (Resto_cohttp_client.Client.Follow_redirects {limit = 20}) + uri + in match r with | `Ok (Some v) -> return_ok (`Ok v) | `Ok None -> request_failed meth uri Empty_answer | ( `Conflict _ | `Error _ | `Forbidden _ | `Unauthorized _ | `Not_found _ | `Gone _ ) as v -> return_ok v - | `Unexpected_status_code (`Moved_permanently, _) -> - request_failed meth uri Redirect_not_supported | `Unexpected_status_code (code, (content, _, media_type)) -> let media_type = Option.map Media_type.name media_type in let* content = Cohttp_lwt.Body.to_string content in @@ -171,6 +179,10 @@ module Make (Client : Resto_cohttp_client.Client.CALL) = struct | `OCaml_exception msg -> request_failed meth uri (OCaml_exception msg) | `Unauthorized_host host -> request_failed meth uri (Unauthorized_host host) + | `Too_many_redirects msg -> + request_failed meth uri (Too_many_redirects msg) + | `Redirect_without_location msg -> + request_failed meth uri (Redirect_without_location msg) let handle_error (body, content_type, _) f = let open Lwt_syntax in @@ -409,6 +421,10 @@ module Make (Client : Resto_cohttp_client.Client.CALL) = struct | `OCaml_exception msg -> request_failed meth uri (OCaml_exception msg) | `Unauthorized_host host -> request_failed meth uri (Unauthorized_host host) + | `Too_many_redirects msg -> + request_failed meth uri (Too_many_redirects msg) + | `Redirect_without_location msg -> + request_failed meth uri (Redirect_without_location msg) let call_streamed_service (type p q i o) accept ?logger ?headers ~base (service : (_, _, p, q, i, o) RPC_service.t) ~on_chunk ~on_close diff --git a/src/lib_rpc_http/RPC_client_errors.ml b/src/lib_rpc_http/RPC_client_errors.ml index 08d28b102e8a2f14a37a9cf818cef6e31046bc8d..9c9faf6c042b156cceb2ee6efcd945b32fdc9714 100644 --- a/src/lib_rpc_http/RPC_client_errors.ml +++ b/src/lib_rpc_http/RPC_client_errors.ml @@ -49,7 +49,8 @@ type rpc_error = | OCaml_exception of string | Unauthorized_host of string option | Unauthorized_uri - | Redirect_not_supported + | Too_many_redirects of string + | Redirect_without_location of string type error += | Request_failed of {meth : RPC_service.meth; uri : Uri.t; error : rpc_error} @@ -167,10 +168,20 @@ let rpc_error_encoding = (function () -> Unauthorized_uri); case (Tag 11) - ~title:"Redirect not supported" - unit - (function Redirect_not_supported -> Some () | _ -> None) - (function () -> Redirect_not_supported); + ~title:"Too many redirects" + (obj2 + (req "kind" (constant "too_many_redirects")) + (req "content" string)) + (function Too_many_redirects msg -> Some ((), msg) | _ -> None) + (function (), msg -> Too_many_redirects msg); + case + (Tag 12) + ~title:"Redirect without location" + (obj2 + (req "kind" (constant "redirect_without_location")) + (req "content" string)) + (function Redirect_without_location msg -> Some ((), msg) | _ -> None) + (function (), msg -> Redirect_without_location msg); ] let pp_rpc_error ppf err = @@ -249,10 +260,10 @@ let pp_rpc_error ppf err = Format.fprintf ppf "@[The server doesn't authorize this endpoint (ACL filtering).@]" - | Redirect_not_supported -> - Format.fprintf - ppf - "@[The client does not support following HTTP redirects yet.@]" + | Too_many_redirects msg -> + Format.fprintf ppf "@[Too many redirects: %s.@]" msg + | Redirect_without_location msg -> + Format.fprintf ppf "@[Redirect without location: %s.@]" msg let () = register_error_kind diff --git a/src/lib_rpc_http/RPC_client_errors.mli b/src/lib_rpc_http/RPC_client_errors.mli index 7260d85df6aed317603dd9d2b4c013fb2a290001..3f28975fd96a881326d9904ce5aa4e06c35e00e5 100644 --- a/src/lib_rpc_http/RPC_client_errors.mli +++ b/src/lib_rpc_http/RPC_client_errors.mli @@ -49,9 +49,8 @@ type rpc_error = | OCaml_exception of string | Unauthorized_host of string option | Unauthorized_uri - | Redirect_not_supported - (** Indicates that the endpoint returned a redirect, which the client does - not yet know how to follow. *) + | Too_many_redirects of string + | Redirect_without_location of string type error += | Request_failed of {meth : RPC_service.meth; uri : Uri.t; error : rpc_error} diff --git a/src/lib_rpc_http/RPC_middleware.ml b/src/lib_rpc_http/RPC_middleware.ml index c31c83f6b1ae34a2dc48b20ed4cbaba7ef5c0579..90b5b197b0eb08a0ecce7d83c458f21ed281f899 100644 --- a/src/lib_rpc_http/RPC_middleware.ml +++ b/src/lib_rpc_http/RPC_middleware.ml @@ -25,19 +25,17 @@ let make_transform_callback forwarding_endpoint callback conn req body = let open Lwt_syntax in - let* answer = callback conn req body in let open Cohttp in + let* answer = callback conn req body in let uri = Request.uri req in let answer_has_not_found_status = function | `Expert (response, _) | `Response (response, _) -> - Cohttp.Response.status response = `Not_found + Response.status response = `Not_found in if answer_has_not_found_status answer then let overriding = Uri.to_string forwarding_endpoint ^ Uri.path uri in - let headers = Cohttp.Header.of_list [("Location", overriding)] in - let response = - Cohttp.Response.make ~status:`Moved_permanently ~headers () - in + let headers = Header.of_list [("Location", overriding)] in + let response = Response.make ~status:`Moved_permanently ~headers () in Lwt.return (`Response ( response, @@ -49,5 +47,4 @@ let make_transform_callback forwarding_endpoint callback conn req body = else Lwt.return answer let proxy_server_query_forwarder forwarding_endpoint = - Resto_cohttp_server.Server. - {transform_callback = make_transform_callback forwarding_endpoint} + make_transform_callback forwarding_endpoint diff --git a/src/lib_rpc_http/RPC_middleware.mli b/src/lib_rpc_http/RPC_middleware.mli index b071e1dbb84dff0a09d3958c6540028b5f57d892..405721b22cf90737dd8d34a74dc2f907a9650934 100644 --- a/src/lib_rpc_http/RPC_middleware.mli +++ b/src/lib_rpc_http/RPC_middleware.mli @@ -23,10 +23,11 @@ (* *) (*****************************************************************************) -(** This module provides a middleware that is used by the proxy server to +(** This module provides middlewares that is used by the RPC servers to forward unsupported RPCs to a full node. *) -(** A Resto middleware that rewrites any queries that the proxy server cannot +(** A Resto middleware that transform any callback to an other + that rewrites queries that the proxy server cannot handle and forwards them to the full node at the given [Uri.t]. *) val proxy_server_query_forwarder : - Uri.t -> Resto_cohttp_server.Server.middleware + Uri.t -> RPC_server.callback -> RPC_server.callback diff --git a/src/lib_rpc_http/RPC_server.mli b/src/lib_rpc_http/RPC_server.mli index 3ea2fe513d66c615ff6774790834f5beb7dc6e65..4d50adb7f58fe8471f41f94d0153f8d17ab11276 100644 --- a/src/lib_rpc_http/RPC_server.mli +++ b/src/lib_rpc_http/RPC_server.mli @@ -30,17 +30,30 @@ type cors = {allowed_headers : string list; allowed_origins : string list} (** A handle on the server worker. *) type server -(** Promise a running RPC server.*) -val launch : - ?host:string -> +type callback = + Cohttp_lwt_unix.Server.conn -> + Cohttp.Request.t -> + Cohttp_lwt.Body.t -> + Cohttp_lwt_unix.Server.response_action Lwt.t + +val resto_callback : server -> callback + +(** Initializes a RPC server *) +val init_server : ?cors:cors -> ?agent:string -> ?acl:Resto_acl.Acl.t -> - ?middleware:Resto_cohttp_server.Server.middleware -> media_types:Media_type.t list -> - Conduit_lwt_unix.server -> unit RPC_directory.t -> - server Lwt.t + server + +(** Promise [server].*) +val launch : + ?host:string -> + server -> + ?callback:callback -> + Conduit_lwt_unix.server -> + unit Lwt.t (** Kill an RPC server. *) val shutdown : server -> unit Lwt.t diff --git a/src/proto_014_PtKathma/lib_tx_rollup/RPC.ml b/src/proto_014_PtKathma/lib_tx_rollup/RPC.ml index 6ea41409203cf5ccc5f12af38fb16ca0a1204ca0..db05621117995162528ec7b0a17fc21c15c92a1d 100644 --- a/src/proto_014_PtKathma/lib_tx_rollup/RPC.ml +++ b/src/proto_014_PtKathma/lib_tx_rollup/RPC.ml @@ -780,19 +780,24 @@ let start_server configuration state = let cors_headers = sanitize_cors_headers ~default:["Content-Type"] cors_headers in + let server = + RPC_server.init_server + dir + ~acl + ~cors:{allowed_headers = cors_headers; allowed_origins = cors_origins} + ~media_types:Media_type.all_media_types + in Lwt.catch (fun () -> - let*! rpc_server = + let*! () = RPC_server.launch - ~media_types:Media_type.all_media_types ~host - ~acl - ~cors:{allowed_headers = cors_headers; allowed_origins = cors_origins} + server + ~callback:(RPC_server.resto_callback server) node - dir in let*! () = Event.(emit rpc_server_is_ready) rpc_addr in - return rpc_server) + return server) fail_with_exn let balance ctxt (block : block_id) ticket tz4 = diff --git a/src/proto_015_PtLimaPt/lib_tx_rollup/RPC.ml b/src/proto_015_PtLimaPt/lib_tx_rollup/RPC.ml index 4a76785610d4bda5b7d7ac5d4ba61d88d7cddefe..c53a833bf64f9d18c82067a337156f3932c6a5ba 100644 --- a/src/proto_015_PtLimaPt/lib_tx_rollup/RPC.ml +++ b/src/proto_015_PtLimaPt/lib_tx_rollup/RPC.ml @@ -770,19 +770,24 @@ let start_server configuration state = let cors_headers = sanitize_cors_headers ~default:["Content-Type"] cors_headers in + let server = + RPC_server.init_server + dir + ~acl + ~cors:{allowed_headers = cors_headers; allowed_origins = cors_origins} + ~media_types:Media_type.all_media_types + in Lwt.catch (fun () -> - let*! rpc_server = + let*! () = RPC_server.launch - ~media_types:Media_type.all_media_types ~host - ~acl - ~cors:{allowed_headers = cors_headers; allowed_origins = cors_origins} + server + ~callback:(RPC_server.resto_callback server) node - dir in let*! () = Event.(emit rpc_server_is_ready) rpc_addr in - return rpc_server) + return server) fail_with_exn let balance ctxt (block : block_id) ticket tz4 = diff --git a/src/proto_alpha/bin_sc_rollup_node/RPC_server.ml b/src/proto_alpha/bin_sc_rollup_node/RPC_server.ml index a1edb191bb692c8a81d0af98024de9e71cd83814..a218a7bc1138e12a71eee466be2e44fd6cbf0433 100644 --- a/src/proto_alpha/bin_sc_rollup_node/RPC_server.ml +++ b/src/proto_alpha/bin_sc_rollup_node/RPC_server.ml @@ -156,20 +156,25 @@ module Common = struct return state.num_ticks) let start configuration dir = + let open Lwt_result_syntax in let Configuration.{rpc_addr; rpc_port; _} = configuration in let rpc_addr = P2p_addr.of_string_exn rpc_addr in let host = Ipaddr.V6.to_string rpc_addr in let node = `TCP (`Port rpc_port) in let acl = RPC_server.Acl.default rpc_addr in + let server = + RPC_server.init_server dir ~acl ~media_types:Media_type.all_media_types + in Lwt.catch (fun () -> - RPC_server.launch - ~media_types:Media_type.all_media_types - ~host - ~acl - node - dir - >>= return) + let*! () = + RPC_server.launch + ~host + server + ~callback:(RPC_server.resto_callback server) + node + in + return server) fail_with_exn let shutdown = RPC_server.shutdown diff --git a/src/proto_alpha/lib_tx_rollup/RPC.ml b/src/proto_alpha/lib_tx_rollup/RPC.ml index 4a76785610d4bda5b7d7ac5d4ba61d88d7cddefe..c53a833bf64f9d18c82067a337156f3932c6a5ba 100644 --- a/src/proto_alpha/lib_tx_rollup/RPC.ml +++ b/src/proto_alpha/lib_tx_rollup/RPC.ml @@ -770,19 +770,24 @@ let start_server configuration state = let cors_headers = sanitize_cors_headers ~default:["Content-Type"] cors_headers in + let server = + RPC_server.init_server + dir + ~acl + ~cors:{allowed_headers = cors_headers; allowed_origins = cors_origins} + ~media_types:Media_type.all_media_types + in Lwt.catch (fun () -> - let*! rpc_server = + let*! () = RPC_server.launch - ~media_types:Media_type.all_media_types ~host - ~acl - ~cors:{allowed_headers = cors_headers; allowed_origins = cors_origins} + server + ~callback:(RPC_server.resto_callback server) node - dir in let*! () = Event.(emit rpc_server_is_ready) rpc_addr in - return rpc_server) + return server) fail_with_exn let balance ctxt (block : block_id) ticket tz4 = diff --git a/tezt/tests/expected/RPC_test.ml/Alpha- (mode proxy_server_data_dir) RPC regression tests- contracts.out b/tezt/tests/expected/RPC_test.ml/Alpha- (mode proxy_server_data_dir) RPC regression tests- contracts.out index 0eb2728992324c66fc423d3afda519e2c6e9abfe..4fbd5e0f6a1f8c93dca68c805591ea17d75ae4de 100644 --- a/tezt/tests/expected/RPC_test.ml/Alpha- (mode proxy_server_data_dir) RPC regression tests- contracts.out +++ b/tezt/tests/expected/RPC_test.ml/Alpha- (mode proxy_server_data_dir) RPC regression tests- contracts.out @@ -48,32 +48,24 @@ null ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]' { "balance": "99999393", "delegate": "[PUBLIC_KEY_HASH]", @@ -92,25 +84,19 @@ Error: "[PUBLIC_KEY_HASH]" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]' { "balance": "0", @@ -132,18 +118,14 @@ Error: "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { @@ -343,18 +325,14 @@ null "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { diff --git a/tezt/tests/expected/RPC_test.ml/Alpha- (mode proxy_server_rpc) RPC regression tests- contracts.out b/tezt/tests/expected/RPC_test.ml/Alpha- (mode proxy_server_rpc) RPC regression tests- contracts.out index 0eb2728992324c66fc423d3afda519e2c6e9abfe..4fbd5e0f6a1f8c93dca68c805591ea17d75ae4de 100644 --- a/tezt/tests/expected/RPC_test.ml/Alpha- (mode proxy_server_rpc) RPC regression tests- contracts.out +++ b/tezt/tests/expected/RPC_test.ml/Alpha- (mode proxy_server_rpc) RPC regression tests- contracts.out @@ -48,32 +48,24 @@ null ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]' { "balance": "99999393", "delegate": "[PUBLIC_KEY_HASH]", @@ -92,25 +84,19 @@ Error: "[PUBLIC_KEY_HASH]" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]' { "balance": "0", @@ -132,18 +118,14 @@ Error: "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { @@ -343,18 +325,14 @@ null "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { diff --git a/tezt/tests/expected/RPC_test.ml/Kathmandu- (mode proxy_server_data_dir) RPC regression tests- contracts.out b/tezt/tests/expected/RPC_test.ml/Kathmandu- (mode proxy_server_data_dir) RPC regression tests- contracts.out index 0eb2728992324c66fc423d3afda519e2c6e9abfe..4fbd5e0f6a1f8c93dca68c805591ea17d75ae4de 100644 --- a/tezt/tests/expected/RPC_test.ml/Kathmandu- (mode proxy_server_data_dir) RPC regression tests- contracts.out +++ b/tezt/tests/expected/RPC_test.ml/Kathmandu- (mode proxy_server_data_dir) RPC regression tests- contracts.out @@ -48,32 +48,24 @@ null ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]' { "balance": "99999393", "delegate": "[PUBLIC_KEY_HASH]", @@ -92,25 +84,19 @@ Error: "[PUBLIC_KEY_HASH]" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]' { "balance": "0", @@ -132,18 +118,14 @@ Error: "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { @@ -343,18 +325,14 @@ null "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { diff --git a/tezt/tests/expected/RPC_test.ml/Kathmandu- (mode proxy_server_rpc) RPC regression tests- contracts.out b/tezt/tests/expected/RPC_test.ml/Kathmandu- (mode proxy_server_rpc) RPC regression tests- contracts.out index 0eb2728992324c66fc423d3afda519e2c6e9abfe..4fbd5e0f6a1f8c93dca68c805591ea17d75ae4de 100644 --- a/tezt/tests/expected/RPC_test.ml/Kathmandu- (mode proxy_server_rpc) RPC regression tests- contracts.out +++ b/tezt/tests/expected/RPC_test.ml/Kathmandu- (mode proxy_server_rpc) RPC regression tests- contracts.out @@ -48,32 +48,24 @@ null ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]' { "balance": "99999393", "delegate": "[PUBLIC_KEY_HASH]", @@ -92,25 +84,19 @@ Error: "[PUBLIC_KEY_HASH]" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]' { "balance": "0", @@ -132,18 +118,14 @@ Error: "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { @@ -343,18 +325,14 @@ null "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { diff --git a/tezt/tests/expected/RPC_test.ml/Lima- (mode proxy_server_data_dir) RPC regression tests- contracts.out b/tezt/tests/expected/RPC_test.ml/Lima- (mode proxy_server_data_dir) RPC regression tests- contracts.out index 0eb2728992324c66fc423d3afda519e2c6e9abfe..4fbd5e0f6a1f8c93dca68c805591ea17d75ae4de 100644 --- a/tezt/tests/expected/RPC_test.ml/Lima- (mode proxy_server_data_dir) RPC regression tests- contracts.out +++ b/tezt/tests/expected/RPC_test.ml/Lima- (mode proxy_server_data_dir) RPC regression tests- contracts.out @@ -48,32 +48,24 @@ null ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]' { "balance": "99999393", "delegate": "[PUBLIC_KEY_HASH]", @@ -92,25 +84,19 @@ Error: "[PUBLIC_KEY_HASH]" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]' { "balance": "0", @@ -132,18 +118,14 @@ Error: "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { @@ -343,18 +325,14 @@ null "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { diff --git a/tezt/tests/expected/RPC_test.ml/Lima- (mode proxy_server_rpc) RPC regression tests- contracts.out b/tezt/tests/expected/RPC_test.ml/Lima- (mode proxy_server_rpc) RPC regression tests- contracts.out index 0eb2728992324c66fc423d3afda519e2c6e9abfe..4fbd5e0f6a1f8c93dca68c805591ea17d75ae4de 100644 --- a/tezt/tests/expected/RPC_test.ml/Lima- (mode proxy_server_rpc) RPC regression tests- contracts.out +++ b/tezt/tests/expected/RPC_test.ml/Lima- (mode proxy_server_rpc) RPC regression tests- contracts.out @@ -48,32 +48,24 @@ null ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/delegate - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]' { "balance": "99999393", "delegate": "[PUBLIC_KEY_HASH]", @@ -92,25 +84,19 @@ Error: "[PUBLIC_KEY_HASH]" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/entrypoints - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/script - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[PUBLIC_KEY_HASH]/storage - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]' { "balance": "0", @@ -132,18 +118,14 @@ Error: "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { @@ -343,18 +325,14 @@ null "0" ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/counter - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc get '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key' -Error: - Rpc request failed: - - meth: GET - - uri: http://localhost:[PORT]/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/manager_key - - error: The client does not support following HTTP redirects yet. +Fatal error: + No service found at this URL + ./octez-client rpc post '/chains/main/blocks/head/context/contracts/[CONTRACT_HASH]/big_map_get' with '{ "key": { diff --git a/tezt/tests/synchronisation_heuristic.ml b/tezt/tests/synchronisation_heuristic.ml index 5c0eeab94a25bb9737068e8795b2bfcc87adc58d..7299f3969014733dc9fef42dd839b7148334d8f2 100644 --- a/tezt/tests/synchronisation_heuristic.ml +++ b/tezt/tests/synchronisation_heuristic.ml @@ -207,7 +207,7 @@ let check_sync_state ?__LOC__ ?endpoint client expected_state = in Check.(sync_state.sync_state = expected_state) sync_state_typ - ~error_msg:"Expected node to be %L, was %R" ; + ~error_msg:"Expected node to be %R, was %L" ; unit (* Threshold 0, peer always bootstrapped. *)