From 3dd236e1280e3b5cb022c18a514c8a77d1e86b9e Mon Sep 17 00:00:00 2001 From: frikky Date: Fri, 27 Jan 2023 11:25:18 +0100 Subject: [PATCH] Added SHUFFLE_WORKER_SERVER_URL environment variable to make Orborus and Worker be able to force themselves to connect to themselves --- .env | 1 + functions/onprem/orborus/build.sh | 2 +- functions/onprem/orborus/go.mod | 2 +- functions/onprem/orborus/go.sum | 2 ++ functions/onprem/orborus/orborus.go | 17 ++++++++++++++--- 5 files changed, 19 insertions(+), 5 deletions(-) diff --git a/.env b/.env index 023a973f..f5607f7d 100644 --- a/.env +++ b/.env @@ -64,6 +64,7 @@ SHUFFLE_LOGS_DISABLED=false SHUFFLE_CHAT_DISABLED=false # Controls support chat SHUFFLE_RERUN_SCHEDULE=300 SHUFFLE_DISABLE_RERUN_AND_ABORT=false +SHUFFLE_WORKER_SERVER_URL= # Definition in case Worker & Orborus is talking to the wrong server # DATABASE CONFIGURATIONS DATASTORE_EMULATOR_HOST=shuffle-database:8000 diff --git a/functions/onprem/orborus/build.sh b/functions/onprem/orborus/build.sh index c3d288f2..26265cda 100644 --- a/functions/onprem/orborus/build.sh +++ b/functions/onprem/orborus/build.sh @@ -1,5 +1,5 @@ NAME=shuffle-orborus -VERSION=1.0.9 +VERSION=1.1.1 echo "Running docker build with $NAME:$VERSION" #docker rmi frikky/shuffle:$NAME --force diff --git a/functions/onprem/orborus/go.mod b/functions/onprem/orborus/go.mod index 7d11eb8c..c9f54917 100644 --- a/functions/onprem/orborus/go.mod +++ b/functions/onprem/orborus/go.mod @@ -8,5 +8,5 @@ require ( github.com/docker/go-connections v0.4.0 // indirect github.com/mackerelio/go-osstat v0.2.1 github.com/satori/go.uuid v1.2.0 - github.com/shuffle/shuffle-shared v0.3.24 + github.com/shuffle/shuffle-shared v0.3.43 ) diff --git a/functions/onprem/orborus/go.sum b/functions/onprem/orborus/go.sum index d461abe7..68061674 100644 --- a/functions/onprem/orborus/go.sum +++ b/functions/onprem/orborus/go.sum @@ -800,6 +800,8 @@ github.com/shuffle/shuffle-shared v0.3.5 h1:erfXVKjeSkmpoGczZ6hPETg8gDdZeXYgXsrE github.com/shuffle/shuffle-shared v0.3.5/go.mod h1:YuMle0RjwXb3hxR5PdaOOD9e+hUyK34OABS0UbrT/Sk= github.com/shuffle/shuffle-shared v0.3.24 h1:zBDZan4u2XjC6TAi5BdFoVroBPGYd6PAha+3/cSfD6w= github.com/shuffle/shuffle-shared v0.3.24/go.mod h1:yI6HCog/R3Kq1FvCIVbXedLl87rtSuDOyzolmuMswB4= +github.com/shuffle/shuffle-shared v0.3.43 h1:2Zxoj6vOLJZDM+S2fOlzwGkhVvFhLHA02N41IMF7HDQ= +github.com/shuffle/shuffle-shared v0.3.43/go.mod h1:jQrYySmvp/0De5ftrAaY6xwwr7TMfqBmBxQ2AX9yrjQ= github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= diff --git a/functions/onprem/orborus/orborus.go b/functions/onprem/orborus/orborus.go index 727c1fc5..e1a40f7b 100644 --- a/functions/onprem/orborus/orborus.go +++ b/functions/onprem/orborus/orborus.go @@ -60,8 +60,8 @@ var appSdkVersion = os.Getenv("SHUFFLE_APP_SDK_VERSION") var workerVersion = os.Getenv("SHUFFLE_WORKER_VERSION") var newWorkerImage = os.Getenv("SHUFFLE_WORKER_IMAGE") -//var baseimagename = "docker.pkg.github.com/frikky/shuffle" -//var baseimagename = "ghcr.io/frikky" +// var baseimagename = "docker.pkg.github.com/frikky/shuffle" +// var baseimagename = "ghcr.io/frikky" // var baseimagename = "frikky/shuffle" var baseimagename = os.Getenv("SHUFFLE_BASE_IMAGE_NAME") var baseimageregistry = os.Getenv("SHUFFLE_BASE_IMAGE_REGISTRY") @@ -71,8 +71,9 @@ var baseimagetagsuffix = os.Getenv("SHUFFLE_BASE_IMAGE_TAG_SUFFIX") var auth = os.Getenv("AUTH") var org = os.Getenv("ORG") -//var orgId = os.Getenv("ORG_ID") +// var orgId = os.Getenv("ORG_ID") var baseUrl = os.Getenv("BASE_URL") +var workerServerUrl = os.Getenv("SHUFFLE_WORKER_SERVER_URL") var environment = os.Getenv("ENVIRONMENT_NAME") var dockerApiVersion = os.Getenv("DOCKER_API_VERSION") var runningMode = strings.ToLower(os.Getenv("RUNNING_MODE")) @@ -441,6 +442,10 @@ func deployServiceWorkers(image string) { serviceSpec.TaskTemplate.ContainerSpec.Env = append(serviceSpec.TaskTemplate.ContainerSpec.Env, fmt.Sprintf("NO_PROXY=%s", os.Getenv("NO_PROXY"))) } + if len(workerServerUrl) > 0 { + serviceSpec.TaskTemplate.ContainerSpec.Env = append(serviceSpec.TaskTemplate.ContainerSpec.Env, fmt.Sprintf("SHUFFLE_WORKER_SERVER_URL=%s", os.Getenv("SHUFFLE_WORKER_SERVER_URL"))) + } + if len(os.Getenv("DOCKER_HOST")) > 0 { serviceSpec.TaskTemplate.ContainerSpec.Env = append(serviceSpec.TaskTemplate.ContainerSpec.Env, fmt.Sprintf("DOCKER_HOST=%s", os.Getenv("DOCKER_HOST"))) } else { @@ -1375,6 +1380,7 @@ func sendWorkerRequest(workflowExecution shuffle.ExecutionRequest) error { HTTPProxy: os.Getenv("HTTP_PROXY"), HTTPSProxy: os.Getenv("HTTPS_PROXY"), ShufflePassProxyToApp: os.Getenv("SHUFFLE_PASS_APP_PROXY"), + WorkerServerUrl: os.Getenv("SHUFFLE_WORKER_SERVER_URL"), } parsedBaseurl := baseUrl @@ -1399,6 +1405,11 @@ func sendWorkerRequest(workflowExecution shuffle.ExecutionRequest) error { streamUrl = fmt.Sprintf("%s:33333/api/v1/execute", parsedBaseurl) } + // var workerServerUrl = os.Getenv("SHUFFLE_WORKER_SERVER_URL") + if len(workerServerUrl) > 0 { + streamUrl = fmt.Sprintf("%s:33333/api/v1/execute", workerServerUrl) + } + client := &http.Client{} req, err := http.NewRequest( "POST",