use of com.walmartlabs.concord.client.ProcessApi in project concord by walmartlabs.
the class SecretsTaskIT method test.
@Test
public void test() throws Exception {
String secretName = "secret_" + randomString();
byte[] payload = archive(SecretsTaskIT.class.getResource("secretsTask").toURI());
Map<String, Object> input = new HashMap<>();
input.put("archive", payload);
input.put("arguments.secretName", secretName);
StartProcessResponse spr = start(input);
ProcessApi processApi = new ProcessApi(getApiClient());
ProcessEntry pir = waitForCompletion(processApi, spr.getInstanceId());
assertNotNull(pir.getLogFileName());
byte[] bytes = getLog(pir.getLogFileName());
// System.out.println(new String(bytes));
assertLog(".* Delete secret2.*", bytes);
}
use of com.walmartlabs.concord.client.ProcessApi in project concord by walmartlabs.
the class VariablesInjectionIT method test.
@Test
public void test() throws Exception {
byte[] payload = archive(VariablesInjectionIT.class.getResource("inject").toURI(), ITConstants.DEPENDENCIES_DIR);
ProcessApi processApi = new ProcessApi(getApiClient());
StartProcessResponse spr = start(payload);
assertNotNull(spr.getInstanceId());
ProcessEntry pir = waitForCompletion(processApi, spr.getInstanceId());
byte[] ab = getLog(pir.getLogFileName());
assertLog(".*Hello, Concord!.*", ab);
assertLog(".*Hello, world!!!.*", ab);
assertLog(".*Hello, world. \\(from method param\\).*", ab);
assertLog(".*Hello, world. \\(from injected var\\).*", ab);
}
use of com.walmartlabs.concord.client.ProcessApi in project concord by walmartlabs.
the class SuspendIT method test.
@Test
public void test() throws Exception {
URI dir = SuspendIT.class.getResource("suspend").toURI();
byte[] payload = archive(dir);
// ---
ProcessApi processApi = new ProcessApi(getApiClient());
StartProcessResponse spr = start(payload);
// ---
ProcessEntry pir = waitForStatus(processApi, spr.getInstanceId(), ProcessEntry.StatusEnum.SUSPENDED);
byte[] ab = getLog(pir.getLogFileName());
assertLog(".*aaaa.*", ab);
// ---
String testValue = "test#" + randomString();
Map<String, Object> args = Collections.singletonMap("testValue", testValue);
Map<String, Object> req = Collections.singletonMap(Constants.Request.ARGUMENTS_KEY, args);
processApi.resume(spr.getInstanceId(), "ev1", null, req);
pir = waitForCompletion(processApi, spr.getInstanceId());
assertEquals(ProcessEntry.StatusEnum.FINISHED, pir.getStatus());
waitForLog(pir.getLogFileName(), ".*bbbb.*");
waitForLog(pir.getLogFileName(), ".*" + Pattern.quote(testValue) + ".*");
}
use of com.walmartlabs.concord.client.ProcessApi in project concord by walmartlabs.
the class ThrowExceptionTaskIT method testThrowException.
@Test
public void testThrowException() throws Exception {
URI uri = ThrowExceptionTaskIT.class.getResource("throwExceptionTask").toURI();
byte[] payload = archive(uri);
// start the process
ProcessApi processApi = new ProcessApi(getApiClient());
StartProcessResponse spr = start(payload);
// wait for completion
ProcessEntry pir = waitForCompletion(processApi, spr.getInstanceId());
assertEquals(ProcessEntry.StatusEnum.FAILED, pir.getStatus());
// check logs
byte[] ab = getLog(pir.getLogFileName());
assertLog(".*Catch that!.*", 3, ab);
}
use of com.walmartlabs.concord.client.ProcessApi in project concord by walmartlabs.
the class ProcessContainerIT method test.
@Test
public void test() throws Exception {
Path src = Paths.get(DockerIT.class.getResource("processContainer").toURI());
Path dst = IOUtils.createTempDir("test");
IOUtils.copy(src, dst);
Path concordYml = dst.resolve("concord.yml");
String s = new String(Files.readAllBytes(concordYml));
s = s.replaceAll("%%image%%", ITConstants.DOCKER_ANSIBLE_IMAGE);
Files.write(concordYml, s.getBytes());
// ---
byte[] payload = archive(dst.toUri());
StartProcessResponse spr = start(payload);
// --
ProcessApi processApi = new ProcessApi(getApiClient());
ProcessEntry pir = waitForCompletion(processApi, spr.getInstanceId());
assertNotNull(pir.getLogFileName());
assertEquals(ProcessEntry.StatusEnum.FINISHED, pir.getStatus());
byte[] ab = getLog(pir.getLogFileName());
assertLog(".*Hello from Docker!.*", ab);
}
Aggregations