@Nonnull private DockerClient openDockerClient() throws MojoExecutionException { final RegistryAuthSupplier authSupplier = createRegistryAuthSupplier(); try { return DefaultDockerClient.fromEnv() .readTimeoutMillis(readTimeoutMillis) .connectTimeoutMillis(connectTimeoutMillis) .registryAuthSupplier(authSupplier) .useProxy(useProxy) .build(); } catch (DockerCertificateException e) { throw new MojoExecutionException("Could not load Docker certificates", e); } }
@Override public DefaultDockerClient.Builder configure(TestContext testContext, VirtualResource virtualResource, PropertiesReader configReader) { try { DefaultDockerClient.Builder builder = DefaultDockerClient.fromEnv(); PropertiesReader reader = configReader; if (reader.isEmpty()) { reader = testContext.getPropertiesReader(DEFAULT_CONFIG_KEY); } if (!reader.isEmpty()) { RegistryAuth registryAuth = RegistryAuth.builder() .serverAddress(reader.getProperty("uri")) .email(reader.getProperty("email")) .username(reader.getProperty("username")) .password(reader.getProperty("password")) .build(); RegistryAuthSupplier dockerHubAuthSupplier = new DockerHubRegistryAuthSupplier(registryAuth); //TODO: explore making these configuration configurable via .testify.yml file builder.registryAuthSupplier(dockerHubAuthSupplier) .connectTimeoutMillis(10000) .connectionPoolSize(16); } return builder; } catch (DockerCertificateException e) { throw ExceptionUtil.INSTANCE.propagate(e); } }
@Override public Statement apply(Statement statement, Description description) { try { DefaultDockerClient client = DefaultDockerClient.fromEnv() .connectTimeoutMillis(5000L) .readTimeoutMillis(20000L) .registryAuthSupplier(new FixedRegistryAuthSupplier()) .build(); client.ping(); client.pull(IMAGE); client.close(); } catch (Throwable t) { Assume.assumeNoException(t); } return wrappedRule.apply(statement, description); }
public DockerClient buildDockerClient(Registry registry, String dockerHostUri, long connectTimeout, long readTimeout) { final DockerClient dockerClient = DefaultDockerClient.builder() .authConfig(registry.toAuthConfig()) .uri(dockerHostUri) .connectTimeoutMillis(connectTimeout) .readTimeoutMillis(readTimeout) .build(); return dockerClient; } }
DockerClient build(Registry registry, String dockerHost, long connectTimeout, long readTimeout) { final DockerClient dockerClient = DefaultDockerClient.builder() .authConfig(registry.toAuthConfig()) .uri(dockerHost) .connectTimeoutMillis(connectTimeout) .readTimeoutMillis(readTimeout) .build(); return dockerClient; } }
protected DockerClient createDockerClient() throws DockerClientException { try { return DefaultDockerClient.fromEnv() // .connectTimeoutMillis(5000) // .readTimeoutMillis(20000) // .build(); } catch (final IllegalStateException | IllegalArgumentException | DockerCertificateException e) { throw new DockerClientException("Unable to create docker client", e); } }