testcontainers 8.1.0 → 8.1.1-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -33,26 +33,29 @@ const getDockerClient = () => __awaiter(void 0, void 0, void 0, function* () {
33
33
  const dockerConfig = strategy.getDockerConfig();
34
34
  const dockerode = new dockerode_1.default(createDockerodeOptions(dockerConfig));
35
35
  logger_1.log.debug(`Testing Docker client strategy URI: ${dockerConfig.uri}`);
36
- if (yield isDockerDaemonReachable(dockerode)) {
37
- const host = yield resolveHost(dockerode, dockerConfig.uri);
38
- logger_1.log.info(`Using Docker client strategy: ${strategy.getName()}, Docker host: ${host}`);
39
- log_system_diagnostics_1.logSystemDiagnostics();
40
- return { host, dockerode };
41
- }
42
- else {
43
- logger_1.log.warn(`Docker client strategy ${strategy.getName()} is not reachable`);
44
- }
36
+ // if (await isDockerDaemonReachable(dockerode)) {
37
+ const host = yield resolveHost(dockerode, dockerConfig.uri);
38
+ logger_1.log.info(`Using Docker client strategy: ${strategy.getName()}, Docker host: ${host}`);
39
+ log_system_diagnostics_1.logSystemDiagnostics();
40
+ return { host, dockerode };
41
+ // } else {
42
+ // log.warn(`Docker client strategy ${strategy.getName()} is not reachable`);
43
+ // }
45
44
  }
46
45
  }
47
46
  throw new Error("No Docker client strategy found");
48
47
  });
49
48
  const createDockerodeOptions = (dockerConfig) => {
50
49
  const dockerOptions = {};
51
- if (dockerConfig.isSocket) {
52
- dockerOptions.socketPath = new url_1.URL(dockerConfig.uri).pathname;
50
+ if (dockerConfig.socketPath) {
51
+ dockerOptions.socketPath = dockerConfig.socketPath;
53
52
  }
54
53
  else {
55
- dockerOptions.host = dockerConfig.uri;
54
+ const { protocol, hostname, port } = new url_1.URL(dockerConfig.uri);
55
+ // @ts-ignore
56
+ dockerOptions.protocol = protocol.slice(0, -1);
57
+ dockerOptions.host = hostname;
58
+ dockerOptions.port = port;
56
59
  }
57
60
  if (dockerConfig.ssl) {
58
61
  dockerOptions.ca = dockerConfig.ssl.ca;
@@ -61,13 +64,11 @@ const createDockerodeOptions = (dockerConfig) => {
61
64
  }
62
65
  return dockerOptions;
63
66
  };
64
- const isDockerDaemonReachable = (dockerode) => __awaiter(void 0, void 0, void 0, function* () { return (yield dockerode.ping()).toString() === "OK"; });
65
67
  class ConfigurationStrategy {
66
68
  getDockerConfig() {
67
69
  const { DOCKER_HOST, DOCKER_TLS_VERIFY, DOCKER_CERT_PATH } = process.env;
68
70
  return {
69
71
  uri: DOCKER_HOST,
70
- isSocket: false,
71
72
  ssl: DOCKER_TLS_VERIFY === "1" && DOCKER_CERT_PATH !== undefined
72
73
  ? {
73
74
  ca: path_1.default.resolve(DOCKER_CERT_PATH, "ca.pem"),
@@ -88,7 +89,7 @@ class UnixSocketStrategy {
88
89
  getDockerConfig() {
89
90
  return {
90
91
  uri: "unix:///var/run/docker.sock",
91
- isSocket: true,
92
+ socketPath: "/var/run/docker.sock",
92
93
  };
93
94
  }
94
95
  isApplicable() {
@@ -102,7 +103,7 @@ class NpipeSocketStrategy {
102
103
  getDockerConfig() {
103
104
  return {
104
105
  uri: "npipe:////./pipe/docker_engine",
105
- isSocket: true,
106
+ socketPath: "//./pipe/docker_engine",
106
107
  };
107
108
  }
108
109
  isApplicable() {
@@ -19,7 +19,7 @@ const logSystemDiagnostics = () => __awaiter(void 0, void 0, void 0, function* (
19
19
  docker: yield get_info_1.getDockerInfo(),
20
20
  dockerCompose: yield getDockerComposeInfo(),
21
21
  };
22
- logger_1.log.debug(`System diagnostics: ${JSON.stringify(info, null, 2)}`);
22
+ logger_1.log.debug(`System diagnostics: ${JSON.stringify(info)}`);
23
23
  });
24
24
  exports.logSystemDiagnostics = logSystemDiagnostics;
25
25
  const getNodeInfo = () => {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "testcontainers",
3
3
  "author": "Cristian Greco",
4
- "version": "8.1.0",
4
+ "version": "8.1.1-beta.3",
5
5
  "main": "dist/index",
6
6
  "types": "dist/index",
7
7
  "keywords": [