Exemplo n.º 1
0
def newWorkflow(user, data, new, delete):
    if delete:
        wfid = getID(request.form["workflowWorkflowsSelect"])
        WorkflowTemplate.delete(SESSION, wfid, user)
        result = {"updates": {}, "message": "deleted workflow"}
    elif new:
        credID = getID(data["workflowCredentialsSelect"])
        if credID == None:
            credentials = None
        else:
            credentials = Credentials.findByID(SESSION, credID, user)
        nwf = WorkflowTemplate(data["newWorkflowName"], user, credentials=credentials)
        SESSION.add(nwf)
        SESSION.commit()
        result = {"updates": {"workflows": {str(nwf.id): nwf.dictForJSON()}}, "message": "added new workflow"}
    else:
        wfid = getID(request.form["workflowVarWorkflowsSelect"])
        wf = WorkflowTemplate.findByID(SESSION, wfid, user)
        if VERBOSE:
            print user.name, user.id
        if wf == None:
            return {"updates": {}, "message": "user permissions error"}
        newvars = parseVariables(request.form)
        wf.updateVarDict(newvars, user)
        result = {"updates": {"workflows": {str(wf.id): wf.dictForJSON()}}, "message": "updated workflow"}
    return result
Exemplo n.º 2
0
def saveCredentials(user, data, files, delete):
    name = data["credentialsName"]
    serviceAccount = data["serviceAccountEmail"]
    project = data["project"]
    f = request.files["pemFileUpload"]

    credID = getID(data["credentialCredentialsSelect"])
    # get credentials object
    if credID == None:
        cred = Credentials("", "", "", "", user)
    else:
        cred = Credentials.findByID(SESSION, credID, user)
        if cred == None:
            return {"updates": {}, "message": "user permissions error on credentials"}
    # process inputs
    if f and allowedFile(f.filename):
        filename = str(user.id) + ".pem"
        f.save(os.path.join(app.config["PEMFILEFOLDER"], filename))
        pemFileLocation = os.path.join(app.config["PEMFILEFOLDER"], filename)
    else:
        pemFileLocation = ""
    # update values
    if delete:
        Credentials.delete(SESSION, cred.id, user)
    else:
        cred.updateValues(name.lower(), serviceAccount, pemFileLocation, project)
        SESSION.add(cred)
        SESSION.commit()
    return {
        "updates": {"credentials": {c.id: c.dictForJSON() for c in user.credentials}},
        "message": "updated credentials",
    }
Exemplo n.º 3
0
 def getCredentials(self, user):
     cred = Credentials.findByName(SESSION, "test_credentials", user)
     if cred == None:
         cred = Credentials("test_credentials", "*****@*****.**", "/Users/cmelton/Documents/AptanaStudio3WorkspaceNew/DDCloudServer/Data/TestFiles/GCP_SnyderProject.pem", "gbsc-gcp-lab-snyder", user)
     return cred