@optimizely/ocp-cli 1.2.7 → 1.2.8
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/dist/commands/app/BaseBuildCommand.js +1 -1
- package/dist/commands/app/BaseBuildCommand.js.map +1 -1
- package/dist/lib/AppUpdater.d.ts +1 -0
- package/dist/lib/AppUpdater.js +10 -10
- package/dist/lib/AppUpdater.js.map +1 -1
- package/dist/lib/checkForUpdate.js +15 -9
- package/dist/lib/checkForUpdate.js.map +1 -1
- package/dist/lib/packageManagerHandler.d.ts +53 -0
- package/dist/lib/packageManagerHandler.js +162 -0
- package/dist/lib/packageManagerHandler.js.map +1 -0
- package/dist/oo-cli.manifest.json +1 -1
- package/dist/test/AppUpdater.test.d.ts +1 -0
- package/dist/test/AppUpdater.test.js +155 -0
- package/dist/test/AppUpdater.test.js.map +1 -0
- package/dist/test/packageManagerHandler.test.d.ts +1 -0
- package/dist/test/packageManagerHandler.test.js +169 -0
- package/dist/test/packageManagerHandler.test.js.map +1 -0
- package/package.json +1 -1
- package/src/commands/app/BaseBuildCommand.ts +1 -1
- package/src/lib/AppUpdater.ts +14 -15
- package/src/lib/checkForUpdate.ts +24 -13
- package/src/lib/packageManagerHandler.ts +178 -0
- package/src/test/AppUpdater.test.ts +196 -0
- package/src/test/packageManagerHandler.test.ts +190 -0
|
@@ -56,7 +56,7 @@ class BaseBuildCommand {
|
|
|
56
56
|
await AppUpdater_1.AppUpdater.ensureDependencies(upload, this.noPrompt || this.upgradeDeps, context.runtime, true, this.rcDependencies ? 'rc' : 'stable');
|
|
57
57
|
console.log(chalk.gray('Performing local validation...'));
|
|
58
58
|
try {
|
|
59
|
-
(0, child_process_1.execSync)('yarn
|
|
59
|
+
(0, child_process_1.execSync)('yarn validate', { stdio: 'inherit' });
|
|
60
60
|
}
|
|
61
61
|
catch (e) {
|
|
62
62
|
process.exit(1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseBuildCommand.js","sourceRoot":"","sources":["../../../src/commands/app/BaseBuildCommand.ts"],"names":[],"mappings":";;;;;;;;;AAAA,+BAA+B;AAC/B,iDAAuC;AAEvC,mCAAuD;AACvD,qDAA4D;AAC5D,uDAAkD;AAClD,qDAAgD;AAChD,uDAAkD;AAClD,uCAAkC;AAClC,+DAA0D;AAC1D,iEAA4D;AAC5D,yDAAqE;AACrE,+DAA0D;AAC1D,+DAA0D;AAC1D,2CAAsD;AACtD,mDAA8C;AAC9C,uDAAkD;AAClD,yDAAoD;AACpD,6CAAgE;AAChE,IAAO,QAAQ,GAAG,2BAAY,CAAC,QAAQ,CAAC;AAExC,IAAO,UAAU,GAAG,qBAAS,CAAC,UAAU,CAAC;AAEzC,IAAO,eAAe,GAAG,qBAAS,CAAC,eAAe,CAAC;AACnD,IAAO,YAAY,GAAG,qBAAS,CAAC,YAAY,CAAC;AAE7C,MAAsB,gBAAgB;IAAtC;QAgBS,mBAAc,GAAY,KAAK,CAAC;QAIhC,aAAQ,GAAY,KAAK,CAAC;IA0OnC,CAAC;IAxOW,KAAK,CAAC,GAAG,CAAC,MAAe,EAAE,OAAgB,EAAE,uBAAgC;QACrF,IAAA,iCAAe,GAAE,CAAC;QAElB,IAAI,CAAC,IAAA,iCAAe,EAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC/B,IAAA,SAAG,EAAC,sCAAsC,CAAC,CAAC;SAC7C;QACD,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEzB,MAAM,OAAO,GAAG,IAAA,uBAAU,GAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YAC1D,IAAA,SAAG,EAAC,sFAAsF,CAAC,CAAC;YAC5F,OAAO;SACR;QAED,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE;YACpF,IAAA,SAAG,EAAC,mDAAmD,CAAC,CAAC;YACzD,OAAO;SACR;QAED,IAAI,CAAC,uBAAuB,EAAE;YAC5B,IAAA,8BAAe,EAAC,MAAM,IAAA,qBAAY,GAAE,CAAC,CAAC;SACvC;QACD,MAAM,MAAM,GAAa,MAAM,IAAA,yBAAgB,GAAE,CAAC;QAElD,MAAM,uBAAU,CAAC,kBAAkB,CACjC,MAAM,EACN,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,EACjC,OAAO,CAAC,OAAO,EACf,IAAI,EACJ,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CACtC,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC1D,IAAI;YACF,IAAA,wBAAQ,EAAC,
|
|
1
|
+
{"version":3,"file":"BaseBuildCommand.js","sourceRoot":"","sources":["../../../src/commands/app/BaseBuildCommand.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/AppUpdater.d.ts
CHANGED
package/dist/lib/AppUpdater.js
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AppUpdater = void 0;
|
|
4
4
|
const chalk = require("chalk");
|
|
5
|
-
const child_process = require("child_process");
|
|
6
5
|
const node_fetch_1 = require("node-fetch");
|
|
7
6
|
const semver_1 = require("semver");
|
|
8
7
|
const Config_1 = require("./Config");
|
|
@@ -10,6 +9,7 @@ const StringUtils_1 = require("./StringUtils");
|
|
|
10
9
|
const TeminalPassthru_1 = require("./TeminalPassthru");
|
|
11
10
|
const TerminalConfirm_1 = require("./TerminalConfirm");
|
|
12
11
|
const table = require("text-table");
|
|
12
|
+
const packageManagerHandler_1 = require("./packageManagerHandler");
|
|
13
13
|
var AppUpdater;
|
|
14
14
|
(function (AppUpdater) {
|
|
15
15
|
/**
|
|
@@ -112,18 +112,17 @@ var AppUpdater;
|
|
|
112
112
|
AppUpdater.ensureDependencies = ensureDependencies;
|
|
113
113
|
function getPackageDependencies(prod = false) {
|
|
114
114
|
try {
|
|
115
|
-
const result =
|
|
116
|
-
if (
|
|
117
|
-
const tree = JSON.parse(result.stdout.toString());
|
|
115
|
+
const [success, result] = packageManagerHandler_1.default.getPackageDependencies(/@zaiusinc\//, prod);
|
|
116
|
+
if (success) {
|
|
118
117
|
const output = {};
|
|
119
|
-
for (const item of
|
|
118
|
+
for (const item of result.data.trees) {
|
|
120
119
|
const [name, version] = item.name.split(/(?!^)@/);
|
|
121
120
|
output[name] = version;
|
|
122
121
|
}
|
|
123
122
|
return output;
|
|
124
123
|
}
|
|
125
124
|
else {
|
|
126
|
-
console.error(result
|
|
125
|
+
console.error(result);
|
|
127
126
|
}
|
|
128
127
|
}
|
|
129
128
|
catch (e) {
|
|
@@ -136,12 +135,12 @@ var AppUpdater;
|
|
|
136
135
|
function isCurrent(ocpVersion, projectModuleversion) {
|
|
137
136
|
return (0, semver_1.compare)(ocpVersion, projectModuleversion) === 0;
|
|
138
137
|
}
|
|
138
|
+
// exported for testing
|
|
139
139
|
function ensurePublicPackageUsage() {
|
|
140
140
|
try {
|
|
141
|
-
const result =
|
|
142
|
-
if (
|
|
143
|
-
|
|
144
|
-
if (!tree.data.trees.length) {
|
|
141
|
+
const [success, result] = packageManagerHandler_1.default.getPackageDependencies(/@zaius\/app-sdk|@zaius\/node-sdk/, true);
|
|
142
|
+
if (success) {
|
|
143
|
+
if (!result.data.trees.length) {
|
|
145
144
|
return;
|
|
146
145
|
}
|
|
147
146
|
console.log(chalk.red('@zaius/app-sdk & @zaius/node-sdk are no longer supported. ' +
|
|
@@ -158,5 +157,6 @@ var AppUpdater;
|
|
|
158
157
|
console.log(chalk.red("Unable to get package dependencies. Are you in your app's working directory?"));
|
|
159
158
|
process.exit(1);
|
|
160
159
|
}
|
|
160
|
+
AppUpdater.ensurePublicPackageUsage = ensurePublicPackageUsage;
|
|
161
161
|
})(AppUpdater = exports.AppUpdater || (exports.AppUpdater = {}));
|
|
162
162
|
//# sourceMappingURL=AppUpdater.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppUpdater.js","sourceRoot":"","sources":["../../src/lib/AppUpdater.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B
|
|
1
|
+
{"version":3,"file":"AppUpdater.js","sourceRoot":"","sources":["../../src/lib/AppUpdater.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,8 @@ const fs = require("fs");
|
|
|
6
6
|
const os = require("os");
|
|
7
7
|
const path = require("path");
|
|
8
8
|
const semver = require("semver");
|
|
9
|
-
const TerminalOutput_1 = require("./TerminalOutput");
|
|
10
9
|
const TerminalConfirm_1 = require("./TerminalConfirm");
|
|
11
|
-
const
|
|
10
|
+
const packageManagerHandler_1 = require("./packageManagerHandler");
|
|
12
11
|
const LAST_VERSION_CHECK_FILE = '.lastcheck';
|
|
13
12
|
const _24hours = 24 * 60 * 60 * 1000;
|
|
14
13
|
async function checkForUpdate(manifest, noPrompt) {
|
|
@@ -16,9 +15,15 @@ async function checkForUpdate(manifest, noPrompt) {
|
|
|
16
15
|
const installed = (_a = manifest.package) === null || _a === void 0 ? void 0 : _a.version;
|
|
17
16
|
const prerelease = semver.prerelease(installed);
|
|
18
17
|
const isBeta = prerelease && prerelease[0] === 'beta';
|
|
18
|
+
const packageManagerHandler = new packageManagerHandler_1.default('@optimizely/ocp-cli', 'ocp');
|
|
19
19
|
if (isBeta) {
|
|
20
|
+
const [success, result] = packageManagerHandler.getPackageUpgradeCommand();
|
|
21
|
+
if (!success) {
|
|
22
|
+
console.log(chalk.red(result));
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
20
25
|
console.log(chalk.yellow(`You are running beta version (${installed})'. ` +
|
|
21
|
-
|
|
26
|
+
`Run ${chalk.italic.grey(`${result}`)} to upgrade to the latest release version`));
|
|
22
27
|
return;
|
|
23
28
|
}
|
|
24
29
|
const lastCheck = getLastCheck();
|
|
@@ -30,12 +35,16 @@ async function checkForUpdate(manifest, noPrompt) {
|
|
|
30
35
|
}
|
|
31
36
|
try {
|
|
32
37
|
let upToDate = true;
|
|
33
|
-
const latest =
|
|
34
|
-
if (latest) {
|
|
38
|
+
const [success, latest] = packageManagerHandler.fetchLatestPackage();
|
|
39
|
+
if (success && latest) {
|
|
35
40
|
if (semver.gt(latest, installed)) {
|
|
36
41
|
upToDate = false;
|
|
37
42
|
if (await TerminalConfirm_1.TerminalConfirm.ask(chalk.yellow('A new version of OCP CLI is available. Update now?'), noPrompt, true)) {
|
|
38
|
-
|
|
43
|
+
const [passed, error] = packageManagerHandler.upgradeGlobalPackageToLatest();
|
|
44
|
+
if (!passed) {
|
|
45
|
+
console.log(chalk.red(error));
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
39
48
|
}
|
|
40
49
|
}
|
|
41
50
|
}
|
|
@@ -46,9 +55,6 @@ async function checkForUpdate(manifest, noPrompt) {
|
|
|
46
55
|
}
|
|
47
56
|
}
|
|
48
57
|
exports.checkForUpdate = checkForUpdate;
|
|
49
|
-
async function fetchLatest() {
|
|
50
|
-
return TerminalOutput_1.TerminalOutput.exec('yarn info -s @optimizely/ocp-cli dist-tags.latest').stdout.trim();
|
|
51
|
-
}
|
|
52
58
|
function getLastCheck() {
|
|
53
59
|
const file = path.join(os.homedir(), `.ocp/${LAST_VERSION_CHECK_FILE}`);
|
|
54
60
|
if (fs.existsSync(file)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkForUpdate.js","sourceRoot":"","sources":["../../src/lib/checkForUpdate.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,yBAAyB;AACzB,yBAAyB;AACzB,6BAA6B;AAC7B,iCAAiC;AAEjC,
|
|
1
|
+
{"version":3,"file":"checkForUpdate.js","sourceRoot":"","sources":["../../src/lib/checkForUpdate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
declare class PackageManagerHandler {
|
|
2
|
+
private packageName;
|
|
3
|
+
static isLegacyYarnAvailable(): boolean;
|
|
4
|
+
/**
|
|
5
|
+
* Retrieves package dependencies based on a scope pattern and production flag.
|
|
6
|
+
*
|
|
7
|
+
* @param scope - Regular expression pattern to filter package names
|
|
8
|
+
* @param prod - When true, only returns production dependencies. Defaults to false
|
|
9
|
+
* @returns A tuple where:
|
|
10
|
+
* - First element is a boolean indicating success/failure
|
|
11
|
+
* - Second element is either:
|
|
12
|
+
* - On success: An object containing dependency tree data
|
|
13
|
+
* - On failure: An error message string
|
|
14
|
+
*
|
|
15
|
+
* @remarks
|
|
16
|
+
* - It uses NPM `ls` and transforms the dependency tree to match Yarn's format
|
|
17
|
+
*
|
|
18
|
+
* @throws Will not throw errors directly, but catches and returns them as failure results
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* const [success, dependencies] = getPackageDependencies(/^@scope\//, true);
|
|
23
|
+
* if (success) {
|
|
24
|
+
* // Process dependency tree
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
static getPackageDependencies(scope: RegExp, prod?: boolean): [boolean, any];
|
|
29
|
+
private static executeCommand;
|
|
30
|
+
private targetPackageManager;
|
|
31
|
+
constructor(packageName: string, cli: string);
|
|
32
|
+
getPackageUpgradeCommand(): [boolean, string];
|
|
33
|
+
/**
|
|
34
|
+
* Upgrades the specified package to its latest version globally.
|
|
35
|
+
* The function determines whether to use Yarn or NPM based on internal configuration.
|
|
36
|
+
*
|
|
37
|
+
* @returns {[boolean, string]} A tuple where:
|
|
38
|
+
* - First element (boolean) indicates if the upgrade was successful
|
|
39
|
+
* - Second element (string) contains error message if upgrade failed, or success message if upgrade succeeded
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* const [success, message] = packageManager.upgradeGlobalPackageToLatest();
|
|
43
|
+
* if (!success) {
|
|
44
|
+
* console.error(`Failed to upgrade package: ${message}`);
|
|
45
|
+
* }
|
|
46
|
+
*/
|
|
47
|
+
upgradeGlobalPackageToLatest(): [boolean, string];
|
|
48
|
+
fetchLatestPackage(): [boolean, string];
|
|
49
|
+
private isUpgradePossible;
|
|
50
|
+
private cliInstalledWith;
|
|
51
|
+
private useYarn;
|
|
52
|
+
}
|
|
53
|
+
export default PackageManagerHandler;
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const TerminalOutput_1 = require("./TerminalOutput");
|
|
4
|
+
class PackageManagerHandler {
|
|
5
|
+
static isLegacyYarnAvailable() {
|
|
6
|
+
const [success, output] = PackageManagerHandler.executeCommand('yarn --version');
|
|
7
|
+
return success && output.startsWith('1.');
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Retrieves package dependencies based on a scope pattern and production flag.
|
|
11
|
+
*
|
|
12
|
+
* @param scope - Regular expression pattern to filter package names
|
|
13
|
+
* @param prod - When true, only returns production dependencies. Defaults to false
|
|
14
|
+
* @returns A tuple where:
|
|
15
|
+
* - First element is a boolean indicating success/failure
|
|
16
|
+
* - Second element is either:
|
|
17
|
+
* - On success: An object containing dependency tree data
|
|
18
|
+
* - On failure: An error message string
|
|
19
|
+
*
|
|
20
|
+
* @remarks
|
|
21
|
+
* - It uses NPM `ls` and transforms the dependency tree to match Yarn's format
|
|
22
|
+
*
|
|
23
|
+
* @throws Will not throw errors directly, but catches and returns them as failure results
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const [success, dependencies] = getPackageDependencies(/^@scope\//, true);
|
|
28
|
+
* if (success) {
|
|
29
|
+
* // Process dependency tree
|
|
30
|
+
* }
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
static getPackageDependencies(scope, prod = false) {
|
|
34
|
+
const command = `npm ls --json ${prod ? '--prod ' : ''}`;
|
|
35
|
+
try {
|
|
36
|
+
const [success, output] = PackageManagerHandler.executeCommand(command);
|
|
37
|
+
if (!success) {
|
|
38
|
+
return [false, output];
|
|
39
|
+
}
|
|
40
|
+
// if we're using npm, then we need to parse the tree to have a similar output to yarn
|
|
41
|
+
const tree = JSON.parse(output);
|
|
42
|
+
const trees = [];
|
|
43
|
+
function collect(deps = {}, depth = 0) {
|
|
44
|
+
var _a;
|
|
45
|
+
for (const [name, info] of Object.entries(deps)) {
|
|
46
|
+
if (scope.test(name)) {
|
|
47
|
+
trees.push({
|
|
48
|
+
name: `${name}@${(_a = info.version) !== null && _a !== void 0 ? _a : 'unknown'}`,
|
|
49
|
+
children: [],
|
|
50
|
+
hint: null,
|
|
51
|
+
color: depth === 0 ? 'bold' : null,
|
|
52
|
+
depth,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
if (info.dependencies) {
|
|
56
|
+
collect(info.dependencies, depth + 1);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
collect(tree.dependencies);
|
|
61
|
+
return [
|
|
62
|
+
true,
|
|
63
|
+
{
|
|
64
|
+
type: 'tree',
|
|
65
|
+
data: {
|
|
66
|
+
type: 'list',
|
|
67
|
+
trees,
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
];
|
|
71
|
+
}
|
|
72
|
+
catch (e) {
|
|
73
|
+
console.error('Unable to get package dependencies:', e);
|
|
74
|
+
return [false, 'Unable to get package dependencies.'];
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
static executeCommand(command) {
|
|
78
|
+
const result = TerminalOutput_1.TerminalOutput.exec(command);
|
|
79
|
+
if (result.status === 0) {
|
|
80
|
+
const output = result.stdout.trim();
|
|
81
|
+
return [true, output];
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
return [false, result.stderr.trim()];
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
constructor(packageName, cli) {
|
|
88
|
+
this.packageName = packageName;
|
|
89
|
+
this.targetPackageManager = 'none';
|
|
90
|
+
this.targetPackageManager = this.cliInstalledWith(cli);
|
|
91
|
+
}
|
|
92
|
+
getPackageUpgradeCommand() {
|
|
93
|
+
const [possible, error] = this.isUpgradePossible();
|
|
94
|
+
if (!possible) {
|
|
95
|
+
return [false, error];
|
|
96
|
+
}
|
|
97
|
+
return [
|
|
98
|
+
true,
|
|
99
|
+
this.useYarn()
|
|
100
|
+
? `yarn global upgrade ${this.packageName} --latest`
|
|
101
|
+
: `npm install --global ${this.packageName}@latest`,
|
|
102
|
+
];
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Upgrades the specified package to its latest version globally.
|
|
106
|
+
* The function determines whether to use Yarn or NPM based on internal configuration.
|
|
107
|
+
*
|
|
108
|
+
* @returns {[boolean, string]} A tuple where:
|
|
109
|
+
* - First element (boolean) indicates if the upgrade was successful
|
|
110
|
+
* - Second element (string) contains error message if upgrade failed, or success message if upgrade succeeded
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* const [success, message] = packageManager.upgradeGlobalPackageToLatest();
|
|
114
|
+
* if (!success) {
|
|
115
|
+
* console.error(`Failed to upgrade package: ${message}`);
|
|
116
|
+
* }
|
|
117
|
+
*/
|
|
118
|
+
upgradeGlobalPackageToLatest() {
|
|
119
|
+
const [possible, error] = this.isUpgradePossible();
|
|
120
|
+
if (!possible) {
|
|
121
|
+
return [false, error];
|
|
122
|
+
}
|
|
123
|
+
const command = this.useYarn()
|
|
124
|
+
? `yarn global upgrade ${this.packageName} --latest`
|
|
125
|
+
: `npm install --global ${this.packageName}@latest`;
|
|
126
|
+
return PackageManagerHandler.executeCommand(command);
|
|
127
|
+
}
|
|
128
|
+
fetchLatestPackage() {
|
|
129
|
+
return PackageManagerHandler.executeCommand(`npm show ${this.packageName} dist-tags.latest`);
|
|
130
|
+
}
|
|
131
|
+
isUpgradePossible() {
|
|
132
|
+
if (this.useYarn() && !PackageManagerHandler.isLegacyYarnAvailable()) {
|
|
133
|
+
return [
|
|
134
|
+
false,
|
|
135
|
+
`${this.packageName} is installed using yarn 1.x, but the current version of yarn is not compatible with the upgrade command. Please use npm to install ${this.packageName} instead`,
|
|
136
|
+
];
|
|
137
|
+
}
|
|
138
|
+
return [true, ''];
|
|
139
|
+
}
|
|
140
|
+
cliInstalledWith(cli) {
|
|
141
|
+
const whichCommand = process.platform === 'win32' ? 'where' : 'which';
|
|
142
|
+
const [success, output] = PackageManagerHandler.executeCommand(`${whichCommand} ${cli}`);
|
|
143
|
+
if (success) {
|
|
144
|
+
// just in case we have multiple paths, we just take the first one
|
|
145
|
+
const cliPath = output.split('\n')[0].trim();
|
|
146
|
+
if (cliPath.includes('yarn')) {
|
|
147
|
+
// assuming only legacy yarn (1.x) is able to install the cli globally
|
|
148
|
+
return 'yarn';
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
// else we assume it's npm as this is how we recommend installing the cli
|
|
152
|
+
return 'npm';
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
return 'none';
|
|
156
|
+
}
|
|
157
|
+
useYarn() {
|
|
158
|
+
return this.targetPackageManager === 'yarn';
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
exports.default = PackageManagerHandler;
|
|
162
|
+
//# sourceMappingURL=packageManagerHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageManagerHandler.js","sourceRoot":"","sources":["../../src/lib/packageManagerHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const AppUpdater_1 = require("../lib/AppUpdater");
|
|
4
|
+
const packageManagerHandler_1 = require("../lib/packageManagerHandler");
|
|
5
|
+
jest.mock('../lib/packageManagerHandler');
|
|
6
|
+
describe('AppUpdater', () => {
|
|
7
|
+
beforeEach(() => {
|
|
8
|
+
jest.clearAllMocks();
|
|
9
|
+
});
|
|
10
|
+
afterEach(() => {
|
|
11
|
+
jest.restoreAllMocks();
|
|
12
|
+
});
|
|
13
|
+
describe('getPackageDependencies', () => {
|
|
14
|
+
it('should parse dependencies correctly', () => {
|
|
15
|
+
const mockDeps = {
|
|
16
|
+
type: 'tree',
|
|
17
|
+
data: {
|
|
18
|
+
type: 'list',
|
|
19
|
+
trees: [
|
|
20
|
+
{
|
|
21
|
+
name: '@zaiusinc/package1@1.0.0',
|
|
22
|
+
children: [],
|
|
23
|
+
hint: null,
|
|
24
|
+
color: 'bold',
|
|
25
|
+
depth: 0,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
name: '@zaiusinc/package2@2.0.0',
|
|
29
|
+
children: [],
|
|
30
|
+
hint: null,
|
|
31
|
+
color: 'bold',
|
|
32
|
+
depth: 0,
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
packageManagerHandler_1.default.getPackageDependencies.mockReturnValueOnce([true, mockDeps]);
|
|
38
|
+
const result = AppUpdater_1.AppUpdater.getPackageDependencies();
|
|
39
|
+
expect(result).toEqual({
|
|
40
|
+
'@zaiusinc/package1': '1.0.0',
|
|
41
|
+
'@zaiusinc/package2': '2.0.0',
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
it('should handle prod dependencies flag', () => {
|
|
45
|
+
const mockDeps = {
|
|
46
|
+
type: 'tree',
|
|
47
|
+
data: {
|
|
48
|
+
type: 'list',
|
|
49
|
+
trees: [
|
|
50
|
+
{
|
|
51
|
+
name: '@zaiusinc/package1@1.0.0',
|
|
52
|
+
children: [],
|
|
53
|
+
hint: null,
|
|
54
|
+
color: 'bold',
|
|
55
|
+
depth: 0,
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
},
|
|
59
|
+
};
|
|
60
|
+
const mockHandler = packageManagerHandler_1.default.getPackageDependencies.mockReturnValueOnce([true, mockDeps]);
|
|
61
|
+
AppUpdater_1.AppUpdater.getPackageDependencies(true);
|
|
62
|
+
expect(mockHandler).toHaveBeenCalledWith(/@zaiusinc\//, true);
|
|
63
|
+
});
|
|
64
|
+
describe('error handling', () => {
|
|
65
|
+
let mockExit;
|
|
66
|
+
let mockConsole;
|
|
67
|
+
let mockConsoleError;
|
|
68
|
+
beforeEach(() => {
|
|
69
|
+
mockExit = jest
|
|
70
|
+
.spyOn(process, 'exit')
|
|
71
|
+
.mockImplementation(() => undefined);
|
|
72
|
+
mockConsole = jest
|
|
73
|
+
.spyOn(console, 'log')
|
|
74
|
+
.mockImplementation(() => undefined);
|
|
75
|
+
mockConsoleError = jest
|
|
76
|
+
.spyOn(console, 'error')
|
|
77
|
+
.mockImplementation(() => undefined);
|
|
78
|
+
});
|
|
79
|
+
afterEach(() => {
|
|
80
|
+
mockExit.mockRestore();
|
|
81
|
+
mockConsole.mockRestore();
|
|
82
|
+
mockConsoleError.mockRestore();
|
|
83
|
+
});
|
|
84
|
+
it('should exit with error on package manager failure', () => {
|
|
85
|
+
packageManagerHandler_1.default.getPackageDependencies.mockReturnValueOnce([false, 'error']);
|
|
86
|
+
AppUpdater_1.AppUpdater.getPackageDependencies();
|
|
87
|
+
expect(mockExit).toHaveBeenCalledWith(1);
|
|
88
|
+
expect(mockConsoleError).toHaveBeenCalledWith('error');
|
|
89
|
+
});
|
|
90
|
+
it('should exit with error on exception', () => {
|
|
91
|
+
packageManagerHandler_1.default.getPackageDependencies.mockImplementation(() => {
|
|
92
|
+
throw new Error('test error');
|
|
93
|
+
});
|
|
94
|
+
AppUpdater_1.AppUpdater.getPackageDependencies();
|
|
95
|
+
expect(mockExit).toHaveBeenCalledWith(1);
|
|
96
|
+
expect(mockConsoleError).toHaveBeenCalledWith(new Error('test error'));
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
describe('ensurePublicPackageUsage', () => {
|
|
101
|
+
let mockExit;
|
|
102
|
+
let mockConsoleLog;
|
|
103
|
+
let mockConsoleError;
|
|
104
|
+
beforeEach(() => {
|
|
105
|
+
mockExit = jest
|
|
106
|
+
.spyOn(process, 'exit')
|
|
107
|
+
.mockImplementation(() => undefined);
|
|
108
|
+
mockConsoleLog = jest
|
|
109
|
+
.spyOn(console, 'log')
|
|
110
|
+
.mockImplementation(() => undefined);
|
|
111
|
+
mockConsoleError = jest
|
|
112
|
+
.spyOn(console, 'error')
|
|
113
|
+
.mockImplementation(() => undefined);
|
|
114
|
+
});
|
|
115
|
+
afterEach(() => {
|
|
116
|
+
mockExit.mockRestore();
|
|
117
|
+
mockConsoleLog.mockRestore();
|
|
118
|
+
mockConsoleError.mockRestore();
|
|
119
|
+
});
|
|
120
|
+
it('should allow execution when no deprecated packages are found', () => {
|
|
121
|
+
const mockDeps = {
|
|
122
|
+
type: 'tree',
|
|
123
|
+
data: {
|
|
124
|
+
type: 'list',
|
|
125
|
+
trees: [],
|
|
126
|
+
},
|
|
127
|
+
};
|
|
128
|
+
packageManagerHandler_1.default.getPackageDependencies.mockReturnValueOnce([true, mockDeps]);
|
|
129
|
+
AppUpdater_1.AppUpdater.ensurePublicPackageUsage();
|
|
130
|
+
expect(mockExit).not.toHaveBeenCalled();
|
|
131
|
+
});
|
|
132
|
+
it('should exit when deprecated @zaius packages are found', () => {
|
|
133
|
+
const mockDeps = {
|
|
134
|
+
type: 'tree',
|
|
135
|
+
data: {
|
|
136
|
+
type: 'list',
|
|
137
|
+
trees: [
|
|
138
|
+
{
|
|
139
|
+
name: '@zaius/app-sdk@1.0.0',
|
|
140
|
+
children: [],
|
|
141
|
+
hint: null,
|
|
142
|
+
color: 'bold',
|
|
143
|
+
depth: 0,
|
|
144
|
+
},
|
|
145
|
+
],
|
|
146
|
+
},
|
|
147
|
+
};
|
|
148
|
+
packageManagerHandler_1.default.getPackageDependencies.mockReturnValueOnce([true, mockDeps]);
|
|
149
|
+
AppUpdater_1.AppUpdater.ensurePublicPackageUsage();
|
|
150
|
+
expect(mockExit).toHaveBeenCalledWith(1);
|
|
151
|
+
expect(mockConsoleLog).toHaveBeenCalledWith(expect.stringContaining('@zaius/app-sdk & @zaius/node-sdk are no longer supported'));
|
|
152
|
+
});
|
|
153
|
+
});
|
|
154
|
+
});
|
|
155
|
+
//# sourceMappingURL=AppUpdater.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AppUpdater.test.js","sourceRoot":"","sources":["../../src/test/AppUpdater.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|