testcontainers 10.10.0 → 10.10.2

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.
@@ -49,7 +49,7 @@ async function getContainerRuntimeClient() {
49
49
  ];
50
50
  for (const strategy of strategies) {
51
51
  try {
52
- common_1.log.debug(`Testing container runtime strategy "${strategy.getName()}"...`);
52
+ common_1.log.debug(`Checking container runtime strategy "${strategy.getName()}"...`);
53
53
  const client = await initStrategy(strategy);
54
54
  if (client) {
55
55
  common_1.log.debug(`Container runtime strategy "${strategy.getName()}" works`);
@@ -57,8 +57,11 @@ async function getContainerRuntimeClient() {
57
57
  return client;
58
58
  }
59
59
  }
60
- catch {
61
- common_1.log.debug(`Container runtime strategy "${strategy.getName()}" does not work`);
60
+ catch (err) {
61
+ common_1.log.debug(`Container runtime strategy "${strategy.getName()}" does not work: "${err}"`);
62
+ if (err !== null && typeof err === "object" && "stack" in err && typeof err.stack === "string") {
63
+ common_1.log.debug(err.stack);
64
+ }
62
65
  }
63
66
  }
64
67
  throw new Error("Could not find a working container runtime strategy");
@@ -67,6 +70,7 @@ exports.getContainerRuntimeClient = getContainerRuntimeClient;
67
70
  async function initStrategy(strategy) {
68
71
  const result = await strategy.getResult();
69
72
  if (!result) {
73
+ common_1.log.debug(`Container runtime strategy "${strategy.getName()}" is not applicable`);
70
74
  return undefined;
71
75
  }
72
76
  const dockerodeOptions = {
@@ -74,26 +78,33 @@ async function initStrategy(strategy) {
74
78
  headers: { ...result.dockerOptions.headers, "User-Agent": `tc-node/${version_1.LIB_VERSION}` },
75
79
  };
76
80
  const dockerode = new dockerode_1.default(dockerodeOptions);
81
+ common_1.log.trace("Fetching Docker info...");
77
82
  const dockerodeInfo = await dockerode.info();
78
83
  const indexServerAddress = !(0, common_1.isDefined)(dockerodeInfo.IndexServerAddress) || (0, common_1.isEmptyString)(dockerodeInfo.IndexServerAddress)
79
84
  ? "https://index.docker.io/v1/"
80
85
  : dockerodeInfo.IndexServerAddress;
86
+ common_1.log.trace("Fetching remote container runtime socket path...");
81
87
  const remoteContainerRuntimeSocketPath = (0, remote_container_runtime_socket_path_1.getRemoteContainerRuntimeSocketPath)(result, dockerodeInfo.OperatingSystem);
88
+ common_1.log.trace("Resolving host...");
82
89
  const host = await (0, resolve_host_1.resolveHost)(dockerode, result, indexServerAddress);
90
+ common_1.log.trace("Fetching Compose info...");
83
91
  const composeClient = await (0, compose_client_1.getComposeClient)(result.composeEnvironment);
84
- const containerClient = result.uri.includes("podman.sock")
85
- ? new podman_container_client_1.PodmanContainerClient(dockerode)
86
- : new docker_container_client_1.DockerContainerClient(dockerode);
87
- const imageClient = new docker_image_client_1.DockerImageClient(dockerode, indexServerAddress);
88
- const networkClient = new docker_network_client_1.DockerNetworkClient(dockerode);
89
92
  const nodeInfo = {
90
93
  version: process.version,
91
94
  architecture: process.arch,
92
95
  platform: process.platform,
93
96
  };
97
+ common_1.log.trace("Looking up host IPs...");
98
+ const hostIps = await (0, lookup_host_ips_1.lookupHostIps)(host);
99
+ common_1.log.trace("Initialising clients...");
100
+ const containerClient = result.uri.includes("podman.sock")
101
+ ? new podman_container_client_1.PodmanContainerClient(dockerode)
102
+ : new docker_container_client_1.DockerContainerClient(dockerode);
103
+ const imageClient = new docker_image_client_1.DockerImageClient(dockerode, indexServerAddress);
104
+ const networkClient = new docker_network_client_1.DockerNetworkClient(dockerode);
94
105
  const containerRuntimeInfo = {
95
106
  host,
96
- hostIps: await (0, lookup_host_ips_1.lookupHostIps)(host),
107
+ hostIps,
97
108
  remoteSocketPath: remoteContainerRuntimeSocketPath,
98
109
  indexServerAddress: indexServerAddress,
99
110
  serverVersion: dockerodeInfo.ServerVersion,
@@ -106,6 +117,7 @@ async function initStrategy(strategy) {
106
117
  };
107
118
  const composeInfo = composeClient.info;
108
119
  const info = { node: nodeInfo, containerRuntime: containerRuntimeInfo, compose: composeInfo };
120
+ common_1.log.trace(`Container runtime info:\n${JSON.stringify(info, null, 2)}`);
109
121
  return new ContainerRuntimeClient(info, composeClient, containerClient, imageClient, networkClient);
110
122
  }
111
123
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/container-runtime/clients/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/container-runtime/clients/client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const LIB_VERSION = "10.10.0";
1
+ export declare const LIB_VERSION = "10.10.2";
package/build/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LIB_VERSION = void 0;
4
- exports.LIB_VERSION = "10.10.0";
4
+ exports.LIB_VERSION = "10.10.2";
5
5
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "testcontainers",
3
- "version": "10.10.0",
3
+ "version": "10.10.2",
4
4
  "author": "Cristian Greco",
5
5
  "license": "MIT",
6
6
  "keywords": [