From a522cb834fb0a7265babc06e6bbb1bbc5498354e Mon Sep 17 00:00:00 2001 From: Michiel Borkent Date: Wed, 21 Oct 2020 13:58:59 +0200 Subject: [PATCH] Tweak socket config --- src/babashka/pods/impl.clj | 13 +++++++------ test-pod/pod/test_pod.clj | 2 +- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/babashka/pods/impl.clj b/src/babashka/pods/impl.clj index 5fdd2fa..5b6fec1 100644 --- a/src/babashka/pods/impl.clj +++ b/src/babashka/pods/impl.clj @@ -261,20 +261,21 @@ (defn load-pod ([pod-spec] (load-pod pod-spec nil)) - ([pod-spec {:keys [:remove-ns :resolve :socket]}] + ([pod-spec {:keys [:remove-ns :resolve :transport]}] (let [pod-spec (if (string? pod-spec) [pod-spec] pod-spec) pb (ProcessBuilder. ^java.util.List pod-spec) - _ (if socket + socket? (identical? :socket transport) + _ (if socket? (.inheritIO pb) (.redirectError pb java.lang.ProcessBuilder$Redirect/INHERIT)) _ (cond-> (doto (.environment pb) (.put "BABASHKA_POD" "true")) - socket (.put "BABASHKA_POD_SOCKET" "true")) + socket? (.put "BABASHKA_POD_TRANSPORT" "socket")) p (.start pb) - port-file (when socket (port-file (.pid p))) - socket-port (when socket (read-port port-file)) + port-file (when socket? (port-file (.pid p))) + socket-port (when socket? (read-port port-file)) [socket stdin stdout] - (if socket + (if socket? (let [^Socket socket (loop [] (if-let [sock (try (create-socket "localhost" socket-port) diff --git a/test-pod/pod/test_pod.clj b/test-pod/pod/test_pod.clj index 989a5dd..b269ad1 100644 --- a/test-pod/pod/test_pod.clj +++ b/test-pod/pod/test_pod.clj @@ -57,7 +57,7 @@ :edn edn/read-string :json #(cheshire/parse-string % true) :transit+json transit-json-read) - socket (= "true" (System/getenv "BABASHKA_POD_SOCKET")) + socket (= "socket" (System/getenv "BABASHKA_POD_TRANSPORT")) [in out] (if socket (let [server (ServerSocket. 0) port (.getLocalPort server)