MCPcopy Index your code
hub / github.com/meteor/meteor / getDevBundleDir

Function getDevBundleDir

tools/cli/dev-bundle.js:15–65  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

13 Promise.resolve(path.join(rootDir, "dev_bundle"));
14
15function getDevBundleDir() {
16 // Note that this code does not care if we are running meteor from a
17 // checkout, because it's always better to respect the .meteor/release
18 // file of the current app, if possible.
19
20 var releaseFile = find(
21 process.cwd(),
22 makeStatTest("isFile"),
23 ".meteor", "release"
24 );
25
26 if (! releaseFile) {
27 return defaultDevBundlePromise;
28 }
29
30 var localDir = path.join(path.dirname(releaseFile), "local");
31 if (! statOrNull(localDir, "isDirectory")) {
32 try {
33 fs.mkdirSync(localDir);
34 } catch (e) {
35 return defaultDevBundlePromise;
36 }
37 }
38
39 var devBundleLink = path.join(localDir, "dev_bundle");
40 var devBundleStat = statOrNull(devBundleLink);
41 if (devBundleStat) {
42 return new Promise(function (resolve) {
43 resolve(links.readLink(devBundleLink));
44 });
45 }
46
47 var release = fs.readFileSync(
48 releaseFile, "utf8"
49 ).replace(/^\s+|\s+$/g, "");
50
51 if (! /^METEOR@\d+/.test(release)) {
52 return defaultDevBundlePromise;
53 }
54
55 return Promise.resolve(
56 getDevBundleForRelease(release)
57 ).then(function (devBundleDir) {
58 if (devBundleDir) {
59 links.makeLink(devBundleDir, devBundleLink);
60 return devBundleDir;
61 }
62
63 return defaultDevBundlePromise;
64 });
65}
66
67function getDevBundleForRelease(release) {
68 var parts = release.split("@");

Callers 1

dev-bundle.jsFile · 0.85

Calls 7

makeStatTestFunction · 0.85
getDevBundleForReleaseFunction · 0.85
findFunction · 0.70
statOrNullFunction · 0.70
resolveFunction · 0.50
resolveMethod · 0.45
makeLinkMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…