Пример #1
0
    def take_action(self, parsed_args):
        url = parsed_args.url
        username = parsed_args.username
        password = parsed_args.password
        session = Session(url, username, password)
        session_id = session.get_session_id()
        project = parsed_args.project
        flow = parsed_args.flow
        cronExpression = parsed_args.cron

        params = {"ajax": "scheduleCronFlow"}
        params["session.id"] = session_id
        params["projectName"] = project
        params["flow"] = flow
        params["cronExpression"] = cronExpression

        if parsed_args.option:
            params.update(literal_eval(parsed_args.option))
        r = requests.post(url + "/schedule", data=params)
        jc = r.json()
        if jc.get("status") == 'success':
            print("add cron schedule succeeded. scheduleId=%s, message=%s" %
                  (jc.get("scheduleId"), jc.get("message")))
        elif jc.get("status") == 'error':
            raise Exception("add cron schedule failed. message=%s. error=%s" %
                            (jc.get("message"), jc.get("error")))
        else:
            raise Exception("add cron schedule failed. error=%s" %
                            (jc.get("error")))
Пример #2
0
 def take_action(self, parsed_args):
     url = parsed_args.url
     username = parsed_args.username
     password = parsed_args.password
     session = Session(url, username, password)
     session_id = session.get_session_id()
     project = parsed_args.project
     flow = parsed_args.flow
     p = Project()
     project_id = p.get_project_id(url, session_id, project)
     params = {"ajax": "scheduleFlow"}
     params["session.id"] = session_id
     params["projectName"] = project
     params["projectId"] = project_id
     params["flow"] = flow
     params["scheduleDate"] = parsed_args.date
     params["scheduleTime"] = parsed_args.time
     if parsed_args.period:
         params["is_recurring"] = 'on'
         params["period"] = parsed_args.period
     if parsed_args.option:
         params.update(literal_eval(parsed_args.option))
     r = requests.post(url + "/schedule", data=params)
     jc = r.json()
     if jc.get("status") == 'success':
         print("add schedule succeeded. message=%s" % (jc.get("message")))
     elif jc.get("status") == 'error':
         raise Exception("add schedule failed. message=%s. error=%s" %
                         (jc.get("message"), jc.get("error")))
     else:
         raise Exception("add schedule failed. error=%s" %
                         (jc.get("error")))
Пример #3
0
 def take_action(self, parsed_args):
     url = parsed_args.url
     username = parsed_args.username
     password = parsed_args.password
     session = Session(url, username, password)
     session_id = session.get_session_id()
     project = parsed_args.project
     flow = parsed_args.flow
     p = Project()
     project_id = p.get_project_id(url, session_id, project)
     params = {"ajax":"scheduleFlow"}
     params["session.id"] = session_id
     params["projectName"] = project
     params["projectId"] = project_id
     params["flow"] = flow
     params["scheduleDate"] = parsed_args.date
     params["scheduleTime"] = parsed_args.time
     if parsed_args.period:
         params["is_recurring"] = 'on'
         params["period"] = parsed_args.period
     if parsed_args.option:
         params.update(literal_eval(parsed_args.option))
     r = requests.post(url + "/schedule", data=params)
     jc = r.json()
     if jc.get("status") == 'success':
         print("add schedule succeeded. message=%s" % (jc.get("message")))
     if jc.get("status") == 'error':
         raise Exception("add schedule failed. message=%s. error=%s" % (jc.get("message"), jc.get("error")))
Пример #4
0
    def take_action(self, parsed_args):
        url = parsed_args.url
        username = parsed_args.username
        password = parsed_args.password
        session = Session(url, username, password)
        session_id = session.get_session_id()
        project = parsed_args.project
        flow = parsed_args.flow
        params = {"ajax":"executeFlow"}
        params["session.id"] = session_id
        params["project"] = project
        params["flow"] = flow
        params["disabled"] = parsed_args.disabled
        params["successEmails"] = parsed_args.successEmails
        params["failureEmails"] = parsed_args.failureEmails
        params["successEmailsOverride"] = parsed_args.successEmailsOverride
        params["failureEmailsOverride"] = parsed_args.failureEmailsOverride
        params["notifyFailureFirst"] = parsed_args.notifyFailureFirst
        params["notifyFailureLast"] = parsed_args.notifyFailureLast
        params["failureAction"] = parsed_args.failureAction
        params["concurrentOption"] = parsed_args.concurrentOption

        for item in parsed_args.flowOverride:
            pair = item.split("=")
            params["flowOverride[%s]" % pair[0]] = pair[1]

        r = requests.get(url + "/executor", params=params)
        jc = r.json()
        if jc.get("execid") is None:
            raise Exception("exec failed. project=%s. flow=%s. message=%s. error=%s" % (jc.get("project"), jc.get("flow"), jc.get("message"), jc.get("error")))
        else:
            print "exec succeeded. execid=%s. project=%s. flow=%s. message=%s" % (jc.get("execid"), jc.get("project"), jc.get("flow"), jc.get("message"))
Пример #5
0
 def list_schedules(self):
     session = Session(self.url, self.username, self.password)
     session_id = session.get_session_id()
     params = {"ajax":"loadFlow"}
     params["session.id"] = session_id
     r = requests.get(self.url + "/schedule", params=params)
     jc = r.json()
     return jc.get("items", []) 
Пример #6
0
 def list_schedules(self):
     session = Session(self.url, self.username, self.password)
     session_id = session.get_session_id()
     params = {"ajax":"loadFlow"}
     params["session.id"] = session_id
     r = requests.get(self.url + "/schedule", params=params)
     jc = r.json()
     return jc.get("items", []) 
Пример #7
0
 def remove_schedule(self, scheduleId):
     session = Session(self.url, self.username, self.password)
     session_id = session.get_session_id()
     params = {"action":"removeSched"}
     params["session.id"] = session_id
     params["scheduleId"] = scheduleId
     r = requests.post(self.url + "/schedule", data=params)
     jc = r.json()
     if jc.get("status") == 'success':
         print("remove schedule succeeded. message=%s" % (jc.get("message")))
     if jc.get("status") == 'error':
         raise Exception("remove schedule failed. message=%s" % (jc.get("message")))
Пример #8
0
    def take_action(self, parsed_args):
        url = parsed_args.url
        username = parsed_args.username
        password = parsed_args.password
        session = Session(url, username, password)
        session_id = session.get_session_id()

        project = parsed_args.project
        params = {"delete": "true"}
        params["session.id"] = session_id
        params["project"] = project
        r = requests.get(url + "/manager", params=params)
Пример #9
0
 def get_schedule(self, project, flow):
     session = Session(self.url, self.username, self.password)
     session_id = session.get_session_id()
     params = {"ajax":"fetchSchedule"}
     params["session.id"] = session_id
     p = Project()
     project_id = p.get_project_id(self.url, session_id, project)
     params["projectId"] = project_id
     params["flowId"] = flow
     r = requests.get(self.url + "/schedule", params=params)
     jc = r.json()
     return jc.get("schedule") 
Пример #10
0
 def remove_schedule(self, scheduleId):
     session = Session(self.url, self.username, self.password)
     session_id = session.get_session_id()
     params = {"action":"removeSched"}
     params["session.id"] = session_id
     params["scheduleId"] = scheduleId
     r = requests.post(self.url + "/schedule", data=params)
     jc = r.json()
     if jc.get("status") == 'success':
         print("remove schedule succeeded. message=%s" % (jc.get("message")))
     if jc.get("status") == 'error':
         raise Exception("remove schedule failed. message=%s" % (jc.get("message")))
Пример #11
0
    def take_action(self, parsed_args):
        url = parsed_args.url
        username = parsed_args.username
        password = parsed_args.password
        session = Session(url, username, password)
        session_id = session.get_session_id()

        project = parsed_args.project
        params = {"delete": "true"}
        params["session.id"] = session_id
        params["project"] = project
        r = requests.get(url + "/manager", params=params)
Пример #12
0
 def take_action(self, parsed_args):
     url = parsed_args.url
     username = parsed_args.username
     password = parsed_args.password
     execid = parsed_args.execid
     session = Session(url, username, password)
     session_id = session.get_session_id()
     params = {"ajax":"fetchexecflow"}
     params["session.id"] = session_id
     params["execid"] = execid
     r = requests.get(url + "/executor", params=params)
     jc = r.json()
     if jc.get("error") is None:
         print jc.get("status")
     else:
         raise Exception("fetch flow failed. error=%s" % (jc.get("error")))
Пример #13
0
 def take_action(self, parsed_args):
     url = parsed_args.url
     username = parsed_args.username
     password = parsed_args.password
     execid = parsed_args.execid
     session = Session(url, username, password)
     session_id = session.get_session_id()
     params = {"ajax": "fetchexecflow"}
     params["session.id"] = session_id
     params["execid"] = execid
     r = requests.get(url + "/executor", params=params)
     jc = r.json()
     if jc.get("error") is None:
         print jc.get("status")
     else:
         raise Exception("fetch flow failed. error=%s" % (jc.get("error")))
Пример #14
0
    def take_action(self, parsed_args):
        url = parsed_args.url
        username = parsed_args.username
        password = parsed_args.password
        session = Session(url, username, password)
        session_id = session.get_session_id()
        project = parsed_args.project
        flow = parsed_args.flow
        returnExecid = parsed_args.returnExecid
        params = {"ajax": "executeFlow"}
        params["session.id"] = session_id
        params["project"] = project
        params["flow"] = flow
        params["disabled"] = parsed_args.disabled
        params["successEmails"] = parsed_args.successEmails
        params["failureEmails"] = parsed_args.failureEmails
        params["successEmailsOverride"] = parsed_args.successEmailsOverride
        params["failureEmailsOverride"] = parsed_args.failureEmailsOverride
        params["notifyFailureFirst"] = parsed_args.notifyFailureFirst
        params["notifyFailureLast"] = parsed_args.notifyFailureLast
        params["failureAction"] = parsed_args.failureAction
        params["concurrentOption"] = parsed_args.concurrentOption

        for item in parsed_args.flowOverride:
            pair = item.split("=")
            params["flowOverride[%s]" % pair[0]] = pair[1]

        r = requests.get(url + "/executor", params=params)
        jc = r.json()
        if jc.get("error") is not None:
            raise Exception("exec failed. error=%s" % (jc.get("error")))
        if jc.get("execid") is None:
            raise Exception(
                "exec failed. project=%s. flow=%s. message=%s. error=%s" %
                (jc.get("project"), jc.get("flow"), jc.get("message"),
                 jc.get("error")))
        else:
            if returnExecid:
                print jc.get("execid")
            else:
                print "exec succeeded. execid=%s. project=%s. flow=%s. message=%s" % (
                    jc.get("execid"), jc.get("project"), jc.get("flow"),
                    jc.get("message"))
Пример #15
0
    def take_action(self, parsed_args):
        url = parsed_args.url
        username = parsed_args.username
        password = parsed_args.password
        session = Session(url, username, password)
        session_id = session.get_session_id()

        project = parsed_args.project
        description = parsed_args.description
        data = {"action":"create"}
        data["session.id"] = session_id
        data["name"] = project
        data["description"] = description
        r = requests.post(url + "/manager", data=data)
        jc = r.json()
        
        if jc.get("status") == 'success':
            print "create project succeeded. status=%s, path=%s, action=%s" % (jc.get("status"), jc.get("path"), jc.get("action"))
        else:
            raise Exception("create project failed. message=%s, error=%s" % (jc.get("message"), jc.get("error")))
Пример #16
0
    def take_action(self, parsed_args):
        url = parsed_args.url
        username = parsed_args.username
        password = parsed_args.password
        session = Session(url, username, password)
        session_id = session.get_session_id()

        project = parsed_args.project
        filename = parsed_args.filename
        data = {"ajax": "upload"}
        data["session.id"] = session_id
        data["project"] = project
        files = {"file": (os.path.basename(filename), open(filename), "application/zip")}
        r = requests.post(url + "/manager", data=data, files=files)
        jc = r.json()

        if jc.get("error") is None:
            print "upload succeeded."
        else:
            raise Exception("upload failed. error=%s" % (jc.get("error")))
Пример #17
0
    def take_action(self, parsed_args):
        url = parsed_args.url
        username = parsed_args.username
        password = parsed_args.password
        session = Session(url, username, password)
        session_id = session.get_session_id()

        project = parsed_args.project
        description = parsed_args.description
        data = {"action": "create"}
        data["session.id"] = session_id
        data["name"] = project
        data["description"] = description
        r = requests.post(url + "/manager", data=data)
        jc = r.json()

        if jc.get("status") == 'success':
            print "create project succeeded. status=%s, path=%s, action=%s" % (
                jc.get("status"), jc.get("path"), jc.get("action"))
        else:
            raise Exception("create project failed. message=%s, error=%s" %
                            (jc.get("message"), jc.get("error")))
Пример #18
0
    def take_action(self, parsed_args):
        url = parsed_args.url
        username = parsed_args.username
        password = parsed_args.password
        session = Session(url, username, password)
        session_id = session.get_session_id()

        project = parsed_args.project
        filename = parsed_args.filename
        data = {"ajax": "upload"}
        data["session.id"] = session_id
        data["project"] = project
        files = {
            'file':
            (os.path.basename(filename), open(filename), 'application/zip')
        }
        r = requests.post(url + "/manager", data=data, files=files)
        jc = r.json()

        if jc.get("error") is None:
            print "upload succeeded."
        else:
            raise Exception("upload failed. error=%s" % (jc.get("error")))