@Test public void should_override_custom_cube_properties() throws IOException { File newFile = testFolder.newFile("config.yaml"); Files.write(Paths.get(newFile.toURI()), CONTENT.getBytes()); Map<String, String> parameters = new HashMap<String, String>(); parameters.put("serverVersion", "1.13"); parameters.put("serverUri", "http://localhost:25123"); parameters.put("dockerContainersFiles", newFile.toURI().toString()); parameters.put("definitionFormat", DefinitionFormat.CUBE.name()); parameters.put("cubeSpecificProperties", OVERRIDE_CUSTOM); CubeDockerConfiguration cubeConfiguration = CubeDockerConfiguration.fromMap(parameters, null); final DockerCompositions dockerContainersContent = cubeConfiguration.getDockerContainersContent(); final CubeContainer tomcat = dockerContainersContent.get("tomcat"); assertThat(tomcat, is(notNullValue())); assertThat(tomcat.getImage().getTag(), is("7.0")); assertThat(tomcat.getAwait().getStrategy(), is("polling")); assertThat(tomcat.getBeforeStop().size(), is(1)); }
cubeContainer.setBeforeStop(overrideCubeContainer.getBeforeStop());
cubeContainer.setBeforeStop(overrideCubeContainer.getBeforeStop());
public void processCommands(@Observes org.arquillian.cube.spi.event.lifecycle.BeforeStop beforeStop, CubeRegistry cubeRegistry, DockerClientExecutor dockerClientExecutor) throws IOException { Cube<CubeContainer> cube = cubeRegistry.getCube(beforeStop.getCubeId(), DockerCube.class); CubeContainer configuration = cube.configuration(); if (configuration.getBeforeStop() != null) { Collection<BeforeStop> beforeStopConfiguration = configuration.getBeforeStop(); for (BeforeStop map : beforeStopConfiguration) { if (map.getCopy() != null) { Copy copyConfiguration = map.getCopy(); executeCopyAction(dockerClientExecutor, beforeStop.getCubeId(), copyConfiguration); } else { if (map.getLog() != null) { Log logConfiguration = map.getLog(); executeLogAction(dockerClientExecutor, beforeStop.getCubeId(), logConfiguration); } } if (map.getCustomBeforeStopAction() != null) { CustomBeforeStopAction customBeforeStopAction = map.getCustomBeforeStopAction(); executeCustomBeforeStopAction(dockerClientExecutor, beforeStop.getCubeId(), customBeforeStopAction); } } } }
public void processCommands(@Observes org.arquillian.cube.spi.event.lifecycle.BeforeStop beforeStop, CubeRegistry cubeRegistry, DockerClientExecutor dockerClientExecutor) throws IOException { Cube<CubeContainer> cube = cubeRegistry.getCube(beforeStop.getCubeId(), DockerCube.class); CubeContainer configuration = cube.configuration(); if (configuration.getBeforeStop() != null) { Collection<BeforeStop> beforeStopConfiguration = configuration.getBeforeStop(); for (BeforeStop map : beforeStopConfiguration) { if (map.getCopy() != null) { Copy copyConfiguration = map.getCopy(); executeCopyAction(dockerClientExecutor, beforeStop.getCubeId(), copyConfiguration); } else { if (map.getLog() != null) { Log logConfiguration = map.getLog(); executeLogAction(dockerClientExecutor, beforeStop.getCubeId(), logConfiguration); } } if (map.getCustomBeforeStopAction() != null) { CustomBeforeStopAction customBeforeStopAction = map.getCustomBeforeStopAction(); executeCustomBeforeStopAction(dockerClientExecutor, beforeStop.getCubeId(), customBeforeStopAction); } } } }