#204: Cleaned up issues with help from @dadokkia
This commit is contained in:
+26
-24
@@ -55,7 +55,8 @@ class AppBase:
|
|||||||
# Things to consider for files:
|
# Things to consider for files:
|
||||||
# - How can you download / stream a file?
|
# - How can you download / stream a file?
|
||||||
# - Can you decide if you want a stream or the files directly?
|
# - Can you decide if you want a stream or the files directly?
|
||||||
def get_files(self, full_execution, value):
|
def get_file(self, value):
|
||||||
|
full_execution = self.full_execution
|
||||||
org_id = full_execution["workflow"]["execution_org"]["id"]
|
org_id = full_execution["workflow"]["execution_org"]["id"]
|
||||||
print("SHOULD GET FILES BASED ON ORG %s, workflow %s and value(s) %s" % (org_id, full_execution["workflow"]["id"], value))
|
print("SHOULD GET FILES BASED ON ORG %s, workflow %s and value(s) %s" % (org_id, full_execution["workflow"]["id"], value))
|
||||||
|
|
||||||
@@ -95,7 +96,8 @@ class AppBase:
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Sets files in the backend
|
# Sets files in the backend
|
||||||
def set_files(self, full_execution, infiles):
|
def set_files(self, infiles):
|
||||||
|
full_execution = self.full_execution
|
||||||
workflow_id = full_execution["workflow"]["id"]
|
workflow_id = full_execution["workflow"]["id"]
|
||||||
org_id = full_execution["workflow"]["execution_org"]["id"]
|
org_id = full_execution["workflow"]["execution_org"]["id"]
|
||||||
headers = {
|
headers = {
|
||||||
@@ -158,23 +160,6 @@ class AppBase:
|
|||||||
|
|
||||||
print("IDS TO RETURN: %s" % file_ids)
|
print("IDS TO RETURN: %s" % file_ids)
|
||||||
return file_ids
|
return file_ids
|
||||||
|
|
||||||
# Checks whether conditions are met, otherwise set
|
|
||||||
branchcheck, tmpresult = check_branch_conditions(action, fullexecution)
|
|
||||||
if not branchcheck:
|
|
||||||
self.logger.info("Failed one or more branch conditions.")
|
|
||||||
action_result["result"] = tmpresult
|
|
||||||
action_result["status"] = "FAILURE"
|
|
||||||
try:
|
|
||||||
ret = requests.post("%s%s" % (self.url, stream_path), headers=headers, json=action_result)
|
|
||||||
self.logger.info("Result: %d" % ret.status_code)
|
|
||||||
if ret.status_code != 200:
|
|
||||||
self.logger.info(ret.text)
|
|
||||||
except requests.exceptions.ConnectionError as e:
|
|
||||||
self.logger.exception(e)
|
|
||||||
|
|
||||||
print("\n\nRETURNING BECAUSE A BRANCH FAILED\n\n")
|
|
||||||
return
|
|
||||||
|
|
||||||
async def execute_action(self, action):
|
async def execute_action(self, action):
|
||||||
# FIXME - add request for the function STARTING here. Use "results stream" or something
|
# FIXME - add request for the function STARTING here. Use "results stream" or something
|
||||||
@@ -958,6 +943,23 @@ class AppBase:
|
|||||||
|
|
||||||
return True, ""
|
return True, ""
|
||||||
|
|
||||||
|
# Checks whether conditions are met, otherwise set
|
||||||
|
branchcheck, tmpresult = check_branch_conditions(action, fullexecution)
|
||||||
|
if not branchcheck:
|
||||||
|
self.logger.info("Failed one or more branch conditions.")
|
||||||
|
action_result["result"] = tmpresult
|
||||||
|
action_result["status"] = "FAILURE"
|
||||||
|
try:
|
||||||
|
ret = requests.post("%s%s" % (self.url, stream_path), headers=headers, json=action_result)
|
||||||
|
self.logger.info("Result: %d" % ret.status_code)
|
||||||
|
if ret.status_code != 200:
|
||||||
|
self.logger.info(ret.text)
|
||||||
|
except requests.exceptions.ConnectionError as e:
|
||||||
|
self.logger.exception(e)
|
||||||
|
|
||||||
|
print("\n\nRETURNING BECAUSE A BRANCH FAILED\n\n")
|
||||||
|
return
|
||||||
|
|
||||||
# Replace name cus there might be issues
|
# Replace name cus there might be issues
|
||||||
# Not doing lower() as there might be user-made functions
|
# Not doing lower() as there might be user-made functions
|
||||||
actionname = action["name"]
|
actionname = action["name"]
|
||||||
@@ -1111,7 +1113,7 @@ class AppBase:
|
|||||||
try:
|
try:
|
||||||
if parameter["schema"]["type"] == "file" and len(value) > 0:
|
if parameter["schema"]["type"] == "file" and len(value) > 0:
|
||||||
print("SHOULD HANDLE FILE IN MULTI. Get based on value %s" % parameter["value"])
|
print("SHOULD HANDLE FILE IN MULTI. Get based on value %s" % parameter["value"])
|
||||||
file_value = self.get_files(fullexecution, tmpitem)
|
file_value = self.get_file(tmpitem)
|
||||||
print("FILE VALUE FOR VAL %s: %s" % (tmpitem, file_value))
|
print("FILE VALUE FOR VAL %s: %s" % (tmpitem, file_value))
|
||||||
resultarray.append(file_value)
|
resultarray.append(file_value)
|
||||||
|
|
||||||
@@ -1141,7 +1143,7 @@ class AppBase:
|
|||||||
try:
|
try:
|
||||||
if parameter["schema"]["type"] == "file" and len(value) > 0:
|
if parameter["schema"]["type"] == "file" and len(value) > 0:
|
||||||
print("\n SHOULD HANDLE FILE. Get based on value %s. <--- is this a valid ID?" % parameter["value"])
|
print("\n SHOULD HANDLE FILE. Get based on value %s. <--- is this a valid ID?" % parameter["value"])
|
||||||
file_value = self.get_files(fullexecution, value)
|
file_value = self.get_file(value)
|
||||||
print("FILE VALUE: %s \n" % file_value)
|
print("FILE VALUE: %s \n" % file_value)
|
||||||
|
|
||||||
params[parameter["name"]] = file_value
|
params[parameter["name"]] = file_value
|
||||||
@@ -1185,13 +1187,13 @@ class AppBase:
|
|||||||
print("TUPLE: %s" % newres[1])
|
print("TUPLE: %s" % newres[1])
|
||||||
if isinstance(newres[1], list):
|
if isinstance(newres[1], list):
|
||||||
print("HANDLING LIST FROM RET")
|
print("HANDLING LIST FROM RET")
|
||||||
file_ids = self.set_files(fullexecution, newres[1])
|
file_ids = self.set_files(newres[1])
|
||||||
elif isinstance(newres[1], object):
|
elif isinstance(newres[1], object):
|
||||||
print("Handling JSON from ret")
|
print("Handling JSON from ret")
|
||||||
file_ids = self.set_files(fullexecution, [newres[1]])
|
file_ids = self.set_files([newres[1]])
|
||||||
elif isinstance(newres[1], str):
|
elif isinstance(newres[1], str):
|
||||||
print("Handling STRING from ret")
|
print("Handling STRING from ret")
|
||||||
file_ids = self.set_files(fullexecution, [newres[1]])
|
file_ids = self.set_files([newres[1]])
|
||||||
else:
|
else:
|
||||||
print("NO FILES TO HANDLE")
|
print("NO FILES TO HANDLE")
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
NAME=shuffle-app_sdk
|
NAME=shuffle-app_sdk
|
||||||
VERSION=0.8.1
|
VERSION=0.8.11
|
||||||
|
|
||||||
docker rmi docker.pkg.github.com/frikky/shuffle/$NAME:$VERSION --force
|
docker rmi docker.pkg.github.com/frikky/shuffle/$NAME:$VERSION --force
|
||||||
docker build . -t frikky/shuffle:app_sdk -t frikky/$NAME:$VERSION -t docker.pkg.github.com/frikky/shuffle/$NAME:$VERSION -t ghcr.io/frikky/$NAME:$VERSION
|
docker build . -t frikky/shuffle:app_sdk -t frikky/$NAME:$VERSION -t docker.pkg.github.com/frikky/shuffle/$NAME:$VERSION -t ghcr.io/frikky/$NAME:$VERSION
|
||||||
|
|||||||
Reference in New Issue
Block a user