Added sample proxy server for testing with orborus
This commit is contained in:
@@ -24,7 +24,7 @@ require (
|
||||
github.com/h2non/filetype v1.1.3
|
||||
github.com/nirasan/go-oauth-pkce-code-verifier v0.0.0-20170819232839-0fbfe93532da // indirect
|
||||
github.com/satori/go.uuid v1.2.0
|
||||
github.com/shuffle/shuffle-shared v0.1.98
|
||||
github.com/shuffle/shuffle-shared v0.2.3
|
||||
go4.org v0.0.0-20201209231011-d4a079459e60 // indirect
|
||||
golang.org/x/crypto v0.0.0-20220112180741-5e0467b6c7ce
|
||||
google.golang.org/api v0.65.0
|
||||
|
||||
+2
-3
@@ -1,7 +1,7 @@
|
||||
version: '3'
|
||||
services:
|
||||
frontend:
|
||||
build: ./frontend
|
||||
#build: ./frontend
|
||||
image: ghcr.io/frikky/shuffle-frontend:nightly
|
||||
container_name: shuffle-frontend
|
||||
hostname: shuffle-frontend
|
||||
@@ -16,7 +16,7 @@ services:
|
||||
depends_on:
|
||||
- backend
|
||||
backend:
|
||||
build: ./backend
|
||||
#build: ./backend
|
||||
image: ghcr.io/frikky/shuffle-backend:nightly
|
||||
container_name: shuffle-backend
|
||||
hostname: ${BACKEND_HOSTNAME}
|
||||
@@ -48,7 +48,6 @@ services:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
environment:
|
||||
- SHUFFLE_WORKER_VERSION=nightly
|
||||
- ORG_ID=${ORG_ID}
|
||||
- ENVIRONMENT_NAME=${ENVIRONMENT_NAME}
|
||||
- BASE_URL=http://${OUTER_HOSTNAME}:${BACKEND_PORT}
|
||||
- DOCKER_API_VERSION=1.40
|
||||
|
||||
@@ -659,7 +659,8 @@ const AngularWorkflow = (defaultprops) => {
|
||||
});
|
||||
|
||||
const newitem = removeParam("execution_id", cursearch);
|
||||
props.history.push(curpath + newitem);
|
||||
navigate(curpath + newitem)
|
||||
//props.history.push(curpath + newitem);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3576,7 +3577,8 @@ const AngularWorkflow = (defaultprops) => {
|
||||
) {
|
||||
setExecutionModalOpen(true)
|
||||
const newitem = removeParam("execution_highlight", cursearch);
|
||||
props.history.push(curpath + newitem);
|
||||
navigate(curpath + newitem)
|
||||
//props.history.push(curpath + newitem);
|
||||
}
|
||||
|
||||
const tmpView = new URLSearchParams(cursearch).get("view");
|
||||
@@ -3588,7 +3590,9 @@ const AngularWorkflow = (defaultprops) => {
|
||||
setExecutionModalOpen(true);
|
||||
|
||||
const newitem = removeParam("view", cursearch);
|
||||
props.history.push(curpath + newitem);
|
||||
navigate(curpath + newitem)
|
||||
//navigate(`?execution_highlight=${parsed_url}`)
|
||||
//props.history.push(curpath + newitem);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2226,53 +2226,55 @@ const GettingStarted = (props) => {
|
||||
|
||||
return (
|
||||
<div style={viewStyle}>
|
||||
<Dialog
|
||||
open={videoViewOpen}
|
||||
onClose={() => {
|
||||
setVideoViewOpen(false)
|
||||
}}
|
||||
PaperProps={{
|
||||
style: {
|
||||
backgroundColor: surfaceColor,
|
||||
color: "white",
|
||||
minWidth: 560,
|
||||
minHeight: 415,
|
||||
textAlign: "center",
|
||||
},
|
||||
}}
|
||||
>
|
||||
<DialogTitle>
|
||||
Welcome to Shuffle!
|
||||
</DialogTitle>
|
||||
|
||||
<Tooltip
|
||||
title="Close window"
|
||||
placement="top"
|
||||
style={{ zIndex: 10011 }}
|
||||
>
|
||||
<IconButton
|
||||
style={{ zIndex: 5000, position: "absolute", top: 10, right: 34 }}
|
||||
onClick={(e) => {
|
||||
e.preventDefault();
|
||||
setVideoViewOpen(false)
|
||||
}}
|
||||
>
|
||||
<CloseIcon style={{ color: "white" }} />
|
||||
</IconButton>
|
||||
</Tooltip>
|
||||
|
||||
<iframe
|
||||
width="560"
|
||||
height="315"
|
||||
style={{margin: "0px auto 0px auto", width: 560, height: 315,}}
|
||||
src="https://www.youtube-nocookie.com/embed/rO7k9q3OgC0"
|
||||
title="Introduction video"
|
||||
frameborder="0"
|
||||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||||
allowfullscreen
|
||||
{isCloud ?
|
||||
<Dialog
|
||||
open={videoViewOpen}
|
||||
onClose={() => {
|
||||
setVideoViewOpen(false)
|
||||
}}
|
||||
PaperProps={{
|
||||
style: {
|
||||
backgroundColor: surfaceColor,
|
||||
color: "white",
|
||||
minWidth: 560,
|
||||
minHeight: 415,
|
||||
textAlign: "center",
|
||||
},
|
||||
}}
|
||||
>
|
||||
</iframe>
|
||||
</Dialog>
|
||||
<DialogTitle>
|
||||
Welcome to Shuffle!
|
||||
</DialogTitle>
|
||||
|
||||
<Tooltip
|
||||
title="Close window"
|
||||
placement="top"
|
||||
style={{ zIndex: 10011 }}
|
||||
>
|
||||
<IconButton
|
||||
style={{ zIndex: 5000, position: "absolute", top: 10, right: 34 }}
|
||||
onClick={(e) => {
|
||||
e.preventDefault();
|
||||
setVideoViewOpen(false)
|
||||
}}
|
||||
>
|
||||
<CloseIcon style={{ color: "white" }} />
|
||||
</IconButton>
|
||||
</Tooltip>
|
||||
|
||||
<iframe
|
||||
width="560"
|
||||
height="315"
|
||||
style={{margin: "0px auto 0px auto", width: 560, height: 315,}}
|
||||
src="https://www.youtube-nocookie.com/embed/rO7k9q3OgC0"
|
||||
title="Introduction video"
|
||||
frameborder="0"
|
||||
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
|
||||
allowfullscreen
|
||||
>
|
||||
</iframe>
|
||||
</Dialog>
|
||||
: null}
|
||||
<div style={workflowViewStyle}>
|
||||
<Typography variant="h1" style={{fontSize: 30, marginTop: 25, }}>
|
||||
Getting Started with Shuffle
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
NAME=shuffle-orborus
|
||||
VERSION=0.9.58
|
||||
VERSION=0.9.59
|
||||
|
||||
echo "Running docker build with $NAME:$VERSION"
|
||||
#docker rmi frikky/shuffle:$NAME --force
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
#
|
||||
# curl -H "Org-id: Shuffle" --proxy "http://192.168.86.45:8081" http://192.168.86.45:5001/api/v1/workflows/queue
|
||||
|
||||
import SocketServer
|
||||
import SimpleHTTPServer
|
||||
import requests
|
||||
import json
|
||||
|
||||
PORT = 8082
|
||||
|
||||
class MyProxy(SimpleHTTPServer.SimpleHTTPRequestHandler):
|
||||
def do_GET(self):
|
||||
url=self.path[:]
|
||||
allheaders = {}
|
||||
for item in ("%s" % self.headers).split("\n"):
|
||||
headersplit = item.split(":")
|
||||
if len(headersplit) == 2:
|
||||
allheaders[headersplit[0]] = (headersplit[1][:-1]).strip()
|
||||
|
||||
ret = requests.get(url, headers=allheaders)
|
||||
print("RESP (%s) - %d - %s" % (url, ret.status_code, ret.text))
|
||||
|
||||
self.send_response(ret.status_code)
|
||||
self.end_headers()
|
||||
self.wfile.write(ret.text)
|
||||
|
||||
def do_POST(self):
|
||||
url=self.path[:]
|
||||
allheaders = {}
|
||||
for item in ("%s" % self.headers).split("\n"):
|
||||
headersplit = item.split(":")
|
||||
if len(headersplit) == 2:
|
||||
allheaders[headersplit[0]] = (headersplit[1][:-1]).strip()
|
||||
|
||||
length = int(self.headers.getheader('content-length'))
|
||||
try:
|
||||
message = json.loads(self.rfile.read(length))
|
||||
print("Got message: %s" % message)
|
||||
ret = requests.post(url, headers=allheaders, json=message)
|
||||
except:
|
||||
message = self.rfile.read(length)
|
||||
print("Got message: %s" % message)
|
||||
ret = requests.post(url, headers=allheaders, data=message)
|
||||
|
||||
print("RESP (%s) - %d - %s" % (url, ret.status_code, ret.text))
|
||||
|
||||
self.send_response(ret.status_code)
|
||||
self.end_headers()
|
||||
self.wfile.write(ret.text)
|
||||
|
||||
httpd = SocketServer.ForkingTCPServer(('', PORT), MyProxy)
|
||||
print("Now serving at %d" % PORT)
|
||||
httpd.serve_forever()
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
docker run \
|
||||
--env ORG_ID=$ORG_ID \
|
||||
--env DOCKER_API_VERSION=1.40 \
|
||||
--env ENVIRONMENT_NAME="Shuffle" \
|
||||
--env BASE_URL=http://shuffle-backend:5001 \
|
||||
--env DOCKER_API_VERSION=1.42 \
|
||||
--env RUNNING_MODE="Docker" \
|
||||
--network "shuffle_shuffle" \
|
||||
--env BASE_URL="http://192.168.86.45:5001" \
|
||||
--env HTTP_PROXY="http://192.168.86.45:8082" \
|
||||
--env HTTPS_PROXY="https://192.168.86.45:8082" \
|
||||
--env SHUFFLE_PASS_WORKER_PROXY=true \
|
||||
--env SHUFFLE_PASS_APP_PROXY=true \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||
frikky/shuffle:orborus
|
||||
ghcr.io/frikky/shuffle-orborus:nightly
|
||||
|
||||
Reference in New Issue
Block a user