git-push-deploy-cli 0.3.1 → 0.6.1

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.
Files changed (51) hide show
  1. package/README.md +466 -108
  2. package/dist/commands/config.d.ts.map +1 -1
  3. package/dist/commands/config.js +58 -18
  4. package/dist/commands/config.js.map +1 -1
  5. package/dist/commands/daemon.d.ts +10 -0
  6. package/dist/commands/daemon.d.ts.map +1 -0
  7. package/dist/commands/daemon.js +67 -0
  8. package/dist/commands/daemon.js.map +1 -0
  9. package/dist/commands/deploy.d.ts +1 -1
  10. package/dist/commands/deploy.d.ts.map +1 -1
  11. package/dist/commands/deploy.js +5 -2
  12. package/dist/commands/deploy.js.map +1 -1
  13. package/dist/commands/init.d.ts.map +1 -1
  14. package/dist/commands/init.js +36 -19
  15. package/dist/commands/init.js.map +1 -1
  16. package/dist/commands/install.d.ts.map +1 -1
  17. package/dist/commands/install.js +98 -3
  18. package/dist/commands/install.js.map +1 -1
  19. package/dist/commands/logs.d.ts +1 -0
  20. package/dist/commands/logs.d.ts.map +1 -1
  21. package/dist/commands/logs.js +4 -1
  22. package/dist/commands/logs.js.map +1 -1
  23. package/dist/commands/release.d.ts +1 -1
  24. package/dist/commands/release.d.ts.map +1 -1
  25. package/dist/commands/release.js +162 -8
  26. package/dist/commands/release.js.map +1 -1
  27. package/dist/commands/stage.d.ts.map +1 -1
  28. package/dist/commands/stage.js +4 -3
  29. package/dist/commands/stage.js.map +1 -1
  30. package/dist/commands/status.d.ts.map +1 -1
  31. package/dist/commands/status.js +15 -2
  32. package/dist/commands/status.js.map +1 -1
  33. package/dist/config/types.d.ts +112 -14
  34. package/dist/config/types.d.ts.map +1 -1
  35. package/dist/config/types.js +20 -0
  36. package/dist/config/types.js.map +1 -1
  37. package/dist/index.js +10 -1
  38. package/dist/index.js.map +1 -1
  39. package/dist/utils/git.d.ts +8 -0
  40. package/dist/utils/git.d.ts.map +1 -1
  41. package/dist/utils/git.js +22 -0
  42. package/dist/utils/git.js.map +1 -1
  43. package/dist/utils/notifications.d.ts +6 -0
  44. package/dist/utils/notifications.d.ts.map +1 -0
  45. package/dist/utils/notifications.js +188 -0
  46. package/dist/utils/notifications.js.map +1 -0
  47. package/dist/utils/shell.d.ts +4 -0
  48. package/dist/utils/shell.d.ts.map +1 -1
  49. package/dist/utils/shell.js +18 -0
  50. package/dist/utils/shell.js.map +1 -1
  51. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ interface LogsOptions {
4
4
  }
5
5
  /**
6
6
  * Logs command - show PM2 logs from server via SSH
7
+ * Note: For multi-server, shows logs from primary server only
7
8
  */
8
9
  export declare function logsCommand(serviceName: string, options?: LogsOptions): Promise<void>;
9
10
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/commands/logs.ts"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmC/F"}
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"}
@@ -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 { host, sshOptions } = config.server;
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;AAOvD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,WAAmB,EAAE,UAAuB,EAAE;IAC9E,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,MAAM,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"}
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,7 +4,7 @@ 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
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"release.d.ts","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"AAMA,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BrG;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC7E"}
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"}
@@ -1,23 +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 { gitAddAll, gitCommit, gitPush, hasChanges, getCurrentBranch, getGitStatus } from '../utils/git.js';
4
+ import { getServers, parseSshPort, buildSshUrl } from '../config/types.js';
5
+ import { gitAddAll, gitCommit, gitPush, hasChanges, getCurrentBranch, getGitStatus, getLastCommitHash, getLastCommitMessage } from '../utils/git.js';
4
6
  import { exists } from '../utils/files.js';
5
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
+ }
6
77
  /**
7
78
  * Release command - commit and push deploy repository
8
79
  *
9
- * 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.
10
81
  */
11
82
  export async function releaseCommand(serviceName, options = {}) {
12
83
  console.log(chalk.blue(`Releasing ${serviceName}...`));
84
+ const startTime = Date.now();
13
85
  const config = getServiceConfig(serviceName);
86
+ const servers = getServers(config);
14
87
  const workspaceRoot = getWorkspaceRoot();
15
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
+ }
16
105
  // Check for changes
17
106
  if (!hasChanges(deployRepoPath)) {
18
107
  console.log(chalk.yellow('No changes to release.'));
19
108
  return;
20
109
  }
110
+ // Ensure remotes are configured
111
+ ensureRemotes(deployRepoPath, serviceName);
21
112
  // Commit
22
113
  const timestamp = new Date().toISOString().replace('T', ' ').substring(0, 19);
23
114
  const message = options.message || `deploy: ${serviceName} @ ${timestamp}`;
@@ -27,11 +118,65 @@ export async function releaseCommand(serviceName, options = {}) {
27
118
  console.log(chalk.yellow('No changes to commit.'));
28
119
  return;
29
120
  }
30
- // Push (this triggers the post-receive hook on the server)
31
121
  const branch = getCurrentBranch(deployRepoPath);
32
- console.log(chalk.gray(` Pushing to origin/${branch}...`));
33
- gitPush(deployRepoPath, 'origin', branch);
34
- console.log(chalk.green(`✓ Released ${serviceName}`));
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
+ }
35
180
  }
36
181
  /**
37
182
  * Dry run version of release command - shows what would be committed/pushed
@@ -39,6 +184,7 @@ export async function releaseCommand(serviceName, options = {}) {
39
184
  export async function releaseCommandDryRun(serviceName) {
40
185
  console.log(chalk.blue(`[DRY RUN] Release preview for ${serviceName}...`));
41
186
  const config = getServiceConfig(serviceName);
187
+ const servers = getServers(config);
42
188
  const workspaceRoot = getWorkspaceRoot();
43
189
  const deployRepoPath = getDeployRepoPath(config, workspaceRoot);
44
190
  // Check if deploy repo exists
@@ -72,7 +218,15 @@ export async function releaseCommandDryRun(serviceName) {
72
218
  }
73
219
  }
74
220
  const branch = getCurrentBranch(deployRepoPath);
75
- console.log(chalk.gray(` Would push to: origin/${branch}`));
76
- console.log(chalk.gray(` Server: ${config.server.host}`));
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
+ }
77
231
  }
78
232
  //# sourceMappingURL=release.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"release.js","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"release.js","sourceRoot":"","sources":["../../src/commands/release.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stage.d.ts","sourceRoot":"","sources":["../../src/commands/stage.ts"],"names":[],"mappings":"AAmCA;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDrE;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC3E"}
1
+ {"version":3,"file":"stage.d.ts","sourceRoot":"","sources":["../../src/commands/stage.ts"],"names":[],"mappings":"AAmCA;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuDrE;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC3E"}
@@ -1,7 +1,7 @@
1
1
  import chalk from 'chalk';
2
2
  import { execSync } from 'child_process';
3
3
  import { getServiceConfig, getWorkspaceRoot, getSourceDir, getDeployRepoPath, CONFIG_FILENAME } from '../config/loader.js';
4
- import { DEFAULT_ARTIFACTS, parseSshPort, buildSshUrl } from '../config/types.js';
4
+ import { DEFAULT_ARTIFACTS, parseSshPort, buildSshUrl, getPrimaryServer } from '../config/types.js';
5
5
  import { ensureDir, removeDir, copy, exists, joinPath } from '../utils/files.js';
6
6
  /**
7
7
  * Initialize deploy repo if it doesn't exist (lazy init)
@@ -43,8 +43,9 @@ export async function stageCommand(serviceName) {
43
43
  }
44
44
  console.log(chalk.gray(` Source: ${config.sourceDir}`));
45
45
  console.log(chalk.gray(` Deploy: ${config.sourceDir}/${config.deployRepo}`));
46
- // Lazy init deploy repo
47
- const { host, bareRepo, sshOptions } = config.server;
46
+ // Lazy init deploy repo (use primary server for remote)
47
+ const primaryServer = getPrimaryServer(config);
48
+ const { host, bareRepo, sshOptions } = primaryServer;
48
49
  const wasInitialized = initDeployRepoIfNeeded(deployRepoPath, host, bareRepo, sshOptions);
49
50
  if (wasInitialized) {
50
51
  console.log(chalk.green(' ✓ Deploy repo initialized'));
@@ -1 +1 @@
1
- {"version":3,"file":"stage.js","sourceRoot":"","sources":["../../src/commands/stage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stage.js","sourceRoot":"","sources":["../../src/commands/stage.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CA2BnD"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAsCnD"}
@@ -1,5 +1,6 @@
1
1
  import chalk from 'chalk';
2
2
  import { loadConfig, listServices } from '../config/loader.js';
3
+ import { getServers } from '../config/types.js';
3
4
  /**
4
5
  * Status command - show all configured services
5
6
  */
@@ -13,12 +14,24 @@ export async function statusCommand() {
13
14
  console.log(chalk.white('Configured Services:'));
14
15
  for (const name of services) {
15
16
  const svc = config.services[name];
17
+ const servers = getServers(svc);
16
18
  console.log(chalk.gray(` ${name}`));
17
- console.log(chalk.gray(` Host: ${svc.server.host}`));
19
+ if (servers.length === 1) {
20
+ console.log(chalk.gray(` Host: ${servers[0].host}`));
21
+ }
22
+ else {
23
+ console.log(chalk.gray(` Servers: ${servers.length}`));
24
+ for (const server of servers) {
25
+ const label = server.name || server.host;
26
+ console.log(chalk.gray(` - ${label}`));
27
+ }
28
+ }
18
29
  console.log(chalk.gray(` Process: ${svc.processName}`));
19
30
  console.log(chalk.gray(` Source: ${svc.sourceDir}`));
20
31
  console.log(chalk.gray(` Deploy: ${svc.sourceDir}/${svc.deployRepo}`));
21
- console.log(chalk.gray(` Target: ${svc.server.targetDir}`));
32
+ if (servers.length === 1) {
33
+ console.log(chalk.gray(` Target: ${servers[0].targetDir}`));
34
+ }
22
35
  if (svc.environment) {
23
36
  console.log(chalk.gray(` Environment: ${svc.environment}`));
24
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAE/D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,2BAA2B;IAC3B,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAE5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACjD,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAC1E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YAC/D,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,sDAAsD,CAAC,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,2BAA2B;IAC3B,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAE5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACjD,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;YACrC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC1D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC;oBACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAC1E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,sDAAsD,CAAC,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1,11 +1,101 @@
1
1
  /**
2
2
  * Process manager type
3
3
  */
4
- export type ProcessManagerType = 'pm2' | 'systemd';
4
+ export type ProcessManagerType = 'pm2' | 'systemd' | 'gpdd';
5
5
  /**
6
6
  * Environment type for deployment
7
7
  */
8
8
  export type EnvironmentType = 'production' | 'staging' | 'development';
9
+ /**
10
+ * Hooks configuration for pre/post deployment scripts
11
+ */
12
+ export interface HooksConfig {
13
+ /** Commands to run locally before deployment (before git push) */
14
+ preDeploy?: string[];
15
+ /** Commands to run on server after deployment (after npm install) */
16
+ postDeploy?: string[];
17
+ /** Commands to run locally after successful deployment */
18
+ postDeployLocal?: string[];
19
+ }
20
+ /**
21
+ * Slack notification configuration
22
+ */
23
+ export interface SlackNotificationConfig {
24
+ /** Slack webhook URL */
25
+ webhookUrl: string;
26
+ /** Channel override (optional, uses webhook default) */
27
+ channel?: string;
28
+ /** Username override */
29
+ username?: string;
30
+ /** Only notify on failure */
31
+ onlyOnFailure?: boolean;
32
+ }
33
+ /**
34
+ * Discord notification configuration
35
+ */
36
+ export interface DiscordNotificationConfig {
37
+ /** Discord webhook URL */
38
+ webhookUrl: string;
39
+ /** Username override */
40
+ username?: string;
41
+ /** Only notify on failure */
42
+ onlyOnFailure?: boolean;
43
+ }
44
+ /**
45
+ * Generic webhook notification configuration
46
+ */
47
+ export interface WebhookNotificationConfig {
48
+ /** Webhook URL */
49
+ url: string;
50
+ /** HTTP method (default: POST) */
51
+ method?: 'POST' | 'PUT';
52
+ /** Additional headers */
53
+ headers?: Record<string, string>;
54
+ /** Only notify on failure */
55
+ onlyOnFailure?: boolean;
56
+ }
57
+ /**
58
+ * Notification configuration
59
+ */
60
+ export interface NotificationsConfig {
61
+ /** Slack notifications */
62
+ slack?: SlackNotificationConfig;
63
+ /** Discord notifications */
64
+ discord?: DiscordNotificationConfig;
65
+ /** Generic webhook */
66
+ webhook?: WebhookNotificationConfig;
67
+ }
68
+ /**
69
+ * Deployment result for notifications
70
+ */
71
+ export interface DeploymentResult {
72
+ service: string;
73
+ environment?: string;
74
+ servers: string[];
75
+ success: boolean;
76
+ message?: string;
77
+ timestamp: string;
78
+ duration?: number;
79
+ commitHash?: string;
80
+ commitMessage?: string;
81
+ }
82
+ /**
83
+ * Server configuration for deployment target
84
+ */
85
+ export interface ServerConfig {
86
+ /** SSH host (user@hostname) */
87
+ host: string;
88
+ /** Additional SSH options (e.g., "-p 6771 -4") */
89
+ sshOptions?: string;
90
+ /** Where to install on server (target directory) */
91
+ targetDir: string;
92
+ /** Path to bare git repo on server */
93
+ bareRepo: string;
94
+ /** Unix group for shared access (created if not exists) */
95
+ group?: string;
96
+ /** Server-specific name/label (optional, for display) */
97
+ name?: string;
98
+ }
9
99
  /**
10
100
  * Service configuration for git-deploy
11
101
  *
@@ -30,23 +120,22 @@ export interface ServiceConfig {
30
120
  pm2Home?: string;
31
121
  /** User to run PM2 commands as (via sudo -u) */
32
122
  pm2User?: string;
123
+ /** GPDD: Number of workers (default: CPU count) */
124
+ gpddWorkers?: number;
125
+ /** GPDD: App entry point (default: dist/index.js) */
126
+ gpddEntryPoint?: string;
33
127
  /** Environment type (production, staging, development) */
34
128
  environment?: EnvironmentType;
35
129
  /** Environment variables to write to .env file on server */
36
130
  env?: Record<string, string | number | boolean>;
37
- /** Server-side configuration */
38
- server: {
39
- /** SSH host (user@hostname) */
40
- host: string;
41
- /** Additional SSH options (e.g., "-p 6771 -4") */
42
- sshOptions?: string;
43
- /** Where to install on server (target directory) */
44
- targetDir: string;
45
- /** Path to bare git repo on server */
46
- bareRepo: string;
47
- /** Unix group for shared access (created if not exists) */
48
- group?: string;
49
- };
131
+ /** Deployment hooks (pre-deploy, post-deploy scripts) */
132
+ hooks?: HooksConfig;
133
+ /** Notification settings */
134
+ notifications?: NotificationsConfig;
135
+ /** Server-side configuration (single server) */
136
+ server?: ServerConfig;
137
+ /** Multiple servers for parallel deployment */
138
+ servers?: ServerConfig[];
50
139
  /** @deprecated Use sourceDir instead */
51
140
  packages?: string[];
52
141
  /** @deprecated Use sourceDir instead */
@@ -64,6 +153,15 @@ export interface DeployConfig {
64
153
  * Default artifacts to copy if not specified
65
154
  */
66
155
  export declare const DEFAULT_ARTIFACTS: string[];
156
+ /**
157
+ * Get all servers from a service config
158
+ * Handles both single 'server' and multiple 'servers' config
159
+ */
160
+ export declare function getServers(config: ServiceConfig): ServerConfig[];
161
+ /**
162
+ * Get the primary server (first one) from config
163
+ */
164
+ export declare function getPrimaryServer(config: ServiceConfig): ServerConfig;
67
165
  /**
68
166
  * Parse SSH options to extract port
69
167
  * @param sshOptions e.g. "-p 6771 -4"
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,SAAS,CAAC;AAEnD;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,SAAS,GAAG,aAAa,CAAC;AAEvE;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAC;IAElB,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;IAEnB,wCAAwC;IACxC,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,kBAAkB,CAAC;IAEpC,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IAEpB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,eAAe,CAAC;IAE9B,4DAA4D;IAC5D,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IAEhD,gCAAgC;IAChC,MAAM,EAAE;QACN,+BAA+B;QAC/B,IAAI,EAAE,MAAM,CAAC;QAEb,kDAAkD;QAClD,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB,oDAAoD;QACpD,SAAS,EAAE,MAAM,CAAC;QAElB,sCAAsC;QACtC,QAAQ,EAAE,MAAM,CAAC;QAEjB,2DAA2D;QAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IAGF,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAEpD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,UAI7B,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIpE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAKjF"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,SAAS,GAAG,MAAM,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,SAAS,GAAG,aAAa,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB,0DAA0D;IAC1D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,wBAAwB;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,kBAAkB;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACxB,yBAAyB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,6BAA6B;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0BAA0B;IAC1B,KAAK,CAAC,EAAE,uBAAuB,CAAC;IAChC,4BAA4B;IAC5B,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC,sBAAsB;IACtB,OAAO,CAAC,EAAE,yBAAyB,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IAEb,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAElB,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IAEjB,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAC;IAElB,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;IAEnB,wCAAwC;IACxC,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB,4CAA4C;IAC5C,cAAc,CAAC,EAAE,kBAAkB,CAAC;IAEpC,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IAEpB,mCAAmC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,qDAAqD;IACrD,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,eAAe,CAAC;IAE9B,4DAA4D;IAC5D,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;IAEhD,yDAAyD;IACzD,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB,4BAA4B;IAC5B,aAAa,CAAC,EAAE,mBAAmB,CAAC;IAEpC,gDAAgD;IAChD,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IAGzB,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAEpD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,UAI7B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,EAAE,CAQhE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,CAGpE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIpE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAKjF"}
@@ -6,6 +6,26 @@ export const DEFAULT_ARTIFACTS = [
6
6
  'package.json',
7
7
  'ecosystem.config.cjs'
8
8
  ];
9
+ /**
10
+ * Get all servers from a service config
11
+ * Handles both single 'server' and multiple 'servers' config
12
+ */
13
+ export function getServers(config) {
14
+ if (config.servers && config.servers.length > 0) {
15
+ return config.servers;
16
+ }
17
+ if (config.server) {
18
+ return [config.server];
19
+ }
20
+ throw new Error('No server configuration found. Specify either "server" or "servers" in config.');
21
+ }
22
+ /**
23
+ * Get the primary server (first one) from config
24
+ */
25
+ export function getPrimaryServer(config) {
26
+ const servers = getServers(config);
27
+ return servers[0];
28
+ }
9
29
  /**
10
30
  * Parse SSH options to extract port
11
31
  * @param sshOptions e.g. "-p 6771 -4"