@phila/cli 0.0.5 → 0.0.7
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/README.md +20 -1
- package/dist/commands/config.d.ts +2 -0
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +17 -6
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +89 -6
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/ship.d.ts.map +1 -1
- package/dist/commands/ship.js +14 -4
- package/dist/commands/ship.js.map +1 -1
- package/dist/templates/_shared/webapp-cdk-package.json.tmpl +6 -3
- package/dist/templates/lambda-api-nodejs/cdk/package.json +6 -3
- package/dist/templates/lambda-api-nodejs/cdk/tsconfig.json +2 -1
- package/dist/templates/lambda-api-nodejs/package.json.tmpl +3 -2
- package/dist/templates/lambda-api-nodejs/pnpm-workspace.yaml.tmpl +3 -0
- package/dist/templates/lambda-dynamo-api/cdk/package.json +6 -3
- package/dist/templates/lambda-dynamo-api/cdk/tsconfig.json +4 -8
- package/dist/templates/lambda-dynamo-api/package.json.tmpl +3 -2
- package/dist/templates/lambda-dynamo-api/pnpm-workspace.yaml.tmpl +3 -0
- package/dist/templates/lambda-postgres-api/cdk/package.json +6 -3
- package/dist/templates/lambda-postgres-api/cdk/tsconfig.json +2 -1
- package/dist/templates/lambda-postgres-api/package.json.tmpl +3 -2
- package/dist/templates/lambda-postgres-api/pnpm-workspace.yaml.tmpl +3 -0
- package/dist/templates/static-site/cdk/cdk.json +2 -1
- package/dist/templates/static-site/cdk/package.json +6 -3
- package/dist/templates/static-site/cdk/tsconfig.json +2 -1
- package/dist/templates/static-site/package.json.tmpl +2 -5
- package/dist/templates/static-site/pnpm-workspace.yaml.tmpl +3 -0
- package/dist/templates/webapp-ecs-dotnet/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-ecs-dotnet/package.json.tmpl +2 -1
- package/dist/templates/webapp-ecs-dotnet/pnpm-workspace.yaml.tmpl +3 -0
- package/dist/templates/webapp-ecs-node/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-ecs-node/package.json.tmpl +3 -2
- package/dist/templates/webapp-ecs-node/pnpm-workspace.yaml.tmpl +4 -0
- package/dist/templates/webapp-ecs-postgres-dotnet/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-ecs-postgres-dotnet/package.json.tmpl +2 -1
- package/dist/templates/webapp-ecs-postgres-dotnet/pnpm-workspace.yaml.tmpl +3 -0
- package/dist/templates/webapp-ecs-postgres-node/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-ecs-postgres-node/package.json.tmpl +3 -2
- package/dist/templates/webapp-ecs-postgres-node/pnpm-workspace.yaml.tmpl +4 -0
- package/dist/templates/webapp-lambda-dotnet/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-lambda-dotnet/package.json.tmpl +2 -1
- package/dist/templates/webapp-lambda-dotnet/pnpm-workspace.yaml.tmpl +3 -0
- package/dist/templates/webapp-lambda-dynamo-dotnet/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-lambda-dynamo-dotnet/package.json.tmpl +2 -1
- package/dist/templates/webapp-lambda-dynamo-dotnet/pnpm-workspace.yaml.tmpl +3 -0
- package/dist/templates/webapp-lambda-dynamo-node/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-lambda-dynamo-node/package.json.tmpl +3 -2
- package/dist/templates/webapp-lambda-dynamo-node/pnpm-workspace.yaml.tmpl +4 -0
- package/dist/templates/webapp-lambda-node/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-lambda-node/package.json.tmpl +3 -2
- package/dist/templates/webapp-lambda-node/pnpm-workspace.yaml.tmpl +4 -0
- package/dist/templates/webapp-lambda-postgres-dotnet/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-lambda-postgres-dotnet/package.json.tmpl +2 -1
- package/dist/templates/webapp-lambda-postgres-dotnet/pnpm-workspace.yaml.tmpl +3 -0
- package/dist/templates/webapp-lambda-postgres-node/cdk/tsconfig.json +2 -1
- package/dist/templates/webapp-lambda-postgres-node/package.json.tmpl +3 -2
- package/dist/templates/webapp-lambda-postgres-node/pnpm-workspace.yaml.tmpl +4 -0
- package/dist/utils/cli-installation.d.ts +17 -0
- package/dist/utils/cli-installation.d.ts.map +1 -0
- package/dist/utils/cli-installation.js +131 -0
- package/dist/utils/cli-installation.js.map +1 -0
- package/dist/utils/dependencies.d.ts.map +1 -1
- package/dist/utils/dependencies.js +75 -0
- package/dist/utils/dependencies.js.map +1 -1
- package/dist/utils/package-manager.d.ts +30 -0
- package/dist/utils/package-manager.d.ts.map +1 -0
- package/dist/utils/package-manager.js +145 -0
- package/dist/utils/package-manager.js.map +1 -0
- package/dist/utils/template.d.ts +3 -0
- package/dist/utils/template.d.ts.map +1 -1
- package/dist/utils/template.js +23 -5
- package/dist/utils/template.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-installation.d.ts","sourceRoot":"","sources":["../../src/utils/cli-installation.ts"],"names":[],"mappings":"AAMA;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAmDrC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA0BjE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,GAAG,KAAK,CAErD"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ABOUTME: Detects whether the CLI is running from a local link or npm registry
|
|
3
|
+
// ABOUTME: Checks symlinks, workspace paths, and node_modules location
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
21
|
+
var ownKeys = function(o) {
|
|
22
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
23
|
+
var ar = [];
|
|
24
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
25
|
+
return ar;
|
|
26
|
+
};
|
|
27
|
+
return ownKeys(o);
|
|
28
|
+
};
|
|
29
|
+
return function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
+
exports.isLocalLink = isLocalLink;
|
|
39
|
+
exports.findWorkspaceRoot = findWorkspaceRoot;
|
|
40
|
+
exports.getInstallationType = getInstallationType;
|
|
41
|
+
const path = __importStar(require("path"));
|
|
42
|
+
const fs = __importStar(require("fs-extra"));
|
|
43
|
+
/**
|
|
44
|
+
* Detects if the CLI package is running from a local link or workspace (via npm link, pnpm link, or direct workspace execution)
|
|
45
|
+
* vs installed from npm registry.
|
|
46
|
+
*
|
|
47
|
+
* @returns true if running from a local link or workspace, false if from npm registry
|
|
48
|
+
*/
|
|
49
|
+
function isLocalLink() {
|
|
50
|
+
try {
|
|
51
|
+
// Get the resolved path to this package's package.json
|
|
52
|
+
// When linked, this will point to the source directory
|
|
53
|
+
// When installed, it will be in node_modules
|
|
54
|
+
const packageJsonPath = require.resolve('@phila/cli/package.json');
|
|
55
|
+
const packageDir = path.dirname(packageJsonPath);
|
|
56
|
+
// Check if the package.json itself or its parent directory is a symlink
|
|
57
|
+
const stats = fs.lstatSync(packageJsonPath);
|
|
58
|
+
if (stats.isSymbolicLink()) {
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
// Check parent directory
|
|
62
|
+
const parentStats = fs.lstatSync(packageDir);
|
|
63
|
+
if (parentStats.isSymbolicLink()) {
|
|
64
|
+
return true;
|
|
65
|
+
}
|
|
66
|
+
// Check if it's outside node_modules (typical for linked packages or workspace execution)
|
|
67
|
+
if (!packageDir.includes('node_modules')) {
|
|
68
|
+
// Check if it's in the workspace (pnpm workspaces keep packages at root level)
|
|
69
|
+
const workspaceRoot = findWorkspaceRoot(packageDir);
|
|
70
|
+
if (workspaceRoot) {
|
|
71
|
+
// Check if this is the actual workspace package
|
|
72
|
+
const expectedPath = path.join(workspaceRoot, 'packages', 'cli', 'package.json');
|
|
73
|
+
if (fs.existsSync(expectedPath)) {
|
|
74
|
+
// Always use file paths when in workspace (whether it's the actual package or a link)
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
// If not in node_modules and not in expected workspace location, likely a link
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
// If it's in node_modules, check if it's a symlink
|
|
82
|
+
// npm link creates symlinks in node_modules
|
|
83
|
+
const nodeModulesPath = path.join(packageDir, '..', '..');
|
|
84
|
+
if (fs.existsSync(nodeModulesPath)) {
|
|
85
|
+
const nodeModulesStats = fs.lstatSync(nodeModulesPath);
|
|
86
|
+
if (nodeModulesStats.isSymbolicLink()) {
|
|
87
|
+
return true;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return false;
|
|
91
|
+
}
|
|
92
|
+
catch (error) {
|
|
93
|
+
// If we can't resolve, assume it's not a local link
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Finds the workspace root by looking for pnpm-workspace.yaml, package.json with workspaces,
|
|
99
|
+
* or other workspace indicators
|
|
100
|
+
*/
|
|
101
|
+
function findWorkspaceRoot(startDir) {
|
|
102
|
+
let current = path.resolve(startDir);
|
|
103
|
+
while (current !== path.dirname(current)) {
|
|
104
|
+
// Check for pnpm workspace
|
|
105
|
+
if (fs.existsSync(path.join(current, 'pnpm-workspace.yaml'))) {
|
|
106
|
+
return current;
|
|
107
|
+
}
|
|
108
|
+
// Check for npm/yarn workspace in package.json
|
|
109
|
+
const packageJsonPath = path.join(current, 'package.json');
|
|
110
|
+
if (fs.existsSync(packageJsonPath)) {
|
|
111
|
+
try {
|
|
112
|
+
const pkg = fs.readJsonSync(packageJsonPath);
|
|
113
|
+
if (pkg.workspaces || pkg.workspace) {
|
|
114
|
+
return current;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
// Ignore JSON parse errors
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
current = path.dirname(current);
|
|
122
|
+
}
|
|
123
|
+
return null;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Gets the installation type as a string for display purposes
|
|
127
|
+
*/
|
|
128
|
+
function getInstallationType() {
|
|
129
|
+
return isLocalLink() ? 'local' : 'npm';
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=cli-installation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-installation.js","sourceRoot":"","sources":["../../src/utils/cli-installation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../src/utils/dependencies.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../src/utils/dependencies.ts"],"names":[],"mappings":"AAYA,oBAAY,QAAQ;IAClB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACvC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5D,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;CAClD;AAED,wBAAgB,WAAW,IAAI,QAAQ,CAKtC;AAED,eAAO,MAAM,YAAY,EAAE,UAAU,EAmMpC,CAAC;AAEF;;GAEG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAOxE;AAkBD;;GAEG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CA6DxD"}
|
|
@@ -1,6 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// ABOUTME: Dependency validation and auto-installation for CLI tools
|
|
3
3
|
// ABOUTME: Checks node, npm, pnpm, aws, cdk, zip on every command
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
21
|
+
var ownKeys = function(o) {
|
|
22
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
23
|
+
var ar = [];
|
|
24
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
25
|
+
return ar;
|
|
26
|
+
};
|
|
27
|
+
return ownKeys(o);
|
|
28
|
+
};
|
|
29
|
+
return function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
4
37
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
38
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
6
39
|
};
|
|
@@ -11,8 +44,12 @@ exports.checkAllDependencies = checkAllDependencies;
|
|
|
11
44
|
exports.ensureDependencies = ensureDependencies;
|
|
12
45
|
const child_process_1 = require("child_process");
|
|
13
46
|
const os_1 = require("os");
|
|
47
|
+
const path = __importStar(require("path"));
|
|
48
|
+
const fs = __importStar(require("fs-extra"));
|
|
14
49
|
const chalk_1 = __importDefault(require("chalk"));
|
|
15
50
|
const inquirer_1 = __importDefault(require("inquirer"));
|
|
51
|
+
const config_1 = require("../commands/config");
|
|
52
|
+
const package_manager_1 = require("./package-manager");
|
|
16
53
|
var Platform;
|
|
17
54
|
(function (Platform) {
|
|
18
55
|
Platform["Darwin"] = "darwin";
|
|
@@ -130,6 +167,44 @@ exports.DEPENDENCIES = [
|
|
|
130
167
|
{
|
|
131
168
|
name: 'cdk',
|
|
132
169
|
check: async () => {
|
|
170
|
+
// First, try to find local cdk if we're in a project directory
|
|
171
|
+
const config = await (0, config_1.loadConfig)(process.cwd());
|
|
172
|
+
if (config) {
|
|
173
|
+
const cdkDir = path.resolve(process.cwd(), config.cdkPath);
|
|
174
|
+
const packageJsonPath = path.join(cdkDir, 'package.json');
|
|
175
|
+
// Check if cdk directory exists and has package.json
|
|
176
|
+
if (await fs.pathExists(packageJsonPath)) {
|
|
177
|
+
try {
|
|
178
|
+
// Check if aws-cdk is listed as a dependency
|
|
179
|
+
const packageJson = await fs.readJson(packageJsonPath);
|
|
180
|
+
const hasCdk = (packageJson.dependencies && packageJson.dependencies['aws-cdk']) ||
|
|
181
|
+
(packageJson.devDependencies && packageJson.devDependencies['aws-cdk']);
|
|
182
|
+
if (hasCdk) {
|
|
183
|
+
// Try to run the local cdk command from the cdk directory
|
|
184
|
+
try {
|
|
185
|
+
// Detect package manager from project root (where lock files are for workspaces)
|
|
186
|
+
const pm = (0, package_manager_1.detectPackageManager)(process.cwd());
|
|
187
|
+
const cdkCmd = (0, package_manager_1.getCdkCommand)(pm);
|
|
188
|
+
const cmd = `${cdkCmd} --version`;
|
|
189
|
+
const version = (0, child_process_1.execSync)(cmd, { cwd: cdkDir, stdio: 'pipe' })
|
|
190
|
+
.toString()
|
|
191
|
+
.trim()
|
|
192
|
+
.split(' ')[0];
|
|
193
|
+
return { name: 'cdk', installed: true, version };
|
|
194
|
+
}
|
|
195
|
+
catch {
|
|
196
|
+
// Command failed (dependencies not installed yet), but cdk is in package.json
|
|
197
|
+
// Consider it available since deploy command will install dependencies
|
|
198
|
+
return { name: 'cdk', installed: true };
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
catch {
|
|
203
|
+
// Failed to read package.json, fall through to global check
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
// Fall back to global cdk check
|
|
133
208
|
try {
|
|
134
209
|
const version = (0, child_process_1.execSync)('cdk --version').toString().trim().split(' ')[0];
|
|
135
210
|
return { name: 'cdk', installed: true, version };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/utils/dependencies.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,kEAAkE
|
|
1
|
+
{"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../src/utils/dependencies.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export type PackageManager = 'npm' | 'pnpm' | 'yarn';
|
|
2
|
+
/**
|
|
3
|
+
* Detects which package manager is being used in a directory
|
|
4
|
+
* by checking for lock files. Priority: pnpm > yarn > npm
|
|
5
|
+
*/
|
|
6
|
+
export declare function detectPackageManager(dir: string): PackageManager;
|
|
7
|
+
/**
|
|
8
|
+
* Gets the install command for a package manager
|
|
9
|
+
*/
|
|
10
|
+
export declare function getInstallCommand(pm: PackageManager): string;
|
|
11
|
+
/**
|
|
12
|
+
* Gets the build command for a package manager
|
|
13
|
+
*/
|
|
14
|
+
export declare function getBuildCommand(pm: PackageManager, script?: string): string;
|
|
15
|
+
/**
|
|
16
|
+
* Gets the workspace build command for a package manager
|
|
17
|
+
* (runs a script across all workspaces)
|
|
18
|
+
*/
|
|
19
|
+
export declare function getWorkspaceBuildCommand(pm: PackageManager, script?: string): string;
|
|
20
|
+
/**
|
|
21
|
+
* Gets the workspace test command for a package manager
|
|
22
|
+
* (runs test script across all workspaces, with --if-present support for npm)
|
|
23
|
+
*/
|
|
24
|
+
export declare function getWorkspaceTestCommand(pm: PackageManager, ifPresent?: boolean): string;
|
|
25
|
+
/**
|
|
26
|
+
* Gets the CDK command for a package manager
|
|
27
|
+
* Returns the command to run CDK from the local node_modules
|
|
28
|
+
*/
|
|
29
|
+
export declare function getCdkCommand(pm: PackageManager): string;
|
|
30
|
+
//# sourceMappingURL=package-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../src/utils/package-manager.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAErD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAsBhE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM,CAU5D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAW3E;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAWpF;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAUvF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM,CAUxD"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ABOUTME: Detects which package manager is being used in a directory
|
|
3
|
+
// ABOUTME: Checks for lock files to determine npm, pnpm, or yarn
|
|
4
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
21
|
+
var ownKeys = function(o) {
|
|
22
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
23
|
+
var ar = [];
|
|
24
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
25
|
+
return ar;
|
|
26
|
+
};
|
|
27
|
+
return ownKeys(o);
|
|
28
|
+
};
|
|
29
|
+
return function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
})();
|
|
37
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
38
|
+
exports.detectPackageManager = detectPackageManager;
|
|
39
|
+
exports.getInstallCommand = getInstallCommand;
|
|
40
|
+
exports.getBuildCommand = getBuildCommand;
|
|
41
|
+
exports.getWorkspaceBuildCommand = getWorkspaceBuildCommand;
|
|
42
|
+
exports.getWorkspaceTestCommand = getWorkspaceTestCommand;
|
|
43
|
+
exports.getCdkCommand = getCdkCommand;
|
|
44
|
+
const path = __importStar(require("path"));
|
|
45
|
+
const fs = __importStar(require("fs-extra"));
|
|
46
|
+
/**
|
|
47
|
+
* Detects which package manager is being used in a directory
|
|
48
|
+
* by checking for lock files. Priority: pnpm > yarn > npm
|
|
49
|
+
*/
|
|
50
|
+
function detectPackageManager(dir) {
|
|
51
|
+
// Check for pnpm lock files (highest priority)
|
|
52
|
+
const pnpmLock = path.join(dir, 'pnpm-lock.yaml');
|
|
53
|
+
const pnpmWorkspace = path.join(dir, 'pnpm-workspace.yaml');
|
|
54
|
+
if (fs.existsSync(pnpmLock) || fs.existsSync(pnpmWorkspace)) {
|
|
55
|
+
return 'pnpm';
|
|
56
|
+
}
|
|
57
|
+
// Check for yarn lock file
|
|
58
|
+
const yarnLock = path.join(dir, 'yarn.lock');
|
|
59
|
+
if (fs.existsSync(yarnLock)) {
|
|
60
|
+
return 'yarn';
|
|
61
|
+
}
|
|
62
|
+
// Check for npm lock file
|
|
63
|
+
const npmLock = path.join(dir, 'package-lock.json');
|
|
64
|
+
if (fs.existsSync(npmLock)) {
|
|
65
|
+
return 'npm';
|
|
66
|
+
}
|
|
67
|
+
// Default to npm if no lock file found
|
|
68
|
+
return 'npm';
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Gets the install command for a package manager
|
|
72
|
+
*/
|
|
73
|
+
function getInstallCommand(pm) {
|
|
74
|
+
switch (pm) {
|
|
75
|
+
case 'pnpm':
|
|
76
|
+
return 'pnpm install';
|
|
77
|
+
case 'yarn':
|
|
78
|
+
return 'yarn install';
|
|
79
|
+
case 'npm':
|
|
80
|
+
default:
|
|
81
|
+
return 'npm install';
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Gets the build command for a package manager
|
|
86
|
+
*/
|
|
87
|
+
function getBuildCommand(pm, script) {
|
|
88
|
+
const scriptName = script || 'build';
|
|
89
|
+
switch (pm) {
|
|
90
|
+
case 'pnpm':
|
|
91
|
+
return `pnpm run ${scriptName}`;
|
|
92
|
+
case 'yarn':
|
|
93
|
+
return `yarn run ${scriptName}`;
|
|
94
|
+
case 'npm':
|
|
95
|
+
default:
|
|
96
|
+
return `npm run ${scriptName}`;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Gets the workspace build command for a package manager
|
|
101
|
+
* (runs a script across all workspaces)
|
|
102
|
+
*/
|
|
103
|
+
function getWorkspaceBuildCommand(pm, script) {
|
|
104
|
+
const scriptName = script || 'build';
|
|
105
|
+
switch (pm) {
|
|
106
|
+
case 'pnpm':
|
|
107
|
+
return `pnpm -r ${scriptName}`;
|
|
108
|
+
case 'yarn':
|
|
109
|
+
return `yarn workspaces run ${scriptName}`;
|
|
110
|
+
case 'npm':
|
|
111
|
+
default:
|
|
112
|
+
return `npm run ${scriptName} --workspaces`;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Gets the workspace test command for a package manager
|
|
117
|
+
* (runs test script across all workspaces, with --if-present support for npm)
|
|
118
|
+
*/
|
|
119
|
+
function getWorkspaceTestCommand(pm, ifPresent) {
|
|
120
|
+
switch (pm) {
|
|
121
|
+
case 'pnpm':
|
|
122
|
+
return ifPresent ? `pnpm -r test --if-present` : `pnpm -r test`;
|
|
123
|
+
case 'yarn':
|
|
124
|
+
return `yarn workspaces run test${ifPresent ? ' --if-present' : ''}`;
|
|
125
|
+
case 'npm':
|
|
126
|
+
default:
|
|
127
|
+
return `npm test --workspaces${ifPresent ? ' --if-present' : ''}`;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Gets the CDK command for a package manager
|
|
132
|
+
* Returns the command to run CDK from the local node_modules
|
|
133
|
+
*/
|
|
134
|
+
function getCdkCommand(pm) {
|
|
135
|
+
switch (pm) {
|
|
136
|
+
case 'pnpm':
|
|
137
|
+
return 'pnpm exec cdk';
|
|
138
|
+
case 'yarn':
|
|
139
|
+
return 'yarn exec cdk';
|
|
140
|
+
case 'npm':
|
|
141
|
+
default:
|
|
142
|
+
return 'npx cdk';
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=package-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../src/utils/package-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/template.d.ts
CHANGED
|
@@ -16,6 +16,9 @@ export interface TemplateVariables {
|
|
|
16
16
|
testVpc: string;
|
|
17
17
|
prodProfile: string;
|
|
18
18
|
prodVpc: string;
|
|
19
|
+
packageManager: string;
|
|
20
|
+
buildCommand: string;
|
|
21
|
+
testCommand: string;
|
|
19
22
|
}
|
|
20
23
|
/**
|
|
21
24
|
* Copy a template file or directory to a destination, applying variable substitutions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,iBAAiB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAaf"}
|
package/dist/utils/template.js
CHANGED
|
@@ -84,12 +84,27 @@ async function processFile(srcPath, destPath, variables) {
|
|
|
84
84
|
* Replace {{variable}} patterns in content
|
|
85
85
|
*/
|
|
86
86
|
function applyVariables(content, variables) {
|
|
87
|
-
|
|
87
|
+
let result = content
|
|
88
88
|
.replace(/\{\{appName\}\}/g, variables.appName)
|
|
89
89
|
.replace(/\{\{applicationType\}\}/g, variables.applicationType)
|
|
90
|
-
.replace(/\{\{lambdaName\}\}/g, variables.lambdaName)
|
|
91
|
-
|
|
92
|
-
|
|
90
|
+
.replace(/\{\{lambdaName\}\}/g, variables.lambdaName);
|
|
91
|
+
// Handle constructsVersion specially - if it's a file path, replace the whole "^{{constructsVersion}}" pattern
|
|
92
|
+
// Otherwise, just replace {{constructsVersion}} (which may be inside a "^" prefix)
|
|
93
|
+
if (variables.constructsVersion.startsWith('file:')) {
|
|
94
|
+
result = result.replace(/"\^\{\{constructsVersion\}\}"/g, `"${variables.constructsVersion}"`);
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
result = result.replace(/\{\{constructsVersion\}\}/g, variables.constructsVersion);
|
|
98
|
+
}
|
|
99
|
+
// Handle dbPostgresVersion specially - if it's a file path, replace the whole "^{{dbPostgresVersion}}" pattern
|
|
100
|
+
// Otherwise, just replace {{dbPostgresVersion}} (which may be inside a "^" prefix)
|
|
101
|
+
if (variables.dbPostgresVersion.startsWith('file:')) {
|
|
102
|
+
result = result.replace(/"\^\{\{dbPostgresVersion\}\}"/g, `"${variables.dbPostgresVersion}"`);
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
result = result.replace(/\{\{dbPostgresVersion\}\}/g, variables.dbPostgresVersion);
|
|
106
|
+
}
|
|
107
|
+
return result
|
|
93
108
|
.replace(/\{\{department\}\}/g, variables.department)
|
|
94
109
|
.replace(/\{\{team\}\}/g, variables.team)
|
|
95
110
|
.replace(/\{\{contact\}\}/g, variables.contact)
|
|
@@ -103,7 +118,10 @@ function applyVariables(content, variables) {
|
|
|
103
118
|
.replace(/\{\{testProfile\}\}/g, variables.testProfile)
|
|
104
119
|
.replace(/\{\{testVpc\}\}/g, variables.testVpc)
|
|
105
120
|
.replace(/\{\{prodProfile\}\}/g, variables.prodProfile)
|
|
106
|
-
.replace(/\{\{prodVpc\}\}/g, variables.prodVpc)
|
|
121
|
+
.replace(/\{\{prodVpc\}\}/g, variables.prodVpc)
|
|
122
|
+
.replace(/\{\{packageManager\}\}/g, variables.packageManager)
|
|
123
|
+
.replace(/\{\{buildCommand\}\}/g, variables.buildCommand)
|
|
124
|
+
.replace(/\{\{testCommand\}\}/g, variables.testCommand);
|
|
107
125
|
}
|
|
108
126
|
/**
|
|
109
127
|
* Replace __variable__ patterns in paths (for directory names)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":";AAAA,4DAA4D;AAC5D,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@phila/cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.7",
|
|
4
4
|
"description": "CLI tool for City of Philadelphia AWS infrastructure",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -18,14 +18,14 @@
|
|
|
18
18
|
"dist"
|
|
19
19
|
],
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"aws-cdk": "^2.
|
|
21
|
+
"aws-cdk": "^2.1103.0",
|
|
22
22
|
"aws-sdk": "^2.1400.0",
|
|
23
23
|
"chalk": "^4.1.2",
|
|
24
24
|
"commander": "^11.0.0",
|
|
25
25
|
"fs-extra": "^11.1.0",
|
|
26
26
|
"inquirer": "^8.2.5",
|
|
27
|
-
"@phila/constructs": "0.0.
|
|
28
|
-
"@phila/db-postgres": "0.0.
|
|
27
|
+
"@phila/constructs": "0.0.4",
|
|
28
|
+
"@phila/db-postgres": "0.0.4"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/fs-extra": "^11.0.0",
|