git-push-deploy-cli 0.2.2 → 0.6.0
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 +466 -108
- package/dist/commands/config.d.ts +10 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +295 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/daemon.d.ts +10 -0
- package/dist/commands/daemon.d.ts.map +1 -0
- package/dist/commands/daemon.js +67 -0
- package/dist/commands/daemon.js.map +1 -0
- package/dist/commands/deploy.d.ts +2 -1
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +23 -5
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +36 -19
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +98 -3
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/logs.d.ts +1 -0
- package/dist/commands/logs.d.ts.map +1 -1
- package/dist/commands/logs.js +4 -1
- package/dist/commands/logs.js.map +1 -1
- package/dist/commands/release.d.ts +5 -1
- package/dist/commands/release.d.ts.map +1 -1
- package/dist/commands/release.js +204 -6
- package/dist/commands/release.js.map +1 -1
- package/dist/commands/rollback.d.ts +17 -0
- package/dist/commands/rollback.d.ts.map +1 -0
- package/dist/commands/rollback.js +169 -0
- package/dist/commands/rollback.js.map +1 -0
- package/dist/commands/stage.d.ts +4 -0
- package/dist/commands/stage.d.ts.map +1 -1
- package/dist/commands/stage.js +52 -4
- package/dist/commands/stage.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +15 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/config/loader.d.ts +1 -0
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +1 -1
- package/dist/config/loader.js.map +1 -1
- package/dist/config/types.d.ts +112 -14
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +20 -0
- package/dist/config/types.js.map +1 -1
- package/dist/index.js +31 -2
- package/dist/index.js.map +1 -1
- package/dist/utils/git.d.ts +43 -0
- package/dist/utils/git.d.ts.map +1 -1
- package/dist/utils/git.js +98 -0
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/notifications.d.ts +6 -0
- package/dist/utils/notifications.d.ts.map +1 -0
- package/dist/utils/notifications.js +188 -0
- package/dist/utils/notifications.js.map +1 -0
- package/dist/utils/shell.d.ts +4 -0
- package/dist/utils/shell.d.ts.map +1 -1
- package/dist/utils/shell.js +18 -0
- package/dist/utils/shell.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAOA,UAAU,cAAc;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAoDD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2GrG"}
|
package/dist/commands/install.js
CHANGED
|
@@ -133,7 +133,43 @@ export async function installCommand(serviceName, options = {}) {
|
|
|
133
133
|
else {
|
|
134
134
|
exec(npmCmd, { cwd: targetDir });
|
|
135
135
|
}
|
|
136
|
-
// 5.
|
|
136
|
+
// 5. Run post-deploy hooks (server-side, after npm install)
|
|
137
|
+
if (config.hooks?.postDeploy && config.hooks.postDeploy.length > 0) {
|
|
138
|
+
console.log(chalk.blue('Running post-deploy hooks...'));
|
|
139
|
+
for (const hookCmd of config.hooks.postDeploy) {
|
|
140
|
+
console.log(chalk.gray(` $ ${hookCmd}`));
|
|
141
|
+
try {
|
|
142
|
+
if (pm2User) {
|
|
143
|
+
execAsUser(hookCmd, pm2User, { cwd: targetDir, env: cmdEnv });
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
exec(hookCmd, { cwd: targetDir });
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
catch (error) {
|
|
150
|
+
console.log(chalk.red(` ✗ Hook failed: ${hookCmd}`));
|
|
151
|
+
// Continue with other hooks, but warn
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
// 6. Restart process manager
|
|
156
|
+
const processManager = config.processManager || 'pm2';
|
|
157
|
+
if (processManager === 'gpdd') {
|
|
158
|
+
await restartWithGpdd(config, targetDir, runUser, cmdEnv);
|
|
159
|
+
}
|
|
160
|
+
else if (processManager === 'pm2') {
|
|
161
|
+
await restartWithPm2(config, targetDir, runUser, cmdEnv);
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
console.log(chalk.yellow(`Unsupported process manager: ${processManager}`));
|
|
165
|
+
}
|
|
166
|
+
console.log(chalk.green(`✓ Installed ${serviceName}`));
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Restart service using PM2
|
|
170
|
+
*/
|
|
171
|
+
async function restartWithPm2(config, targetDir, runUser, cmdEnv) {
|
|
172
|
+
const { processName, pm2Home, pm2User } = config;
|
|
137
173
|
console.log(chalk.blue('Restarting PM2 process...'));
|
|
138
174
|
// Check if process exists and restart, otherwise start
|
|
139
175
|
const pm2RestartCmd = `pm2 describe ${processName} > /dev/null 2>&1 && pm2 restart ${processName} --update-env || pm2 start ecosystem.config.cjs --env ${config.environment || 'production'}`;
|
|
@@ -146,7 +182,7 @@ export async function installCommand(serviceName, options = {}) {
|
|
|
146
182
|
fullPm2Cmd = `PM2_HOME=${pm2Home} ${fullPm2Cmd}`;
|
|
147
183
|
exec(fullPm2Cmd, { cwd: targetDir });
|
|
148
184
|
}
|
|
149
|
-
//
|
|
185
|
+
// PM2 save
|
|
150
186
|
console.log(chalk.blue('Saving PM2 state...'));
|
|
151
187
|
const pm2SaveCmd = 'pm2 save';
|
|
152
188
|
if (pm2User) {
|
|
@@ -158,7 +194,6 @@ export async function installCommand(serviceName, options = {}) {
|
|
|
158
194
|
fullSaveCmd = `PM2_HOME=${pm2Home} ${fullSaveCmd}`;
|
|
159
195
|
exec(fullSaveCmd);
|
|
160
196
|
}
|
|
161
|
-
console.log(chalk.green(`✓ Installed ${serviceName}`));
|
|
162
197
|
// Show status
|
|
163
198
|
const pm2StatusCmd = 'pm2 status';
|
|
164
199
|
if (pm2User) {
|
|
@@ -171,4 +206,64 @@ export async function installCommand(serviceName, options = {}) {
|
|
|
171
206
|
exec(fullStatusCmd);
|
|
172
207
|
}
|
|
173
208
|
}
|
|
209
|
+
/**
|
|
210
|
+
* Restart service using GPDD (git-push-deploy-daemon)
|
|
211
|
+
* Zero-downtime cluster restart
|
|
212
|
+
*/
|
|
213
|
+
async function restartWithGpdd(config, targetDir, runUser, cmdEnv) {
|
|
214
|
+
const entryPoint = config.gpddEntryPoint || 'dist/index.js';
|
|
215
|
+
const workers = config.gpddWorkers || 0; // 0 = CPU count
|
|
216
|
+
const pm2User = config.pm2User; // Reuse pm2User for gpdd as well
|
|
217
|
+
console.log(chalk.blue('Managing GPDD process...'));
|
|
218
|
+
// Check if gpdd is installed
|
|
219
|
+
try {
|
|
220
|
+
execSync('which gpdd', { stdio: 'pipe' });
|
|
221
|
+
}
|
|
222
|
+
catch {
|
|
223
|
+
console.log(chalk.yellow('gpdd not found, installing...'));
|
|
224
|
+
exec('npm install -g git-push-deploy-daemon');
|
|
225
|
+
}
|
|
226
|
+
// Check if already running
|
|
227
|
+
const pidFile = join(targetDir, '.gpdd.pid');
|
|
228
|
+
if (existsSync(pidFile)) {
|
|
229
|
+
// Running - send reload signal for zero-downtime restart
|
|
230
|
+
console.log(chalk.blue('Sending reload signal...'));
|
|
231
|
+
const reloadCmd = `cd "${targetDir}" && gpdd reload`;
|
|
232
|
+
if (pm2User) {
|
|
233
|
+
execAsUser(reloadCmd, pm2User, { env: cmdEnv });
|
|
234
|
+
}
|
|
235
|
+
else {
|
|
236
|
+
exec(reloadCmd);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
else {
|
|
240
|
+
// Not running - start fresh
|
|
241
|
+
console.log(chalk.blue(`Starting ${entryPoint} with ${workers || 'auto'} workers...`));
|
|
242
|
+
const workerArg = workers > 0 ? `-w ${workers}` : '';
|
|
243
|
+
const startCmd = `cd "${targetDir}" && gpdd start ${entryPoint} ${workerArg}`;
|
|
244
|
+
if (pm2User) {
|
|
245
|
+
// Start in background with nohup
|
|
246
|
+
execAsUser(`nohup ${startCmd} > logs/gpdd.log 2>&1 &`, pm2User, { env: cmdEnv });
|
|
247
|
+
}
|
|
248
|
+
else {
|
|
249
|
+
exec(`nohup ${startCmd} > logs/gpdd.log 2>&1 &`);
|
|
250
|
+
}
|
|
251
|
+
// Wait a moment for startup
|
|
252
|
+
await new Promise(r => setTimeout(r, 2000));
|
|
253
|
+
}
|
|
254
|
+
// Show status
|
|
255
|
+
console.log(chalk.blue('GPDD status:'));
|
|
256
|
+
const statusCmd = `cd "${targetDir}" && gpdd status`;
|
|
257
|
+
try {
|
|
258
|
+
if (pm2User) {
|
|
259
|
+
execAsUser(statusCmd, pm2User, { env: cmdEnv });
|
|
260
|
+
}
|
|
261
|
+
else {
|
|
262
|
+
exec(statusCmd);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
catch {
|
|
266
|
+
console.log(chalk.yellow('Could not get gpdd status (process may still be starting)'));
|
|
267
|
+
}
|
|
268
|
+
}
|
|
174
269
|
//# sourceMappingURL=install.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/logs.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"AAKA,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoC/F"}
|
package/dist/commands/logs.js
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { spawn } from 'child_process';
|
|
3
3
|
import { getServiceConfig } from '../config/loader.js';
|
|
4
|
+
import { getPrimaryServer } from '../config/types.js';
|
|
4
5
|
/**
|
|
5
6
|
* Logs command - show PM2 logs from server via SSH
|
|
7
|
+
* Note: For multi-server, shows logs from primary server only
|
|
6
8
|
*/
|
|
7
9
|
export async function logsCommand(serviceName, options = {}) {
|
|
8
10
|
const config = getServiceConfig(serviceName);
|
|
9
|
-
const
|
|
11
|
+
const primaryServer = getPrimaryServer(config);
|
|
12
|
+
const { host, sshOptions } = primaryServer;
|
|
10
13
|
const { processName, pm2Home } = config;
|
|
11
14
|
const lines = options.lines || '50';
|
|
12
15
|
const pm2Env = pm2Home ? `PM2_HOME=${pm2Home}` : '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAOtD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,WAAmB,EAAE,UAAuB,EAAE;IAC9E,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC;IAC3C,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC;IAEpC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,WAAW,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,8BAA8B;IAC9B,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5D,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,qCAAqC;QACrC,MAAM,OAAO,GAAG,CAAC,GAAG,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,aAAa,WAAW,YAAY,KAAK,EAAE,CAAC,CAAC;QAC7F,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE;YAChC,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACxB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,oCAAoC;QACpC,MAAM,OAAO,GAAG,CAAC,GAAG,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,aAAa,WAAW,YAAY,KAAK,aAAa,CAAC,CAAC;QACxG,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE;YAChC,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACxB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
|
@@ -4,8 +4,12 @@ interface ReleaseOptions {
|
|
|
4
4
|
/**
|
|
5
5
|
* Release command - commit and push deploy repository
|
|
6
6
|
*
|
|
7
|
-
* Pushes to the bare repo on the server, which triggers the post-receive hook.
|
|
7
|
+
* Pushes to the bare repo on the server(s), which triggers the post-receive hook.
|
|
8
8
|
*/
|
|
9
9
|
export declare function releaseCommand(serviceName: string, options?: ReleaseOptions): Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* Dry run version of release command - shows what would be committed/pushed
|
|
12
|
+
*/
|
|
13
|
+
export declare function releaseCommandDryRun(serviceName: string): Promise<void>;
|
|
10
14
|
export {};
|
|
11
15
|
//# sourceMappingURL=release.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"AASA,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA0ED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6GrG;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgD7E"}
|
package/dist/commands/release.js
CHANGED
|
@@ -1,21 +1,114 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
+
import { execSync } from 'child_process';
|
|
2
3
|
import { getServiceConfig, getWorkspaceRoot, getDeployRepoPath } from '../config/loader.js';
|
|
3
|
-
import {
|
|
4
|
+
import { getServers, parseSshPort, buildSshUrl } from '../config/types.js';
|
|
5
|
+
import { gitAddAll, gitCommit, gitPush, hasChanges, getCurrentBranch, getGitStatus, getLastCommitHash, getLastCommitMessage } from '../utils/git.js';
|
|
6
|
+
import { exists } from '../utils/files.js';
|
|
7
|
+
import { joinPath } from '../utils/files.js';
|
|
8
|
+
import { sendNotifications } from '../utils/notifications.js';
|
|
9
|
+
/**
|
|
10
|
+
* Execute hook commands
|
|
11
|
+
*/
|
|
12
|
+
function executeHooks(hooks, label, cwd) {
|
|
13
|
+
if (!hooks || hooks.length === 0)
|
|
14
|
+
return true;
|
|
15
|
+
console.log(chalk.gray(` Running ${label} hooks...`));
|
|
16
|
+
for (const cmd of hooks) {
|
|
17
|
+
console.log(chalk.gray(` $ ${cmd}`));
|
|
18
|
+
try {
|
|
19
|
+
execSync(cmd, { cwd, stdio: 'inherit' });
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
console.log(chalk.red(` ✗ Hook failed: ${cmd}`));
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Ensure remotes are set up for all servers
|
|
30
|
+
* Creates remote-0, remote-1, etc. for each server
|
|
31
|
+
*/
|
|
32
|
+
function ensureRemotes(deployRepoPath, serviceName) {
|
|
33
|
+
const config = getServiceConfig(serviceName);
|
|
34
|
+
const servers = getServers(config);
|
|
35
|
+
// Get existing remotes
|
|
36
|
+
let existingRemotes = [];
|
|
37
|
+
try {
|
|
38
|
+
const output = execSync('git remote', { cwd: deployRepoPath, encoding: 'utf-8' });
|
|
39
|
+
existingRemotes = output.trim().split('\n').filter(r => r);
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
// No remotes yet
|
|
43
|
+
}
|
|
44
|
+
// For single server, use 'origin'
|
|
45
|
+
if (servers.length === 1) {
|
|
46
|
+
const server = servers[0];
|
|
47
|
+
const port = parseSshPort(server.sshOptions);
|
|
48
|
+
const sshUrl = buildSshUrl(server.host, server.bareRepo, port);
|
|
49
|
+
if (!existingRemotes.includes('origin')) {
|
|
50
|
+
execSync(`git remote add origin ${sshUrl}`, { cwd: deployRepoPath, stdio: 'pipe' });
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
execSync(`git remote set-url origin ${sshUrl}`, { cwd: deployRepoPath, stdio: 'pipe' });
|
|
54
|
+
}
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
// For multi-server, create server-0, server-1, etc.
|
|
58
|
+
servers.forEach((server, index) => {
|
|
59
|
+
const remoteName = `server-${index}`;
|
|
60
|
+
const port = parseSshPort(server.sshOptions);
|
|
61
|
+
const sshUrl = buildSshUrl(server.host, server.bareRepo, port);
|
|
62
|
+
if (!existingRemotes.includes(remoteName)) {
|
|
63
|
+
execSync(`git remote add ${remoteName} ${sshUrl}`, { cwd: deployRepoPath, stdio: 'pipe' });
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
execSync(`git remote set-url ${remoteName} ${sshUrl}`, { cwd: deployRepoPath, stdio: 'pipe' });
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
// Also keep 'origin' pointing to primary server for backwards compat
|
|
70
|
+
const primaryServer = servers[0];
|
|
71
|
+
const port = parseSshPort(primaryServer.sshOptions);
|
|
72
|
+
const sshUrl = buildSshUrl(primaryServer.host, primaryServer.bareRepo, port);
|
|
73
|
+
if (!existingRemotes.includes('origin')) {
|
|
74
|
+
execSync(`git remote add origin ${sshUrl}`, { cwd: deployRepoPath, stdio: 'pipe' });
|
|
75
|
+
}
|
|
76
|
+
}
|
|
4
77
|
/**
|
|
5
78
|
* Release command - commit and push deploy repository
|
|
6
79
|
*
|
|
7
|
-
* Pushes to the bare repo on the server, which triggers the post-receive hook.
|
|
80
|
+
* Pushes to the bare repo on the server(s), which triggers the post-receive hook.
|
|
8
81
|
*/
|
|
9
82
|
export async function releaseCommand(serviceName, options = {}) {
|
|
10
83
|
console.log(chalk.blue(`Releasing ${serviceName}...`));
|
|
84
|
+
const startTime = Date.now();
|
|
11
85
|
const config = getServiceConfig(serviceName);
|
|
86
|
+
const servers = getServers(config);
|
|
12
87
|
const workspaceRoot = getWorkspaceRoot();
|
|
13
88
|
const deployRepoPath = getDeployRepoPath(config, workspaceRoot);
|
|
89
|
+
const sourceDir = joinPath(workspaceRoot, config.sourceDir);
|
|
90
|
+
// Run pre-deploy hooks (local, in source directory)
|
|
91
|
+
if (config.hooks?.preDeploy) {
|
|
92
|
+
if (!executeHooks(config.hooks.preDeploy, 'pre-deploy', sourceDir)) {
|
|
93
|
+
console.log(chalk.red('✗ Pre-deploy hooks failed, aborting release.'));
|
|
94
|
+
await sendNotifications(config.notifications, {
|
|
95
|
+
service: serviceName,
|
|
96
|
+
environment: config.environment,
|
|
97
|
+
servers: servers.map(s => s.name || s.host),
|
|
98
|
+
success: false,
|
|
99
|
+
message: 'Pre-deploy hooks failed',
|
|
100
|
+
timestamp: new Date().toISOString()
|
|
101
|
+
});
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
14
105
|
// Check for changes
|
|
15
106
|
if (!hasChanges(deployRepoPath)) {
|
|
16
107
|
console.log(chalk.yellow('No changes to release.'));
|
|
17
108
|
return;
|
|
18
109
|
}
|
|
110
|
+
// Ensure remotes are configured
|
|
111
|
+
ensureRemotes(deployRepoPath, serviceName);
|
|
19
112
|
// Commit
|
|
20
113
|
const timestamp = new Date().toISOString().replace('T', ' ').substring(0, 19);
|
|
21
114
|
const message = options.message || `deploy: ${serviceName} @ ${timestamp}`;
|
|
@@ -25,10 +118,115 @@ export async function releaseCommand(serviceName, options = {}) {
|
|
|
25
118
|
console.log(chalk.yellow('No changes to commit.'));
|
|
26
119
|
return;
|
|
27
120
|
}
|
|
28
|
-
// Push (this triggers the post-receive hook on the server)
|
|
29
121
|
const branch = getCurrentBranch(deployRepoPath);
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
122
|
+
// Push to each server
|
|
123
|
+
let pushSuccess = true;
|
|
124
|
+
const failedServers = [];
|
|
125
|
+
if (servers.length === 1) {
|
|
126
|
+
console.log(chalk.gray(` Pushing to origin/${branch}...`));
|
|
127
|
+
try {
|
|
128
|
+
gitPush(deployRepoPath, 'origin', branch);
|
|
129
|
+
}
|
|
130
|
+
catch (error) {
|
|
131
|
+
pushSuccess = false;
|
|
132
|
+
failedServers.push(servers[0].name || servers[0].host);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
console.log(chalk.gray(` Pushing to ${servers.length} servers...`));
|
|
137
|
+
for (let i = 0; i < servers.length; i++) {
|
|
138
|
+
const remoteName = `server-${i}`;
|
|
139
|
+
const serverLabel = servers[i].name || servers[i].host;
|
|
140
|
+
console.log(chalk.gray(` → ${serverLabel}...`));
|
|
141
|
+
try {
|
|
142
|
+
gitPush(deployRepoPath, remoteName, branch);
|
|
143
|
+
console.log(chalk.green(` ✓ ${serverLabel}`));
|
|
144
|
+
}
|
|
145
|
+
catch (error) {
|
|
146
|
+
console.log(chalk.red(` ✗ ${serverLabel}: ${error.message}`));
|
|
147
|
+
pushSuccess = false;
|
|
148
|
+
failedServers.push(serverLabel);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
// Run post-deploy-local hooks (local, after successful push)
|
|
153
|
+
if (pushSuccess && config.hooks?.postDeployLocal) {
|
|
154
|
+
executeHooks(config.hooks.postDeployLocal, 'post-deploy-local', sourceDir);
|
|
155
|
+
}
|
|
156
|
+
// Calculate duration
|
|
157
|
+
const duration = Math.round((Date.now() - startTime) / 1000);
|
|
158
|
+
// Get commit info for notification
|
|
159
|
+
const commitHash = getLastCommitHash(deployRepoPath);
|
|
160
|
+
const commitMessage = getLastCommitMessage(deployRepoPath);
|
|
161
|
+
// Send notifications
|
|
162
|
+
const result = {
|
|
163
|
+
service: serviceName,
|
|
164
|
+
environment: config.environment,
|
|
165
|
+
servers: servers.map(s => s.name || s.host),
|
|
166
|
+
success: pushSuccess,
|
|
167
|
+
message: pushSuccess ? undefined : `Failed on: ${failedServers.join(', ')}`,
|
|
168
|
+
timestamp: new Date().toISOString(),
|
|
169
|
+
duration,
|
|
170
|
+
commitHash,
|
|
171
|
+
commitMessage
|
|
172
|
+
};
|
|
173
|
+
await sendNotifications(config.notifications, result);
|
|
174
|
+
if (pushSuccess) {
|
|
175
|
+
console.log(chalk.green(`✓ Released ${serviceName}`));
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
console.log(chalk.yellow(`⚠ Released with errors: ${failedServers.join(', ')}`));
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Dry run version of release command - shows what would be committed/pushed
|
|
183
|
+
*/
|
|
184
|
+
export async function releaseCommandDryRun(serviceName) {
|
|
185
|
+
console.log(chalk.blue(`[DRY RUN] Release preview for ${serviceName}...`));
|
|
186
|
+
const config = getServiceConfig(serviceName);
|
|
187
|
+
const servers = getServers(config);
|
|
188
|
+
const workspaceRoot = getWorkspaceRoot();
|
|
189
|
+
const deployRepoPath = getDeployRepoPath(config, workspaceRoot);
|
|
190
|
+
// Check if deploy repo exists
|
|
191
|
+
if (!exists(joinPath(deployRepoPath, '.git'))) {
|
|
192
|
+
console.log(chalk.yellow(' Deploy repo not initialized yet'));
|
|
193
|
+
console.log(chalk.gray(' Would be created on first deploy'));
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
// Check for changes
|
|
197
|
+
if (!hasChanges(deployRepoPath)) {
|
|
198
|
+
console.log(chalk.yellow(' No changes to release'));
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
// Show what would be committed
|
|
202
|
+
const status = getGitStatus(deployRepoPath);
|
|
203
|
+
console.log(chalk.gray(' Would commit:'));
|
|
204
|
+
for (const line of status.split('\n').filter(l => l.trim())) {
|
|
205
|
+
const [flag, ...fileParts] = line.trim().split(' ');
|
|
206
|
+
const file = fileParts.join(' ');
|
|
207
|
+
if (flag === 'M' || flag === 'MM') {
|
|
208
|
+
console.log(chalk.yellow(` M ${file}`));
|
|
209
|
+
}
|
|
210
|
+
else if (flag === 'A' || flag === '??') {
|
|
211
|
+
console.log(chalk.green(` A ${file}`));
|
|
212
|
+
}
|
|
213
|
+
else if (flag === 'D') {
|
|
214
|
+
console.log(chalk.red(` D ${file}`));
|
|
215
|
+
}
|
|
216
|
+
else {
|
|
217
|
+
console.log(chalk.gray(` ${line.trim()}`));
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
const branch = getCurrentBranch(deployRepoPath);
|
|
221
|
+
if (servers.length === 1) {
|
|
222
|
+
console.log(chalk.gray(` Would push to: origin/${branch}`));
|
|
223
|
+
console.log(chalk.gray(` Server: ${servers[0].host}`));
|
|
224
|
+
}
|
|
225
|
+
else {
|
|
226
|
+
console.log(chalk.gray(` Would push to ${servers.length} servers:`));
|
|
227
|
+
servers.forEach((s, i) => {
|
|
228
|
+
console.log(chalk.gray(` server-${i}: ${s.name || s.host}`));
|
|
229
|
+
});
|
|
230
|
+
}
|
|
33
231
|
}
|
|
34
232
|
//# sourceMappingURL=release.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"release.js","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"release.js","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface RollbackOptions {
|
|
2
|
+
force?: boolean;
|
|
3
|
+
steps?: number;
|
|
4
|
+
list?: boolean;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Rollback command - revert to a previous deployment
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* gpd rollback <service> - Interactive selection from recent commits
|
|
11
|
+
* gpd rollback <service> --steps 2 - Go back 2 commits
|
|
12
|
+
* gpd rollback <service> --list - Show available versions without rollback
|
|
13
|
+
* gpd rollback <service> abc123 - Rollback to specific commit
|
|
14
|
+
*/
|
|
15
|
+
export declare function rollbackCommand(serviceName: string, target?: string, options?: RollbackOptions): Promise<void>;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=rollback.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rollback.d.ts","sourceRoot":"","sources":["../../src/commands/rollback.ts"],"names":[],"mappings":"AAMA,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AA6CD;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkIxH"}
|