@nx/docker 23.0.0-beta.5 → 23.0.0-beta.6

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.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nx/docker",
3
3
  "description": "The Nx Plugin for Docker to aid in containerizing projects.",
4
- "version": "23.0.0-beta.5",
4
+ "version": "23.0.0-beta.6",
5
5
  "type": "commonjs",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -51,11 +51,11 @@
51
51
  "executors": "./executors.json",
52
52
  "generators": "./generators.json",
53
53
  "dependencies": {
54
- "@nx/devkit": "23.0.0-beta.5",
54
+ "@nx/devkit": "23.0.0-beta.6",
55
55
  "enquirer": "~2.3.6",
56
56
  "tslib": "^2.3.0"
57
57
  },
58
58
  "devDependencies": {
59
- "nx": "23.0.0-beta.5"
59
+ "nx": "23.0.0-beta.6"
60
60
  }
61
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../../../packages/docker/src/generators/init/init.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,IAAI,EACT,KAAK,iBAAiB,EAQvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAI/C,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,mBAAmB,qBAUzE;AAwCD,wBAAsB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,mBAAmB,8BAiB1E;AAED,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../../../packages/docker/src/generators/init/init.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,IAAI,EACT,KAAK,iBAAiB,EAQvB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAI/C,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,mBAAmB,qBAUzE;AAwCD,wBAAsB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,mBAAmB,8BAiB1E;AAED,eAAe,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../../packages/docker/src/plugins/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAQnB,MAAM,YAAY,CAAC;AAUpB,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;;;;OASG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CACrB,MAAM,EACN,IAAI,CAAC,mBAAmB,EAAE,gBAAgB,GAAG,MAAM,CAAC,CACrD,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAAC;CAC1C;AAsBD,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,mBAAmB,CAmC5D,CAAC;AAmDF,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,MAAM,CAOR"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../../packages/docker/src/plugins/plugin.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,aAAa,EAOnB,MAAM,YAAY,CAAC;AAQpB,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;;;;OASG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CACrB,MAAM,EACN,IAAI,CAAC,mBAAmB,EAAE,gBAAgB,GAAG,MAAM,CAAC,CACrD,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAAC;CAC1C;AAWD,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,mBAAmB,CAmC5D,CAAC;AAoDF,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,MAAM,CAOR"}
@@ -2,44 +2,39 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createNodesV2 = void 0;
4
4
  exports.getProjectNameFromPath = getProjectNameFromPath;
5
+ const internal_1 = require("@nx/devkit/internal");
5
6
  const devkit_1 = require("@nx/devkit");
6
- const calculate_hash_for_create_nodes_1 = require("@nx/devkit/src/utils/calculate-hash-for-create-nodes");
7
7
  const file_hasher_1 = require("nx/src/hasher/file-hasher");
8
8
  const cache_directory_1 = require("nx/src/utils/cache-directory");
9
9
  const fs_1 = require("fs");
10
10
  const path_1 = require("path");
11
- const get_named_inputs_1 = require("@nx/devkit/src/utils/get-named-inputs");
12
11
  const git_utils_1 = require("nx/src/utils/git-utils");
13
12
  const interpolate_pattern_1 = require("../utils/interpolate-pattern");
14
- function readTargetsCache(cachePath) {
15
- return (0, fs_1.existsSync)(cachePath) ? (0, devkit_1.readJsonFile)(cachePath) : {};
16
- }
17
- function writeTargetsCache(cachePath, results) {
18
- (0, devkit_1.writeJsonFile)(cachePath, results ?? {});
19
- }
20
13
  const dockerfileGlob = '**/Dockerfile';
21
14
  exports.createNodesV2 = [
22
15
  dockerfileGlob,
23
16
  async (configFilePaths, options, context) => {
24
17
  const optionsHash = (0, file_hasher_1.hashObject)(options);
25
18
  const cachePath = (0, path_1.join)(cache_directory_1.workspaceDataDirectory, `docker-${optionsHash}.hash`);
26
- const targetsCache = readTargetsCache(cachePath);
19
+ const targetsCache = new internal_1.PluginCache(cachePath);
27
20
  const projectRoots = configFilePaths.map((c) => (0, path_1.dirname)(c));
28
21
  const normalizedOptions = normalizePluginOptions(options);
29
22
  // TODO(colum): investigate hashing only the dockerfile
30
- const hashes = await (0, calculate_hash_for_create_nodes_1.calculateHashesForCreateNodes)(projectRoots, normalizedOptions, context);
23
+ const hashes = await (0, internal_1.calculateHashesForCreateNodes)(projectRoots, normalizedOptions, context);
31
24
  try {
32
25
  return await (0, devkit_1.createNodesFromFiles)((configFile, _, context, idx) => createNodesInternal(configFile, hashes[idx] + configFile, normalizedOptions, context, targetsCache), configFilePaths, options, context);
33
26
  }
34
27
  finally {
35
- writeTargetsCache(cachePath, targetsCache);
28
+ targetsCache.writeToDisk();
36
29
  }
37
30
  },
38
31
  ];
39
32
  async function createNodesInternal(configFilePath, hash, normalizedOptions, context, targetsCache) {
40
33
  const projectRoot = (0, path_1.dirname)(configFilePath);
41
- targetsCache[hash] ??= await createDockerTargets(projectRoot, normalizedOptions, context);
42
- const { targets, metadata } = targetsCache[hash];
34
+ if (!targetsCache.has(hash)) {
35
+ targetsCache.set(hash, await createDockerTargets(projectRoot, normalizedOptions, context));
36
+ }
37
+ const { targets, metadata } = targetsCache.get(hash);
43
38
  return {
44
39
  projects: {
45
40
  [projectRoot]: {
@@ -135,7 +130,7 @@ async function createDockerTargets(projectRoot, options, context) {
135
130
  const imageRef = getProjectNameFromPath(projectRoot, devkit_1.workspaceRoot);
136
131
  const interpolatedBuildTarget = interpolateDockerTargetOptions(options.buildTarget, projectRoot, imageRef, context);
137
132
  const interpolatedRunTarget = interpolateDockerTargetOptions(options.runTarget, projectRoot, imageRef, context);
138
- const namedInputs = (0, get_named_inputs_1.getNamedInputs)(projectRoot, context);
133
+ const namedInputs = (0, internal_1.getNamedInputs)(projectRoot, context);
139
134
  const targets = {};
140
135
  const metadata = {
141
136
  targetGroups: {