From 4f597560973de81e1c8fae45f1e3d419fa10a356 Mon Sep 17 00:00:00 2001 From: Andreas Peters Date: Sat, 10 Aug 2019 22:11:43 +0200 Subject: [PATCH] add mesos basic auth --- apps/dcos_net/src/dcos_net_mesos.erl | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/apps/dcos_net/src/dcos_net_mesos.erl b/apps/dcos_net/src/dcos_net_mesos.erl index b936aa77..52f4775c 100644 --- a/apps/dcos_net/src/dcos_net_mesos.erl +++ b/apps/dcos_net/src/dcos_net_mesos.erl @@ -100,8 +100,9 @@ request(Method, Request, HTTPOptions, Opts) -> URI = mesos_uri(URIPath), Headers0 = maybe_add_token(Headers), Headers1 = add_useragent(Headers0), + Headers2 = add_basic_auth(Headers1), Request0 = setelement(1, Request, URI), - Request1 = setelement(2, Request0, Headers1), + Request1 = setelement(2, Request0, Headers2), httpc:request(Method, Request1, mesos_http_options(HTTPOptions), Opts). -spec(handle_response({ok, response()} | {error, Reason :: term()}) -> @@ -127,6 +128,15 @@ maybe_add_token(Headers) -> [{"Authorization", AuthToken1}|Headers] end. +-spec(add_basic_auth(httpc:headers()) -> httpc:headers()). +add_basic_auth(Headers) -> + case os:getenv("MESOS_BASIC_AUTH") of + false -> + Headers; + BasicAuth -> + [{"Authorization", BasicAuth}|Headers] + end. + -spec(add_useragent(httpc:headers()) -> httpc:headers()). add_useragent(Headers) -> UserAgent = lists:concat([atom_to_list(node()), " (pid ", os:getpid(), ")"]),