From 49a7c64f3084556432a1e5be0104b87b76683b6e Mon Sep 17 00:00:00 2001 From: Nicolai Skogheim Date: Sun, 13 Sep 2020 15:12:16 +0200 Subject: [PATCH 01/10] Stop using magic init function --- backend/go-app/main.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/go-app/main.go b/backend/go-app/main.go index 3530ad73..bb61eaa7 100644 --- a/backend/go-app/main.go +++ b/backend/go-app/main.go @@ -6449,7 +6449,7 @@ func runInit(ctx context.Context) { log.Printf("Finished INIT") } -func init() { +func initHandlers() { var err error ctx := context.Background() @@ -6575,7 +6575,7 @@ func init() { // Had to move away from mux, which means Method is fucked up right now. func main() { - //init() + initHandlers() hostname, err := os.Hostname() if err != nil { hostname = "MISSING" From 2eb2be80be1ef6be1087fd47687c01f97a7f8a8c Mon Sep 17 00:00:00 2001 From: Harduino Date: Thu, 17 Sep 2020 18:53:04 +0300 Subject: [PATCH 02/10] siemonster :: add .dockerignore file --- .dockerignore | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .dockerignore diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..08fca979 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,15 @@ +**/.git* +**/.gitlab-ci.yml +**/.env +**/.dockerignore +**/Dockerfile* +**/node_modules +buildSrc/libs +.gradle/ +build/ +**build/ +.idea/ +!.idea/codeStyles/codeStyleConfig.xml +.DS_Store +*.log +out/ From 978755d831abcdc89f4de13de9f88101887d5a3f Mon Sep 17 00:00:00 2001 From: Harduino Date: Thu, 17 Sep 2020 18:54:41 +0300 Subject: [PATCH 03/10] siemonster :: ability to select branch on workflows import --- frontend/src/views/Workflows.jsx | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/frontend/src/views/Workflows.jsx b/frontend/src/views/Workflows.jsx index 8542790d..88c8f83f 100644 --- a/frontend/src/views/Workflows.jsx +++ b/frontend/src/views/Workflows.jsx @@ -65,6 +65,7 @@ const Workflows = (props) => { const [field1, setField1] = React.useState("") const [field2, setField2] = React.useState("") const [downloadUrl, setDownloadUrl] = React.useState("https://github.com/frikky/shuffle-workflows") + const [downloadBranch, setDownloadBranch] = React.useState("master") const [loadWorkflowsModalOpen, setLoadWorkflowsModalOpen] = React.useState(false) const [modalOpen, setModalOpen] = React.useState(false); @@ -1181,6 +1182,7 @@ const Workflows = (props) => { const parsedData = { "url": url, + "field_3": downloadBranch || 'master' } if (field1.length > 0) { @@ -1275,6 +1277,26 @@ const Workflows = (props) => { fullWidth /> + Branch (default value is "master"): +
+ setDownloadBranch(e.target.value)} + placeholder="master" + fullWidth + /> +
+ Authentication (optional - private repos etc):
Date: Thu, 17 Sep 2020 18:56:41 +0300 Subject: [PATCH 04/10] siemonster :: improve checkout to custom branch on git clone --- backend/go-app/main.go | 27 +++++++++++++++++++++++---- backend/go-app/walkoff.go | 29 +++++++++++++++++++++++------ 2 files changed, 46 insertions(+), 10 deletions(-) diff --git a/backend/go-app/main.go b/backend/go-app/main.go index bb61eaa7..79634f4a 100644 --- a/backend/go-app/main.go +++ b/backend/go-app/main.go @@ -42,6 +42,7 @@ import ( "github.com/go-git/go-billy/v5/memfs" "github.com/go-git/go-git/v5" "github.com/go-git/go-git/v5/plumbing" + "github.com/go-git/go-git/v5/config" "github.com/go-git/go-git/v5/storage/memory" // Random @@ -6368,10 +6369,6 @@ func runInit(ctx context.Context) { Password: password, } } - branch := os.Getenv("SHUFFLE_DOWNLOAD_AUTH_BRANCH") - if len(branch) > 0 { - cloneOptions.ReferenceName = plumbing.ReferenceName(branch) - } log.Printf("Getting apps from %s", url) @@ -6381,6 +6378,28 @@ func runInit(ctx context.Context) { log.Printf("Failed loading repo into memory: %s", err) } + branch := os.Getenv("SHUFFLE_DOWNLOAD_AUTH_BRANCH") + if len(branch) > 0 { + log.Printf("Checkout to branch: %s", branch) + + w, _ := r.Worktree() + + err := r.Fetch(&git.FetchOptions{ + RefSpecs: []config.RefSpec{"refs/*:refs/*", "HEAD:refs/heads/HEAD"}, + }) + if err != nil { + log.Printf("Failed fetch for git repo: %s", err) + } + + err = w.Checkout(&git.CheckoutOptions{ + Branch: plumbing.ReferenceName(fmt.Sprintf("refs/heads/%s", branch)), + Force: true, + }) + if err != nil { + log.Printf("Failed checkout for git repo: %s", err) + } + } + dir, err := fs.ReadDir("") if err != nil { log.Printf("Failed reading folder: %s", err) diff --git a/backend/go-app/walkoff.go b/backend/go-app/walkoff.go index 0d06dc37..c06d9834 100644 --- a/backend/go-app/walkoff.go +++ b/backend/go-app/walkoff.go @@ -29,6 +29,7 @@ import ( "github.com/go-git/go-billy/v5/memfs" "github.com/go-git/go-git/v5" "github.com/go-git/go-git/v5/plumbing" + "github.com/go-git/go-git/v5/config" "github.com/go-git/go-git/v5/storage/memory" http2 "gopkg.in/src-d/go-git.v4/plumbing/transport/http" //"github.com/gorilla/websocket" @@ -4175,16 +4176,11 @@ func loadGithubWorkflows(url, username, password, userId, branch string) error { // FIXME: Better auth. if len(username) > 0 && len(password) > 0 { cloneOptions.Auth = &http2.BasicAuth{ - Username: username, Password: password, } } - if len(branch) > 0 { - cloneOptions.ReferenceName = plumbing.ReferenceName(branch) - } - storer := memory.NewStorage() r, err := git.Clone(storer, fs, cloneOptions) if err != nil { @@ -4192,9 +4188,30 @@ func loadGithubWorkflows(url, username, password, userId, branch string) error { return err } + if len(branch) > 0 { + log.Printf("Checkout to branch: %s", branch) + + w, _ := r.Worktree() + + err := r.Fetch(&git.FetchOptions{ + RefSpecs: []config.RefSpec{"refs/*:refs/*", "HEAD:refs/heads/HEAD"}, + }) + if err != nil { + log.Printf("Failed fetch for git repo: %s", err) + } + + err = w.Checkout(&git.CheckoutOptions{ + Branch: plumbing.ReferenceName(fmt.Sprintf("refs/heads/%s", branch)), + Force: true, + }) + if err != nil { + log.Printf("Failed checkout for git repo: %s", err) + } + } + dir, err := fs.ReadDir("/") if err != nil { - log.Printf("FAiled reading folder: %s", err) + log.Printf("Failed reading folder: %s", err) } _ = r From fa3881d1f1235ab555e0fb63f333cc85f30a7069 Mon Sep 17 00:00:00 2001 From: Harduino Date: Thu, 17 Sep 2020 19:13:54 +0300 Subject: [PATCH 05/10] siemonster :: dynamic app_sdk & worker image urls --- .env | 4 ++++ docker-compose.yml | 3 +++ functions/onprem/orborus/orborus.go | 14 ++++++++++---- functions/onprem/worker/Dockerfile | 5 +++++ 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/.env b/.env index dbb4fc87..4fd9eced 100644 --- a/.env +++ b/.env @@ -34,3 +34,7 @@ DB_LOCATION=./shuffle-database SHUFFLE_HTTP_PROXY= SHUFFLE_HTTPS_PROXY= SHUFFLE_PASS_WORKER_PROXY=TRUE + +SHUFFLE_BASE_IMAGE_REGISTRY=docker.io +SHUFFLE_BASE_IMAGE_NAME=frikky/shuffle +SHUFFLE_BASE_IMAGE_TAG_SUFFIX="-0.6.0" \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 02efa84a..b90352a3 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -60,6 +60,9 @@ services: - HTTP_PROXY=${SHUFFLE_HTTP_PROXY} - HTTPS_PROXY=${SHUFFLE_HTTPS_PROXY} - SHUFFLE_PASS_WORKER_PROXY=${SHUFFLE_PASS_WORKER_PROXY} + - SHUFFLE_BASE_IMAGE_NAME=${SHUFFLE_BASE_IMAGE_NAME} + - SHUFFLE_BASE_IMAGE_REGISTRY=${SHUFFLE_BASE_IMAGE_REGISTRY} + - SHUFFLE_BASE_IMAGE_TAG_SUFFIX=${SHUFFLE_BASE_IMAGE_TAG_SUFFIX} restart: unless-stopped database: #build: ./backend/database diff --git a/functions/onprem/orborus/orborus.go b/functions/onprem/orborus/orborus.go index 3ce6ba52..250c4781 100644 --- a/functions/onprem/orborus/orborus.go +++ b/functions/onprem/orborus/orborus.go @@ -35,7 +35,10 @@ var workerVersion = os.Getenv("SHUFFLE_WORKER_VERSION") //var baseimagename = "docker.pkg.github.com/frikky/shuffle" //var baseimagename = "ghcr.io/frikky" -var baseimagename = "frikky/shuffle" +// var baseimagename = "frikky/shuffle" +var baseimagename = os.Getenv("SHUFFLE_BASE_IMAGE_NAME") +var baseimageregistry = os.Getenv("SHUFFLE_BASE_IMAGE_REGISTRY") +var baseimagetagsuffix = os.Getenv("SHUFFLE_BASE_IMAGE_TAG_SUFFIX") var orgId = os.Getenv("ORG_ID") var baseUrl = os.Getenv("BASE_URL") @@ -214,8 +217,10 @@ func initializeImages() { // check whether theyre the same first images := []string{ - fmt.Sprintf("docker.io/%s:app_sdk", baseimagename), - fmt.Sprintf("docker.io/%s:worker", baseimagename), + fmt.Sprintf("%s/%s:app_sdk%s", baseimageregistry, baseimagename, baseimagetagsuffix), + fmt.Sprintf("%s/%s:worker%s", baseimageregistry, baseimagename, baseimagetagsuffix), + // fmt.Sprintf("docker.io/%s:app_sdk", baseimagename), + // fmt.Sprintf("docker.io/%s:worker", baseimagename), //fmt.Sprintf("%s/worker:%s", baseimagename, workerVersion), //fmt.Sprintf("%s/app_sdk:%s", baseimagename, appSdkVersion), @@ -270,7 +275,8 @@ func main() { //workerVersion := "0.1.0" //workerImage := fmt.Sprintf("docker.pkg.github.com/frikky/shuffle/%s:%s", workerName, workerVersion) //workerImage := fmt.Sprintf("%s/worker:%s", baseimagename, workerVersion) - workerImage := fmt.Sprintf("docker.io/%s:worker", baseimagename) + // workerImage := fmt.Sprintf("docker.io/%s:worker", baseimagename) + workerImage := fmt.Sprintf("%s/%s:worker%s", baseimageregistry, baseimagename, baseimagetagsuffix) log.Printf("[INFO] Finished configuring docker environment") diff --git a/functions/onprem/worker/Dockerfile b/functions/onprem/worker/Dockerfile index 685b426b..c381e73b 100644 --- a/functions/onprem/worker/Dockerfile +++ b/functions/onprem/worker/Dockerfile @@ -10,6 +10,11 @@ COPY worker.go /app/worker.go RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o worker . FROM alpine:3.12 + +ENV SHUFFLE_BASE_IMAGE_REGISTRY=docker.io +ENV SHUFFLE_BASE_IMAGE_NAME=frikky/shuffle +ENV SHUFFLE_BASE_IMAGE_TAG_SUFFIX=0.6.0 + RUN apk add --no-cache bash COPY --from=builder /app/ / From b3bd6cae7ce25ea979a7068de46b19e96366dcea Mon Sep 17 00:00:00 2001 From: Harduino Date: Fri, 18 Sep 2020 16:26:50 +0300 Subject: [PATCH 06/10] siemonster :: recalculate authenticators stats on workflows import/delete --- backend/go-app/walkoff.go | 74 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/backend/go-app/walkoff.go b/backend/go-app/walkoff.go index 0d06dc37..d61f9b92 100644 --- a/backend/go-app/walkoff.go +++ b/backend/go-app/walkoff.go @@ -1411,6 +1411,12 @@ func deleteWorkflow(resp http.ResponseWriter, request *http.Request) { log.Printf("Failed to increase total workflows: %s", err) } + // recalculate authenticators stats + err = recalculateAppAuthentications() + if err != nil { + log.Printf("Authentications recalculation failed: %s", err) + } + //memcacheName := fmt.Sprintf("%s_%s", user.Username, fileId) //memcache.Delete(ctx, memcacheName) //memcacheName = fmt.Sprintf("%s_workflows", user.Username) @@ -4282,10 +4288,78 @@ func loadSpecificWorkflows(resp http.ResponseWriter, request *http.Request) { return } + // recalculate authenticators stats + err = recalculateAppAuthentications() + if err != nil { + log.Printf("Authentications recalculation failed: %s", err) + } + resp.WriteHeader(200) resp.Write([]byte(fmt.Sprintf(`{"success": true}`))) } +func recalculateAppAuthentications() error { + // create context + ctx := context.Background() + + // form workflows list + workflows, err := getAllWorkflows(ctx) + if err != nil { + log.Printf("Error: Failed getting workflows: %s", err) + return err + } + + // form authenticators list + auths, err := getAllWorkflowAppAuth(ctx) + if err != nil { + log.Printf("Error: Failed getting auths: %s", err) + return err + } + + // iterate through auths + for _, auth := range auths { + // reset calculated values + auth.WorkflowCount = 0 + auth.NodeCount = 0 + auth.Usage = []AuthenticationUsage{} + + // iterate through workflows to find which uses this auth + for _, workflow := range workflows { + hasCurrentAuth := false + usageItem := AuthenticationUsage{ + WorkflowId: workflow.ID, + Nodes: []string{}, + } + + // iterate through actions + for _, action := range workflow.Actions { + if action.AuthenticationId == auth.Id { + // this workflow should be added to "usage" field + hasCurrentAuth = true + + // add this action to list + usageItem.Nodes = append(usageItem.Nodes, action.ID) + } + } + + // update current auth with found workflow + if hasCurrentAuth { + auth.WorkflowCount += 1 + auth.NodeCount += int64(len(usageItem.Nodes)) + auth.Usage = append(auth.Usage, usageItem) + } + } + + // update record in database + err := setWorkflowAppAuthDatastore(ctx, auth, auth.Id) + if err != nil { + log.Printf("Failed setting up app auth %s: %s", auth.Id, err) + } + } + + return nil +} + func handleAppHotloadRequest(resp http.ResponseWriter, request *http.Request) { cors := handleCors(resp, request) if cors { From 31ee2dfdecc6edec5220c683fc5f71287e6c1adc Mon Sep 17 00:00:00 2001 From: garanews Date: Thu, 1 Oct 2020 13:25:47 +0200 Subject: [PATCH 07/10] fix typo fix typo --- backend/app_gen/openapi/test.go | 2 +- backend/app_gen/openapi/testGCP.go | 2 +- backend/app_gen/python-lib/generator.py | 2 +- backend/app_sdk/app_base.py | 4 ++-- backend/go-app/codegen.go | 2 +- frontend/src/views/EditWebhook.jsx | 2 +- functions/onprem/orborus/orborus.go | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/backend/app_gen/openapi/test.go b/backend/app_gen/openapi/test.go index b7cde4f4..ec818b25 100644 --- a/backend/app_gen/openapi/test.go +++ b/backend/app_gen/openapi/test.go @@ -180,7 +180,7 @@ func generateYaml(swagger *openapi3.Swagger) (WorkflowApp, []string, error) { api.Name = swagger.Info.Title api.Description = swagger.Info.Description api.IsValid = true - api.Link = swagger.Servers[0].URL // host doesnt exist lol + api.Link = swagger.Servers[0].URL // host does not exist lol api.AppVersion = "1.0.0" api.Environment = "cloud" api.ID = "" diff --git a/backend/app_gen/openapi/testGCP.go b/backend/app_gen/openapi/testGCP.go index da5510b8..a792ff3c 100644 --- a/backend/app_gen/openapi/testGCP.go +++ b/backend/app_gen/openapi/testGCP.go @@ -216,7 +216,7 @@ func generateYaml(swagger *openapi3.Swagger) (WorkflowApp, []string, error) { api.Name = swagger.Info.Title api.Description = swagger.Info.Description api.IsValid = true - api.Link = swagger.Servers[0].URL // host doesnt exist lol + api.Link = swagger.Servers[0].URL // host does not exist lol api.AppVersion = "1.0.0" api.Environment = "cloud" api.ID = "" diff --git a/backend/app_gen/python-lib/generator.py b/backend/app_gen/python-lib/generator.py index 2af39cdc..e982439c 100644 --- a/backend/app_gen/python-lib/generator.py +++ b/backend/app_gen/python-lib/generator.py @@ -246,7 +246,7 @@ def loop_modules(modules, data): param["position"] = cnt if not found: - # FIXME - waht here? + # FIXME - what here? pass #print("HANDLE NOT FOUND") #print(param) diff --git a/backend/app_sdk/app_base.py b/backend/app_sdk/app_base.py index e2a7f4f5..9c0e165a 100644 --- a/backend/app_sdk/app_base.py +++ b/backend/app_sdk/app_base.py @@ -150,7 +150,7 @@ class AppBase: self.logger.info("AFTER FULLEXEC stream result") - # Gets the value at the paranthesis level you want + # Gets the value at the parenthesis level you want def parse_nested_param(string, level): """ Generate strings contained in nested (), indexing i = level @@ -173,7 +173,7 @@ class AppBase: except IndexError: return [string[LeftRightIndex[level+1][0]:LeftRightIndex[level+1][1]]] - # Finds the deepest level paranthesis in a string + # Finds the deepest level parenthesis in a string def maxDepth(S): current_max = 0 max = 0 diff --git a/backend/go-app/codegen.go b/backend/go-app/codegen.go index a5898e5d..81aea65d 100644 --- a/backend/go-app/codegen.go +++ b/backend/go-app/codegen.go @@ -434,7 +434,7 @@ func generateYaml(swagger *openapi3.Swagger, newmd5 string) (*openapi3.Swagger, //uuid.NewV4().String() api.IsValid = true - api.Link = swagger.Servers[0].URL // host doesnt exist lol + api.Link = swagger.Servers[0].URL // host does not exist lol if strings.HasSuffix(api.Link, "/") { api.Link = api.Link[:len(api.Link)-1] } diff --git a/frontend/src/views/EditWebhook.jsx b/frontend/src/views/EditWebhook.jsx index ba42a58b..9ec5879c 100644 --- a/frontend/src/views/EditWebhook.jsx +++ b/frontend/src/views/EditWebhook.jsx @@ -336,7 +336,7 @@ const EditWebhook = (props) => {
: null - // FIXME - needs refresh everytime you add a new workflow + // FIXME - needs refresh every time you add a new workflow const workflowdata = Object.getOwnPropertyNames(webhookData).length > 0 && selectedWorkflows.length > 0 ? : null diff --git a/functions/onprem/orborus/orborus.go b/functions/onprem/orborus/orborus.go index 3ce6ba52..8023c755 100644 --- a/functions/onprem/orborus/orborus.go +++ b/functions/onprem/orborus/orborus.go @@ -212,7 +212,7 @@ func initializeImages() { log.Printf("[WARNING] SHUFFLE_WORKER_VERSION not defined. Defaulting to %s", workerVersion) } - // check whether theyre the same first + // check whether they are the same first images := []string{ fmt.Sprintf("docker.io/%s:app_sdk", baseimagename), fmt.Sprintf("docker.io/%s:worker", baseimagename), From f88330d03e4edd34f5b3351553639af4d3df8956 Mon Sep 17 00:00:00 2001 From: frikky Date: Sat, 10 Oct 2020 06:52:45 +0200 Subject: [PATCH 08/10] Fixed git clone error messages --- backend/go-app/main.go | 27 ++++----------------------- backend/go-app/walkoff.go | 16 +++++++++------- 2 files changed, 13 insertions(+), 30 deletions(-) diff --git a/backend/go-app/main.go b/backend/go-app/main.go index 79634f4a..bb61eaa7 100644 --- a/backend/go-app/main.go +++ b/backend/go-app/main.go @@ -42,7 +42,6 @@ import ( "github.com/go-git/go-billy/v5/memfs" "github.com/go-git/go-git/v5" "github.com/go-git/go-git/v5/plumbing" - "github.com/go-git/go-git/v5/config" "github.com/go-git/go-git/v5/storage/memory" // Random @@ -6369,6 +6368,10 @@ func runInit(ctx context.Context) { Password: password, } } + branch := os.Getenv("SHUFFLE_DOWNLOAD_AUTH_BRANCH") + if len(branch) > 0 { + cloneOptions.ReferenceName = plumbing.ReferenceName(branch) + } log.Printf("Getting apps from %s", url) @@ -6378,28 +6381,6 @@ func runInit(ctx context.Context) { log.Printf("Failed loading repo into memory: %s", err) } - branch := os.Getenv("SHUFFLE_DOWNLOAD_AUTH_BRANCH") - if len(branch) > 0 { - log.Printf("Checkout to branch: %s", branch) - - w, _ := r.Worktree() - - err := r.Fetch(&git.FetchOptions{ - RefSpecs: []config.RefSpec{"refs/*:refs/*", "HEAD:refs/heads/HEAD"}, - }) - if err != nil { - log.Printf("Failed fetch for git repo: %s", err) - } - - err = w.Checkout(&git.CheckoutOptions{ - Branch: plumbing.ReferenceName(fmt.Sprintf("refs/heads/%s", branch)), - Force: true, - }) - if err != nil { - log.Printf("Failed checkout for git repo: %s", err) - } - } - dir, err := fs.ReadDir("") if err != nil { log.Printf("Failed reading folder: %s", err) diff --git a/backend/go-app/walkoff.go b/backend/go-app/walkoff.go index c06d9834..22ca021a 100644 --- a/backend/go-app/walkoff.go +++ b/backend/go-app/walkoff.go @@ -28,8 +28,8 @@ import ( "github.com/go-git/go-billy/v5" "github.com/go-git/go-billy/v5/memfs" "github.com/go-git/go-git/v5" - "github.com/go-git/go-git/v5/plumbing" "github.com/go-git/go-git/v5/config" + "github.com/go-git/go-git/v5/plumbing" "github.com/go-git/go-git/v5/storage/memory" http2 "gopkg.in/src-d/go-git.v4/plumbing/transport/http" //"github.com/gorilla/websocket" @@ -4168,6 +4168,7 @@ func deployWebhookFunction(ctx context.Context, name, localization, applocation func loadGithubWorkflows(url, username, password, userId, branch string) error { fs := memfs.New() + // FIXME: add more git options lol if strings.Contains(url, "github") || strings.Contains(url, "gitlab") || strings.Contains(url, "bitbucket") { cloneOptions := &git.CloneOptions{ URL: url, @@ -4192,20 +4193,21 @@ func loadGithubWorkflows(url, username, password, userId, branch string) error { log.Printf("Checkout to branch: %s", branch) w, _ := r.Worktree() - + err := r.Fetch(&git.FetchOptions{ RefSpecs: []config.RefSpec{"refs/*:refs/*", "HEAD:refs/heads/HEAD"}, }) if err != nil { log.Printf("Failed fetch for git repo: %s", err) } - + err = w.Checkout(&git.CheckoutOptions{ Branch: plumbing.ReferenceName(fmt.Sprintf("refs/heads/%s", branch)), - Force: true, + Force: true, }) if err != nil { log.Printf("Failed checkout for git repo: %s", err) + return errors.New(fmt.Sprintf("Failed checking out to branch %s - does it exist?", branch)) } } @@ -4286,7 +4288,7 @@ func loadSpecificWorkflows(resp http.ResponseWriter, request *http.Request) { if err != nil { log.Printf("Error with unmarshal tmpBody: %s", err) resp.WriteHeader(401) - resp.Write([]byte(`{"success": false}`)) + resp.Write([]byte(`{"success": false, "reason": "json decode error"}`)) return } @@ -4295,7 +4297,7 @@ func loadSpecificWorkflows(resp http.ResponseWriter, request *http.Request) { if err != nil { log.Printf("Failed to update workflows: %s", err) resp.WriteHeader(401) - resp.Write([]byte(`{"success": false}`)) + resp.Write([]byte(fmt.Sprintf(`{"success": false, "reason": "%s"}`, err))) return } @@ -5046,7 +5048,7 @@ func getWorkflowExecutions(resp http.ResponseWriter, request *http.Request) { if len(workflowExecutions) == 0 { resp.Write([]byte("[]")) - resp.WriteHeader(200) + //resp.WriteHeader(200) return } From 67161009f8f34ccf3f697528725cecef30b23086 Mon Sep 17 00:00:00 2001 From: frikky Date: Sat, 10 Oct 2020 06:56:52 +0200 Subject: [PATCH 09/10] Fixed null pointer exception when deleted auth --- frontend/src/views/Admin.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/src/views/Admin.jsx b/frontend/src/views/Admin.jsx index 4de8c320..997aedf8 100644 --- a/frontend/src/views/Admin.jsx +++ b/frontend/src/views/Admin.jsx @@ -1031,7 +1031,7 @@ const Admin = (props) => { console.log("Show apps with this category") }} > - Find app ({data.apps.length}) + Find app ({data.apps === null ? 0 : data.apps.length}) @@ -1094,7 +1094,7 @@ const Admin = (props) => { style={{minWidth: 150, maxWidth: 150}} /> Date: Sat, 10 Oct 2020 07:03:50 +0200 Subject: [PATCH 10/10] Added default docker environment to orborus --- functions/onprem/orborus/orborus.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/functions/onprem/orborus/orborus.go b/functions/onprem/orborus/orborus.go index 755bff9d..0a38ef1a 100644 --- a/functions/onprem/orborus/orborus.go +++ b/functions/onprem/orborus/orborus.go @@ -215,6 +215,13 @@ func initializeImages() { log.Printf("[WARNING] SHUFFLE_WORKER_VERSION not defined. Defaulting to %s", workerVersion) } + if baseimageregistry == "" { + baseimageregistry = "docker.io" + } + if baseimagename == "" { + baseimagename = "frikky/shuffle" + } + // check whether they are the same first images := []string{ fmt.Sprintf("%s/%s:app_sdk%s", baseimageregistry, baseimagename, baseimagetagsuffix),