rushdeploy 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +68 -68
  2. package/bin/index.js +52 -2
  3. package/package.json +23 -23
package/README.md CHANGED
@@ -1,68 +1,68 @@
1
- # RushDeploy CLI (Node.js Package)
2
-
3
- A zero-dependency Node.js command-line utility to manage your self-hosted RushDeploy PaaS account.
4
-
5
- ---
6
-
7
- ## Installation
8
-
9
- Install the package globally via npm:
10
-
11
- ```bash
12
- npm install -g rushdeploy
13
- ```
14
-
15
- ---
16
-
17
- ## Quickstart
18
-
19
- ### 1. Authenticate with your server
20
- Generate a CLI token in Settings inside the Web Dashboard and log in:
21
- ```bash
22
- rushdeploy login <token>
23
- ```
24
-
25
- ### 2. Check Workspace Status
26
- ```bash
27
- # Displays workspace resource quotas and allocations
28
- rushdeploy status
29
- ```
30
-
31
- ### 3. Deploy a project
32
- Deploy a public Git repository:
33
- ```bash
34
- rushdeploy deploy git https://github.com/my-username/my-react-app.git --branch main --type react
35
- ```
36
-
37
- ---
38
-
39
- ## Commands Reference
40
-
41
- * **`rushdeploy login <token>`**: Authenticate CLI session.
42
- * **`rushdeploy logout`**: Clear local auth details.
43
- * **`rushdeploy whoami`**: View details of the active user profile.
44
- * **`rushdeploy status`**: Render resource metrics cards.
45
- * **`rushdeploy plans`**: Show plan pricing quotas.
46
- * **`rushdeploy projects`**: List active projects.
47
- * **`rushdeploy repos`**: List repos in connected GitHub profile.
48
- * **`rushdeploy workspace`**: Display resource usage limits and quotas.
49
- * **`rushdeploy help`**: Show the CLI help dialog.
50
-
51
- ### Deployments
52
- * **`rushdeploy deploy git <url> [opts]`**: Trigger deployment from a Git clone URL.
53
- * *Options: `--name <name>`, `--branch <branch>`, `--type <framework>`*
54
- * **`rushdeploy deploy repo <owner/repo> [opts]`**: Trigger deployment from your connected GitHub account.
55
- * *Options: `--name <name>`, `--branch <branch>`, `--type <framework>`*
56
- * **`rushdeploy deploy wordpress <name> --email <e> [opts]`**: Provision a new WordPress site instance.
57
- * *Options: `--title <title>`, `--user <user>`, `--password <pass>`*
58
-
59
- ### Project Control
60
- * **`rushdeploy project <slug> start|stop|redeploy`**: Control container run state.
61
- * **`rushdeploy project <slug> rollback [deployment_id]`**: Rollback project to a previous deployment build.
62
- * **`rushdeploy project <slug> visit`**: Open the project's URL in your default browser.
63
- * **`rushdeploy project <slug> stats`**: Stream container CPU & RAM telemetry.
64
- * **`rushdeploy project <slug> logs`**: Tail container build and running output.
65
- * *Options: `--lines <N>`*
66
- * **`rushdeploy project <slug> env [set|remove]`**: Configure environment variables.
67
- * **`rushdeploy project <slug> autoscale`**: Read/write auto-scaling replica properties.
68
- * **`rushdeploy project <slug> autodeploy <on|off>`**: Toggle webhook push deployments.
1
+ # RushDeploy CLI (Node.js Package)
2
+
3
+ A zero-dependency Node.js command-line utility to manage your self-hosted RushDeploy PaaS account.
4
+
5
+ ---
6
+
7
+ ## Installation
8
+
9
+ Install the package globally via npm:
10
+
11
+ ```bash
12
+ npm install -g rushdeploy
13
+ ```
14
+
15
+ ---
16
+
17
+ ## Quickstart
18
+
19
+ ### 1. Authenticate with your server
20
+ Generate a CLI token in Settings inside the Web Dashboard and log in:
21
+ ```bash
22
+ rushdeploy login <token>
23
+ ```
24
+
25
+ ### 2. Check Workspace Status
26
+ ```bash
27
+ # Displays workspace resource quotas and allocations
28
+ rushdeploy status
29
+ ```
30
+
31
+ ### 3. Deploy a project
32
+ Deploy a public Git repository:
33
+ ```bash
34
+ rushdeploy deploy git https://github.com/my-username/my-react-app.git --branch main --type react
35
+ ```
36
+
37
+ ---
38
+
39
+ ## Commands Reference
40
+
41
+ * **`rushdeploy login <token>`**: Authenticate CLI session.
42
+ * **`rushdeploy logout`**: Clear local auth details.
43
+ * **`rushdeploy whoami`**: View details of the active user profile.
44
+ * **`rushdeploy status`**: Render resource metrics cards.
45
+ * **`rushdeploy plans`**: Show plan pricing quotas.
46
+ * **`rushdeploy projects`**: List active projects.
47
+ * **`rushdeploy repos`**: List repos in connected GitHub profile.
48
+ * **`rushdeploy workspace`**: Display resource usage limits and quotas.
49
+ * **`rushdeploy help`**: Show the CLI help dialog.
50
+
51
+ ### Deployments
52
+ * **`rushdeploy deploy git <url> [opts]`**: Trigger deployment from a Git clone URL.
53
+ * *Options: `--name <name>`, `--branch <branch>`, `--type <framework>`*
54
+ * **`rushdeploy deploy repo <owner/repo> [opts]`**: Trigger deployment from your connected GitHub account.
55
+ * *Options: `--name <name>`, `--branch <branch>`, `--type <framework>`*
56
+ * **`rushdeploy deploy wordpress <name> --email <e> [opts]`**: Provision a new WordPress site instance.
57
+ * *Options: `--title <title>`, `--user <user>`, `--password <pass>`*
58
+
59
+ ### Project Control
60
+ * **`rushdeploy project <slug> start|stop|redeploy`**: Control container run state.
61
+ * **`rushdeploy project <slug> rollback [deployment_id]`**: Rollback project to a previous deployment build.
62
+ * **`rushdeploy project <slug> visit`**: Open the project's URL in your default browser.
63
+ * **`rushdeploy project <slug> stats`**: Stream container CPU & RAM telemetry.
64
+ * **`rushdeploy project <slug> logs`**: Tail container build and running output.
65
+ * *Options: `--lines <N>`*
66
+ * **`rushdeploy project <slug> env [set|remove]`**: Configure environment variables.
67
+ * **`rushdeploy project <slug> autoscale`**: Read/write auto-scaling replica properties.
68
+ * **`rushdeploy project <slug> autodeploy <on|off>`**: Toggle webhook push deployments.
package/bin/index.js CHANGED
@@ -773,12 +773,60 @@ async function cmdDeploy(type, args) {
773
773
  ]);
774
774
  }
775
775
 
776
+ } else if (type === 'n8n') {
777
+ const name = args[0];
778
+ if (!name) {
779
+ ui.stepError(`Please specify the n8n project name.`);
780
+ console.log(` Usage: ${colors.green}rushdeploy deploy n8n <name> [--key <encryption_key>] [--auth-user <user>] [--auth-pass <pass>]${colors.reset}`);
781
+ process.exit(1);
782
+ }
783
+
784
+ let encryptionKey = null;
785
+ const keyIdx = args.indexOf('--key');
786
+ if (keyIdx !== -1 && args[keyIdx + 1]) encryptionKey = args[keyIdx + 1];
787
+
788
+ let authUser = null;
789
+ const userIdx = args.indexOf('--auth-user');
790
+ if (userIdx !== -1 && args[userIdx + 1]) authUser = args[userIdx + 1];
791
+
792
+ let authPass = null;
793
+ const passIdx = args.indexOf('--auth-pass');
794
+ if (passIdx !== -1 && args[passIdx + 1]) authPass = args[passIdx + 1];
795
+
796
+ ui.step(`Preparing n8n autonomous workflow environment for ${name}`);
797
+ ui.step(`Queueing 1-click n8n instance deployment`);
798
+
799
+ const payload = { name };
800
+ if (encryptionKey) payload.encryption_key = encryptionKey;
801
+ if (authUser || authPass) {
802
+ payload.basic_auth_active = true;
803
+ if (authUser) payload.basic_auth_user = authUser;
804
+ if (authPass) payload.basic_auth_password = authPass;
805
+ }
806
+
807
+ const res = await makeRequest('/projects/n8n', 'POST', payload);
808
+ if (res.success) {
809
+ ui.step(`n8n deployment queued successfully!`);
810
+ const n8nFields = [
811
+ { label: 'Instance', value: colors.bold + name + colors.reset },
812
+ { label: 'State', value: ui.badge('QUEUED') },
813
+ { label: 'Project ID', value: String(res.project_id) },
814
+ { label: 'Deployment ID', value: String(res.deployment_id) },
815
+ { label: 'Public URL', value: colors.brightCyan + colors.bold + res.url + colors.reset }
816
+ ];
817
+ if (res.encryption_key) {
818
+ n8nFields.push({ label: 'Encryption Key', value: res.encryption_key });
819
+ }
820
+ ui.box(n8nFields);
821
+ }
822
+
776
823
  } else {
777
- ui.stepError(`Invalid deployment source type. Must be 'git', 'repo', or 'wordpress'.`);
824
+ ui.stepError(`Invalid deployment source type. Must be 'git', 'repo', 'wordpress', or 'n8n'.`);
778
825
  console.log(`\nUsage:`);
779
826
  console.log(` rushdeploy deploy git <repo_url> [options]`);
780
827
  console.log(` rushdeploy deploy repo <owner/repo> [options]`);
781
828
  console.log(` rushdeploy deploy wordpress <name> --email <email> [options]`);
829
+ console.log(` rushdeploy deploy n8n <name> [options]`);
782
830
  process.exit(1);
783
831
  }
784
832
  }
@@ -1145,7 +1193,7 @@ async function cmdWorkspace() {
1145
1193
 
1146
1194
  function printHelp() {
1147
1195
  console.log(`
1148
- ${colors.bold}${colors.brightWhite}RushDeploy CLI${colors.reset} ${colors.gray}v1.0.6${colors.reset} - Modern PaaS Command Line Interface
1196
+ ${colors.bold}${colors.brightWhite}RushDeploy CLI${colors.reset} ${colors.gray}v1.0.8${colors.reset} - Modern PaaS Command Line Interface
1149
1197
 
1150
1198
  ${colors.bold}USAGE:${colors.reset}
1151
1199
  ${colors.brightCyan}rushdeploy${colors.reset} <command> [arguments] [options]
@@ -1168,6 +1216,8 @@ ${colors.bold}DEPLOYMENT COMMANDS:${colors.reset}
1168
1216
  Options: ${colors.gray}--name <name> --branch <branch> --type <type>${colors.reset}
1169
1217
  ${colors.green}deploy wordpress <name>${colors.reset} Deploy a new one-click WordPress site
1170
1218
  Options: ${colors.gray}--email <e> [--title <t>] [--user <u>] [--password <p>]${colors.reset}
1219
+ ${colors.green}deploy n8n <name>${colors.reset} Deploy a 1-click n8n workflow engine
1220
+ Options: ${colors.gray}[--key <key>] [--auth-user <u>] [--auth-pass <p>]${colors.reset}
1171
1221
 
1172
1222
  ${colors.bold}PROJECT CONTROL:${colors.reset}
1173
1223
  ${colors.green}project <slug|id>${colors.reset} Show project overview
package/package.json CHANGED
@@ -1,24 +1,24 @@
1
- {
2
- "name": "rushdeploy",
3
- "version": "1.0.6",
4
- "description": "CLI tool to manage your self-hosted RushDeploy PaaS account.",
5
- "main": "bin/index.js",
6
- "bin": {
7
- "rushdeploy": "bin/index.js"
8
- },
9
- "type": "commonjs",
10
- "scripts": {
11
- "start": "node bin/index.js"
12
- },
13
- "keywords": [
14
- "rushdeploy",
15
- "paas",
16
- "cli"
17
- ],
18
- "author": "RushDeploy Team",
19
- "license": "MIT",
20
- "files": [
21
- "bin",
22
- "README.md"
23
- ]
1
+ {
2
+ "name": "rushdeploy",
3
+ "version": "1.0.8",
4
+ "description": "CLI tool to manage your self-hosted RushDeploy PaaS account.",
5
+ "main": "bin/index.js",
6
+ "bin": {
7
+ "rushdeploy": "bin/index.js"
8
+ },
9
+ "type": "commonjs",
10
+ "scripts": {
11
+ "start": "node bin/index.js"
12
+ },
13
+ "keywords": [
14
+ "rushdeploy",
15
+ "paas",
16
+ "cli"
17
+ ],
18
+ "author": "RushDeploy Team",
19
+ "license": "MIT",
20
+ "files": [
21
+ "bin",
22
+ "README.md"
23
+ ]
24
24
  }