use of io.fabric8.arquillian.kubernetes.log.Logger in project docker-maven-plugin by fabric8io.
the class DockerAssemblyManagerTest method testMultipleCopyInvalidVerifyGivenDockerfile.
@Test
public void testMultipleCopyInvalidVerifyGivenDockerfile(@Injectable final Logger logger) throws IOException {
BuildImageConfiguration buildConfig = createBuildConfigMultiAssembly();
assemblyManager.verifyGivenDockerfile(new File(getClass().getResource("/docker/Dockerfile_assembly_verify_multi_copy_invalid.test").getPath()), buildConfig, createInterpolator(buildConfig), logger);
new Verifications() {
{
logger.warn(anyString, (Object[]) any);
times = 2;
}
};
}
use of io.fabric8.arquillian.kubernetes.log.Logger in project docker-maven-plugin by fabric8io.
the class DockerAssemblyManagerTest method testArchiveCreationDockerfileWithDirAssembly.
@Test
public void testArchiveCreationDockerfileWithDirAssembly(@Injectable final TarArchiver tarArchiver, @Injectable final Logger logger) throws MojoExecutionException, NoSuchArchiverException {
MojoParameters mojoParams = mockMojoParams(mockMavenProject());
BuildImageConfiguration buildImageConfiguration = new BuildImageConfiguration.Builder().dockerFile(DockerAssemblyManagerTest.class.getResource("/docker/Dockerfile.test").getPath()).assembly(new AssemblyConfiguration.Builder().mode(AssemblyMode.dir.name()).build()).build();
buildImageConfiguration.initAndValidate(logger);
File tarArchive = assemblyManager.createDockerTarArchive("test_image", mojoParams, buildImageConfiguration, logger, null);
assertNotNull(tarArchive);
new Verifications() {
{
archiverManager.getArchiver("tar");
times = 1;
List<FileSet> fileSets = new ArrayList<>();
tarArchiver.addFileSet(withCapture(fileSets));
assertEquals(2, fileSets.size());
assertEquals("build", fileSets.get(0).getDirectory().getName());
assertNull(fileSets.get(0).getIncludes());
assertNull(fileSets.get(0).getExcludes());
assertArrayEquals(new String[] { "target/**", "Dockerfile.test" }, fileSets.get(1).getExcludes());
assertNull(fileSets.get(1).getIncludes());
}
};
}
use of io.fabric8.arquillian.kubernetes.log.Logger in project docker-maven-plugin by fabric8io.
the class EcrExtendedAuthTest method testClientClosedAndCredentialsDecoded.
@Test
public void testClientClosedAndCredentialsDecoded(@Mocked final CloseableHttpClient closeableHttpClient, @Mocked final CloseableHttpResponse closeableHttpResponse, @Mocked final StatusLine statusLine) throws IOException, MojoExecutionException {
final HttpEntity entity = new StringEntity("{\"authorizationData\": [{" + "\"authorizationToken\": \"QVdTOnBhc3N3b3Jk\"," + "\"expiresAt\": 1448878779.809," + "\"proxyEndpoint\": \"https://012345678910.dkr.ecr.eu-west-1.amazonaws.com\"}]}");
new Expectations() {
{
statusLine.getStatusCode();
result = 200;
closeableHttpResponse.getEntity();
result = entity;
}
};
EcrExtendedAuth eea = new EcrExtendedAuth(logger, "123456789012.dkr.ecr.eu-west-1.amazonaws.com") {
CloseableHttpClient createClient() {
return closeableHttpClient;
}
};
AuthConfig localCredentials = new AuthConfig("username", "password", null, null);
AuthConfig awsCredentials = eea.extendedAuth(localCredentials);
assertEquals("AWS", awsCredentials.getUsername());
assertEquals("password", awsCredentials.getPassword());
new Verifications() {
{
closeableHttpClient.close();
}
};
}
use of io.fabric8.arquillian.kubernetes.log.Logger in project docker-maven-plugin by fabric8io.
the class BuildServiceTest method testBuildImageWithCacheFrom_ShouldPullImage.
@Test
public void testBuildImageWithCacheFrom_ShouldPullImage() throws Exception {
BuildImageConfiguration buildConfig = new BuildImageConfiguration.Builder().cleanup("false").cacheFrom("fabric8/s1i-java").dockerFile(DockerFileUtilTest.class.getResource("Dockerfile_from_simple").getPath()).filter("false").build();
buildConfig.initAndValidate(logger);
imageConfig = new ImageConfiguration.Builder().name("build-image").alias("build-alias").buildConfig(buildConfig).build();
final ImagePullManager pullManager = new ImagePullManager(null, null, null);
final BuildService.BuildContext buildContext = new BuildService.BuildContext.Builder().mojoParameters(mojoParameters).build();
new Expectations(mojoParameters) {
{
mojoParameters.getProject();
result = mavenProject;
mavenProject.getProperties();
result = new Properties();
}
};
File buildArchive = buildService.buildArchive(imageConfig, buildContext, "");
buildService.buildImage(imageConfig, pullManager, buildContext, buildArchive);
// verify that tries to pull both images
new Verifications() {
{
registryService.pullImageWithPolicy("fabric8/s2i-java", pullManager, buildContext.getRegistryConfig(), buildConfig);
registryService.pullImageWithPolicy("fabric8/s1i-java", pullManager, buildContext.getRegistryConfig(), buildConfig);
}
};
}
use of io.fabric8.arquillian.kubernetes.log.Logger in project docker-maven-plugin by fabric8io.
the class JibBuildService method getRegistryCredentials.
static Credential getRegistryCredentials(RegistryService.RegistryConfig registryConfig, boolean isPush, ImageConfiguration imageConfiguration, Logger log) throws MojoExecutionException {
String registry;
if (isPush) {
registry = EnvUtil.firstRegistryOf(new ImageName(imageConfiguration.getName()).getRegistry(), imageConfiguration.getRegistry(), registryConfig.getRegistry());
} else {
registry = EnvUtil.firstRegistryOf(new ImageName(getBaseImage(imageConfiguration)).getRegistry(), registryConfig.getRegistry());
}
if (registry == null || DEFAULT_DOCKER_REGISTRIES.contains(registry)) {
// Let's assume docker is default registry.
registry = DOCKER_LOGIN_DEFAULT_REGISTRY;
}
AuthConfigFactory authConfigFactory = registryConfig.getAuthConfigFactory();
AuthConfig standardAuthConfig = authConfigFactory.createAuthConfig(isPush, registryConfig.isSkipExtendedAuth(), registryConfig.getAuthConfig(), registryConfig.getSettings(), null, registry);
Credential credentials = null;
if (standardAuthConfig != null) {
credentials = Credential.from(standardAuthConfig.getUsername(), standardAuthConfig.getPassword());
}
return credentials;
}
Aggregations