private void swapMRActionID(WorkflowJob wjBean) { List<WorkflowAction> actions = wjBean.getActions(); if (actions != null) { for (WorkflowAction wa : actions) { swapMRActionID(wa); } } }
private void swapMRActionID(WorkflowJob wjBean) { List<WorkflowAction> actions = wjBean.getActions(); if (actions != null) { for (WorkflowAction wa : actions) { swapMRActionID(wa); } } }
private Map<String, WorkflowAction> fillWorkflowActions() { final Map<String, WorkflowAction> workflowActions = new LinkedHashMap<>(); boolean found = false; for (final WorkflowAction wfAction : job.getActions()) { workflowActions.put(wfAction.getName(), wfAction); if (!found) { switch (wfAction.getStatus()) { case KILLED: case ERROR: case FAILED: showKill = true; // Assuming on error the workflow eventually ends with kill node found = true; break; default: // Look further break; } } } return workflowActions; }
private static void printWorkflowInfo(WorkflowJob wf) { System.out.println("Application Path : " + wf.getAppPath()); System.out.println("Application Name : " + wf.getAppName()); System.out.println("Application Status : " + wf.getStatus()); System.out.println("Application Actions:"); for (WorkflowAction action : wf.getActions()) { System.out.println(MessageFormat.format(" Name: {0} Type: {1} Status: {2}", action.getName(), action.getType(), action.getStatus())); } System.out.println(); } }
private static void printWorkflowInfo(WorkflowJob wf) { System.out.println("Application Path : " + wf.getAppPath()); System.out.println("Application Name : " + wf.getAppName()); System.out.println("Application Status : " + wf.getStatus()); System.out.println("Application Actions:"); for (WorkflowAction action : wf.getActions()) { System.out.println(MessageFormat.format(" Name: {0} Type: {1} Status: {2}", action.getName(), action.getType(), action.getStatus())); } System.out.println(); }
private Map<String, WorkflowAction> fillWorkflowActions() { final Map<String, WorkflowAction> workflowActions = new LinkedHashMap<>(); boolean found = false; for (final WorkflowAction wfAction : job.getActions()) { workflowActions.put(wfAction.getName(), wfAction); if (!found) { switch (wfAction.getStatus()) { case KILLED: case ERROR: case FAILED: showKill = true; // Assuming on error the workflow eventually ends with kill node found = true; break; default: // Look further break; } } } return workflowActions; }
protected WorkflowAction getJavaAction(WorkflowJob workflowJob){ List<WorkflowAction> actions = workflowJob.getActions(); for(WorkflowAction wa : actions){ if(wa.getType().equals("java")){ return wa; } } return null; } /**
public boolean evaluate() throws Exception { return (wfClient.getJobInfo(jobId).getStatus() == WorkflowJob.Status.KILLED) && (wfClient.getJobInfo(jobId).getActions().get(1).getStatus() == WorkflowAction.Status.ERROR); } });
public boolean evaluate() throws Exception { return (wfClient.getJobInfo(jobId).getStatus() == WorkflowJob.Status.SUCCEEDED) && (wfClient.getJobInfo(jobId).getActions().get(2).getStatus() == WorkflowAction.Status.OK); } });
public boolean evaluate() throws Exception { return (wfClient.getJobInfo(jobId).getStatus() == WorkflowJob.Status.SUCCEEDED) && (wfClient.getJobInfo(jobId).getActions().get(1).getStatus() == WorkflowAction.Status.OK); } });
public boolean evaluate() throws Exception { return (wfClient.getJobInfo(jobId).getStatus() == WorkflowJob.Status.SUCCEEDED) && (wfClient.getJobInfo(jobId).getActions().get(1).getStatus() == WorkflowAction.Status.OK); } });
@Override public boolean evaluate() throws Exception { final WorkflowJob.Status actualWorkflowJobStatus = wfClient.getJobInfo(jobId).getStatus(); final boolean isWorkflowInState = actualWorkflowJobStatus.equals(expectedWorkflowJobStatus); final WorkflowAction.Status actualWorkflowActionStatus = wfClient.getJobInfo(jobId).getActions().get(1).getStatus(); final boolean isWorkflowActionInState = actualWorkflowActionStatus.equals(expectedWorkflowActionStatus); return isWorkflowInState && isWorkflowActionInState; } }
public void testParentGlobalConf() throws Exception { try { Path subWorkflowAppPath = createSubWorkflowXml(); String workflowUri = createTestWorkflowXml(subWorkflowAppPath); LocalOozie.start(); final OozieClient wfClient = LocalOozie.getClient(); final String jobId = submitWorkflow(workflowUri, wfClient); waitFor(JOB_TIMEOUT, new Predicate() { public boolean evaluate() throws Exception { return (wfClient.getJobInfo(jobId).getStatus() == WorkflowJob.Status.SUCCEEDED) && (wfClient.getJobInfo(jobId).getActions().get(1).getStatus() == WorkflowAction.Status.OK); } }); WorkflowJob subWorkflow = wfClient.getJobInfo(wfClient.getJobInfo(jobId). getActions().get(1).getExternalId()); Configuration subWorkflowConf = getWorkflowConfig(subWorkflow); Element eConf = XmlUtils.parseXml(subWorkflow.getActions().get(1).getConf()); Element element = eConf.getChild("configuration", eConf.getNamespace()); Configuration actionConf = new XConfiguration(new StringReader(XmlUtils.prettyPrint(element).toString())); assertEquals("foo1", actionConf.get("foo1")); assertEquals("subconf", actionConf.get("foo2")); assertEquals("foo3", actionConf.get("foo3")); // Checking the action conf configuration. assertEquals("actionconf", subWorkflowConf.get("foo3")); } finally { LocalOozie.stop(); } }
String subWorkflowExternalId = wfClient.getJobInfo(jobId).getActions().get(1).getExternalId(); wfClient.kill(wfClient.getJobInfo(jobId).getActions().get(1).getExternalId()); WorkflowJob job = wfClient.getJobInfo(wfClient.getJobInfo(jobId).getActions().get(2).getExternalId()); assertEquals(WorkflowJob.Status.SUCCEEDED, job.getStatus()); assertEquals(job.getId(), subWorkflowExternalId);
String jobId1 = wfClient.getJobInfo(jobId0).getActions().get(1).getExternalId(); assertEquals(WorkflowJob.Status.KILLED, wfClient.getJobInfo(jobId1).getStatus()); String jobId2 = wfClient.getJobInfo(jobId1).getActions().get(1).getExternalId(); assertEquals(WorkflowJob.Status.KILLED, wfClient.getJobInfo(jobId2).getStatus()); String jobId3 = wfClient.getJobInfo(jobId2).getActions().get(1).getExternalId(); assertEquals(WorkflowJob.Status.KILLED, wfClient.getJobInfo(jobId3).getStatus()); String jobId4 = wfClient.getJobInfo(jobId3).getActions().get(1).getExternalId();
getActions().get(1).getExternalId()); Element eConf = XmlUtils.parseXml(subWorkflow.getActions().get(1).getConf()); Element element = eConf.getChild("configuration", eConf.getNamespace()); Configuration actionConf = new XConfiguration(new StringReader(XmlUtils.prettyPrint(element).toString()));
public void testSubWorkflowSuspend() throws Exception { try { String workflowUri = createSubWorkflowWithLazyAction(true); LocalOozie.start(); final OozieClient wfClient = LocalOozie.getClient(); final String jobId = submitWorkflow(workflowUri, wfClient); waitForWorkflowToStart(wfClient, jobId); WorkflowJob wf = wfClient.getJobInfo(jobId); // Suspending subworkflow new SuspendXCommand(wf.getActions().get(1).getExternalId()).call(); // Check suspend for base workflow assertEquals(WorkflowJob.Status.SUSPENDED, wfClient.getJobInfo(jobId).getStatus()); //Check suspend for sub workflow assertEquals(WorkflowJob.Status.SUSPENDED, wfClient.getJobInfo(wf.getActions().get(1).getExternalId()).getStatus()); } finally { LocalOozie.stop(); } }
List<WorkflowAction> actions = wfClient.getJobInfo(jobId1).getActions(); assertEquals(WorkflowAction.Status.OK, actions.get(1).getStatus()); // fork assertEquals(WorkflowAction.Status.OK, actions.get(2).getStatus()); // sh1 actions = wfClient.getJobInfo(jobId1).getActions(); assertEquals(WorkflowAction.Status.OK, actions.get(1).getStatus()); // fork assertEquals(WorkflowAction.Status.OK, actions.get(2).getStatus()); // sh1
for (WorkflowAction action : wf.getActions()) { boolean checked = false; for (String name : prepActions) {
.writeDateValue("Start Time : ", job.getStartTime()) .writeIntValue("Run : ", job.getRun()) .writeIntValue("Action Count : ", job.getActions().size()) .writeNewLine() .writeString("ACTIONS\n") .flush(); final List<WorkflowAction> workflowActions = job.getActions(); for (int actionCount = 0; actionCount != workflowActions.size() && actionCount < maxChildActions; ++actionCount) { final WorkflowAction action = workflowActions.get(actionCount);