@simplens/onboard 1.0.4 → 1.0.6
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 +43 -9
- package/dist/__tests__/infra-prompts.test.js +3 -1
- package/dist/__tests__/infra-prompts.test.js.map +1 -1
- package/dist/__tests__/infra.test.js +13 -0
- package/dist/__tests__/infra.test.js.map +1 -1
- package/dist/__tests__/validators.test.js +21 -1
- package/dist/__tests__/validators.test.js.map +1 -1
- package/dist/config/constants.d.ts.map +1 -1
- package/dist/config/constants.js +0 -1
- package/dist/config/constants.js.map +1 -1
- package/dist/env-config.d.ts +1 -1
- package/dist/env-config.d.ts.map +1 -1
- package/dist/env-config.js +46 -6
- package/dist/env-config.js.map +1 -1
- package/dist/index.js +135 -19
- package/dist/index.js.map +1 -1
- package/dist/infra.d.ts +12 -3
- package/dist/infra.d.ts.map +1 -1
- package/dist/infra.js +95 -23
- package/dist/infra.js.map +1 -1
- package/dist/services.d.ts +12 -0
- package/dist/services.d.ts.map +1 -1
- package/dist/services.js +50 -0
- package/dist/services.js.map +1 -1
- package/dist/templates.d.ts +5 -1
- package/dist/templates.d.ts.map +1 -1
- package/dist/templates.js +66 -1
- package/dist/templates.js.map +1 -1
- package/dist/types/domain.d.ts +6 -0
- package/dist/types/domain.d.ts.map +1 -1
- package/dist/validators.d.ts +9 -0
- package/dist/validators.d.ts.map +1 -1
- package/dist/validators.js +38 -0
- package/dist/validators.js.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/infra-prompts.test.ts +3 -1
- package/src/__tests__/infra.test.ts +15 -0
- package/src/__tests__/validators.test.ts +27 -1
- package/src/config/constants.ts +0 -1
- package/src/env-config.ts +51 -6
- package/src/index.ts +145 -18
- package/src/infra.ts +120 -24
- package/src/services.ts +72 -0
- package/src/templates.ts +70 -1
- package/src/types/domain.ts +6 -0
- package/src/validators.ts +51 -0
package/README.md
CHANGED
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
- 🐧 **OS-Aware Configuration** - Automatically detects and configures for Windows, Linux, or macOS
|
|
14
14
|
- ⚙️ **Smart Environment Config** - Default or interactive mode for environment variables
|
|
15
15
|
- 🔌 **Plugin Management** - Browse and install official SimpleNS plugins
|
|
16
|
+
- 🔐 **Optional SSL Setup** - Automatic Let's Encrypt setup with Dockerized Certbot (Windows/macOS/Linux)
|
|
16
17
|
- 🚀 **Service Orchestration** - Automatic health checks and sequential service startup
|
|
17
18
|
- 📊 **Service Dashboard** - View all running services and their access URLs
|
|
18
19
|
|
|
@@ -26,10 +27,10 @@
|
|
|
26
27
|
|
|
27
28
|
```bash
|
|
28
29
|
# Run directly with npx (recommended)
|
|
29
|
-
npx @simplens/onboard
|
|
30
|
+
npx-y @simplens/onboard@latest
|
|
30
31
|
|
|
31
32
|
# Or install globally
|
|
32
|
-
npm install -g @simplens/onboard
|
|
33
|
+
npm install -g @simplens/onboard@latest
|
|
33
34
|
simplens-onboard
|
|
34
35
|
```
|
|
35
36
|
|
|
@@ -78,7 +79,7 @@ npx @simplens/onboard --infra --dir /path/to/setup
|
|
|
78
79
|
|
|
79
80
|
```bash
|
|
80
81
|
# Complete setup with all options via CLI (no prompts)
|
|
81
|
-
npx @simplens/onboard --full --infra mongo kafka
|
|
82
|
+
npx @simplens/onboard --full --infra mongo kafka redis nginx --env default --base-path /dashboard --plugin @simplens/mock @simplens/nodemailer-gmail --no-output
|
|
82
83
|
```
|
|
83
84
|
|
|
84
85
|
This mode:
|
|
@@ -86,6 +87,7 @@ This mode:
|
|
|
86
87
|
- Requires `--env <mode>` to specify environment mode
|
|
87
88
|
- **Auto-generates secure credentials** for NS_API_KEY, AUTH_SECRET, and ADMIN_PASSWORD
|
|
88
89
|
- **Auto-generates placeholder credentials** for plugins
|
|
90
|
+
- **Auto-generates version values** for CORE_VERSION and DASHBOARD_VERSION
|
|
89
91
|
- All other options are optional with sensible defaults
|
|
90
92
|
- Services are not auto-started (use `docker-compose up -d` manually)
|
|
91
93
|
|
|
@@ -106,18 +108,23 @@ The CLI will display a security notice with all credentials that need to be upda
|
|
|
106
108
|
| `--env <mode>` | Environment setup mode: `default` or `interactive` | Prompted |
|
|
107
109
|
| `--dir <path>` | Target directory for setup files | Current directory |
|
|
108
110
|
| `--base-path <path>` | Dashboard base path (example: `/dashboard`) | Empty (root) |
|
|
111
|
+
| `--core-version <version>` | Override `CORE_VERSION` in generated `.env` (primarily for `--full`) | `latest` |
|
|
112
|
+
| `--dashboard-version <version>` | Override `DASHBOARD_VERSION` in generated `.env` (primarily for `--full`) | `latest` |
|
|
109
113
|
| `--plugin [plugins...]` | Plugins to install (e.g., `@simplens/mock @simplens/nodemailer-gmail`) | Prompted |
|
|
114
|
+
| `--ssl` | Enable optional SSL automation with Certbot | `false` |
|
|
115
|
+
| `--ssl-domain <domain>` | Public domain for SSL cert (required with `--ssl` in `--full`) | Prompted |
|
|
116
|
+
| `--ssl-email <email>` | Email for Let's Encrypt registration (required with `--ssl` in `--full`) | Prompted |
|
|
110
117
|
| `--no-output` | Suppress all console output (silent mode) | `false` |
|
|
111
118
|
|
|
112
119
|
### Valid Infrastructure Services
|
|
113
120
|
|
|
114
121
|
- `mongo` - MongoDB database
|
|
115
122
|
- `kafka` - Apache Kafka message queue
|
|
116
|
-
- `kafka-ui` - Kafka UI dashboard
|
|
123
|
+
- `kafka-ui` - Kafka UI dashboard (optional)
|
|
117
124
|
- `redis` - Redis cache
|
|
118
|
-
- `nginx` - Nginx reverse proxy
|
|
119
|
-
- `loki` - Loki log aggregation
|
|
120
|
-
- `grafana` - Grafana observability dashboard
|
|
125
|
+
- `nginx` - Nginx reverse proxy (optional, Required only is BASE_PATH or SSL is configured)
|
|
126
|
+
- `loki` - Loki log aggregation (optional)
|
|
127
|
+
- `grafana` - Grafana observability dashboard (optional)
|
|
121
128
|
|
|
122
129
|
## Workflow
|
|
123
130
|
|
|
@@ -153,12 +160,18 @@ The CLI will display a security notice with all credentials that need to be upda
|
|
|
153
160
|
- Start application services
|
|
154
161
|
- Display service URLs and status
|
|
155
162
|
|
|
163
|
+
6. **Optional SSL Automation** (if enabled)
|
|
164
|
+
- Auto-enables Nginx if required
|
|
165
|
+
- Issues cert via Dockerized Certbot (`http-01` webroot challenge)
|
|
166
|
+
- Configures auto-renew service and Nginx reload
|
|
167
|
+
|
|
156
168
|
## Generated Files
|
|
157
169
|
|
|
158
170
|
- `docker-compose.infra.yaml` - Infrastructure services (if `--infra` used)
|
|
159
171
|
- `docker-compose.yaml` - Application services
|
|
160
172
|
- `.env` - Environment variables and credentials
|
|
161
173
|
- `simplens.config.yaml` - Plugin configuration
|
|
174
|
+
- `nginx.conf` - Generated reverse proxy config (HTTP/HTTPS based on options)
|
|
162
175
|
|
|
163
176
|
## Service URLs
|
|
164
177
|
|
|
@@ -210,11 +223,14 @@ npx @simplens/onboard --infra --dir ~/simplens-dev
|
|
|
210
223
|
# Full automated setup with specific services and plugins
|
|
211
224
|
npx @simplens/onboard \
|
|
212
225
|
--full \
|
|
213
|
-
--infra mongo kafka
|
|
226
|
+
--infra mongo kafka redis nginx \
|
|
214
227
|
--env default \
|
|
228
|
+
--core-version 1.2 \
|
|
229
|
+
--dashboard-version 1.2 \
|
|
215
230
|
--base-path /dashboard \
|
|
216
231
|
--plugin @simplens/mock @simplens/nodemailer-gmail \
|
|
217
|
-
--dir ./my-simplens-setup
|
|
232
|
+
--dir ./my-simplens-setup \
|
|
233
|
+
--no-output
|
|
218
234
|
|
|
219
235
|
# No prompts - everything configured via CLI
|
|
220
236
|
# Services not auto-started in full mode
|
|
@@ -228,6 +244,8 @@ npx @simplens/onboard \
|
|
|
228
244
|
npx @simplens/onboard \
|
|
229
245
|
--full \
|
|
230
246
|
--env default \
|
|
247
|
+
--core-version 1.2 \
|
|
248
|
+
--dashboard-version 1.2 \
|
|
231
249
|
--dir /app/simplens
|
|
232
250
|
|
|
233
251
|
# Then start services in CI:
|
|
@@ -235,6 +253,22 @@ cd /app/simplens
|
|
|
235
253
|
docker-compose up -d
|
|
236
254
|
```
|
|
237
255
|
|
|
256
|
+
### Full Setup With SSL Automation
|
|
257
|
+
|
|
258
|
+
```bash
|
|
259
|
+
npx @simplens/onboard \
|
|
260
|
+
--full \
|
|
261
|
+
--infra mongo kafka redis \
|
|
262
|
+
--env default \
|
|
263
|
+
--ssl \
|
|
264
|
+
--ssl-domain app.example.com \
|
|
265
|
+
--ssl-email ops@example.com
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
Notes:
|
|
269
|
+
- Your domain DNS must point to the host running onboarding.
|
|
270
|
+
- Ports 80 and 443 must be publicly reachable for Let's Encrypt validation.
|
|
271
|
+
|
|
238
272
|
### Silent Mode (No Console Output)
|
|
239
273
|
|
|
240
274
|
```bash
|
|
@@ -22,11 +22,13 @@ describe('promptInfraServicesWithBasePath', () => {
|
|
|
22
22
|
it('includes nginx when allowNginx is true', async () => {
|
|
23
23
|
const mockMultiselect = vi.mocked(multiselect);
|
|
24
24
|
mockMultiselect.mockResolvedValue(['mongo', 'redis', 'nginx']);
|
|
25
|
-
const result = await promptInfraServicesWithBasePath({ allowNginx: true });
|
|
25
|
+
const result = await promptInfraServicesWithBasePath({ allowNginx: true, defaultNginx: true });
|
|
26
26
|
// Should include nginx in options
|
|
27
27
|
const callArgs = mockMultiselect.mock.calls[0][0];
|
|
28
28
|
const values = callArgs.options.map((o) => o.value);
|
|
29
29
|
expect(values).toContain('nginx');
|
|
30
|
+
expect(callArgs.initialValues).toContain('nginx');
|
|
31
|
+
expect(callArgs.initialValues).not.toContain('kafka-ui');
|
|
30
32
|
expect(result).toContain('nginx');
|
|
31
33
|
});
|
|
32
34
|
it('excludes nginx when allowNginx is false', async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infra-prompts.test.js","sourceRoot":"","sources":["../../src/__tests__/infra-prompts.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAE9D,sBAAsB;AACtB,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7B,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE;IACpB,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QAClB,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;QACb,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;KACnB,CAAC,CAAC;CACN,CAAC,CAAC,CAAC;AAEJ,wBAAwB;AACxB,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;IACvB,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE;CACxB,CAAC,CAAC,CAAC;AAEJ,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAC;AAE9D,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC7C,UAAU,CAAC,GAAG,EAAE;QACZ,EAAE,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,eAAe,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/C,eAAe,CAAC,iBAAiB,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAE/D,MAAM,MAAM,GAAG,MAAM,+BAA+B,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"infra-prompts.test.js","sourceRoot":"","sources":["../../src/__tests__/infra-prompts.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAE9D,sBAAsB;AACtB,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7B,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE;IACpB,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QAClB,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;QACb,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;KACnB,CAAC,CAAC;CACN,CAAC,CAAC,CAAC;AAEJ,wBAAwB;AACxB,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;IACvB,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE;CACxB,CAAC,CAAC,CAAC;AAEJ,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAC;AAE9D,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC7C,UAAU,CAAC,GAAG,EAAE;QACZ,EAAE,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,eAAe,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/C,eAAe,CAAC,iBAAiB,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAE/D,MAAM,MAAM,GAAG,MAAM,+BAA+B,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QAE/F,kCAAkC;QAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAQ,CAAC;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAEzD,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,eAAe,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/C,eAAe,CAAC,iBAAiB,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAEtD,MAAM,MAAM,GAAG,MAAM,+BAA+B,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QAE5E,sCAAsC;QACtC,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAQ,CAAC;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAEtC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -10,5 +10,18 @@ describe('infra app compose generation', () => {
|
|
|
10
10
|
expect(compose).toContain(' nginx:');
|
|
11
11
|
expect(compose).toContain('./nginx.conf:/etc/nginx/conf.d/default.conf:ro');
|
|
12
12
|
});
|
|
13
|
+
it('does not include certbot services when ssl is disabled', () => {
|
|
14
|
+
const compose = buildAppComposeContent(true, { includeSsl: false });
|
|
15
|
+
expect(compose).not.toContain(' certbot:');
|
|
16
|
+
expect(compose).not.toContain(' certbot-renew:');
|
|
17
|
+
});
|
|
18
|
+
it('includes certbot services and volumes when ssl is enabled', () => {
|
|
19
|
+
const compose = buildAppComposeContent(false, { includeSsl: true });
|
|
20
|
+
expect(compose).toContain(' nginx:');
|
|
21
|
+
expect(compose).toContain(' certbot:');
|
|
22
|
+
expect(compose).toContain(' certbot-renew:');
|
|
23
|
+
expect(compose).toContain('certbot-etc:');
|
|
24
|
+
expect(compose).toContain('certbot-www:');
|
|
25
|
+
});
|
|
13
26
|
});
|
|
14
27
|
//# sourceMappingURL=infra.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infra.test.js","sourceRoot":"","sources":["../../src/__tests__/infra.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC5C,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC3C,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gDAAgD,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"infra.test.js","sourceRoot":"","sources":["../../src/__tests__/infra.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC5C,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC3C,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gDAAgD,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAC9D,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QACpE,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC5C,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACjE,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC1C,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
2
|
-
import { checkDockerInstalled, checkDockerRunning, detectOS, validateEnvValue } from '../validators.js';
|
|
2
|
+
import { checkDockerInstalled, checkDockerRunning, detectOS, validateEnvValue, validatePublicDomain, validateEmailAddress } from '../validators.js';
|
|
3
3
|
import { DockerNotInstalledError, DockerNotRunningError, DockerPermissionError } from '../types/errors.js';
|
|
4
4
|
// Mock execa
|
|
5
5
|
vi.mock('execa', () => ({
|
|
@@ -144,5 +144,25 @@ describe('validators', () => {
|
|
|
144
144
|
});
|
|
145
145
|
});
|
|
146
146
|
});
|
|
147
|
+
describe('validatePublicDomain', () => {
|
|
148
|
+
it('accepts valid public domains', () => {
|
|
149
|
+
expect(validatePublicDomain('example.com')).toBe(true);
|
|
150
|
+
expect(validatePublicDomain('app.example.com')).toBe(true);
|
|
151
|
+
});
|
|
152
|
+
it('rejects urls or malformed values', () => {
|
|
153
|
+
expect(validatePublicDomain('https://example.com')).not.toBe(true);
|
|
154
|
+
expect(validatePublicDomain('example')).not.toBe(true);
|
|
155
|
+
expect(validatePublicDomain('example.com/path')).not.toBe(true);
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
describe('validateEmailAddress', () => {
|
|
159
|
+
it('accepts valid email addresses', () => {
|
|
160
|
+
expect(validateEmailAddress('admin@example.com')).toBe(true);
|
|
161
|
+
});
|
|
162
|
+
it('rejects invalid email values', () => {
|
|
163
|
+
expect(validateEmailAddress('admin@')).not.toBe(true);
|
|
164
|
+
expect(validateEmailAddress('not-an-email')).not.toBe(true);
|
|
165
|
+
});
|
|
166
|
+
});
|
|
147
167
|
});
|
|
148
168
|
//# sourceMappingURL=validators.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validators.test.js","sourceRoot":"","sources":["../../src/__tests__/validators.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EACH,oBAAoB,EACpB,kBAAkB,EAClB,QAAQ,EAER,gBAAgB,
|
|
1
|
+
{"version":3,"file":"validators.test.js","sourceRoot":"","sources":["../../src/__tests__/validators.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;CAShB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;CAShB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,iBAAiB,UAS7B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;CAKb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,KAAK;;;;;;CAMR,CAAC;AAEX;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,OAAO,aAAa,EAAE,IAAI,GAAE,MAAoB,GAAG,MAAM,CAErG;AAED;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;CAK1B,CAAC"}
|
package/dist/config/constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IACzB,GAAG,EAAE,IAAI;IACT,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,IAAI;CACJ,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,WAAW,EAAE,EAAE;IACf,cAAc,EAAE,IAAI;IACpB,UAAU,EAAE,KAAK;CACX,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC3B,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,MAAM;CACV,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC7B,YAAY;IACZ,WAAW;IACX,SAAS;IACT,WAAW;IACX,aAAa;IACb,gBAAgB;IAChB,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IACzB,GAAG,EAAE,IAAI;IACT,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,IAAI;CACJ,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,WAAW,EAAE,EAAE;IACf,cAAc,EAAE,IAAI;IACpB,UAAU,EAAE,KAAK;CACX,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC3B,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,MAAM;CACV,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC7B,YAAY;IACZ,WAAW;IACX,SAAS;IACT,WAAW;IACX,aAAa;IACb,gBAAgB;IAChB,cAAc;IACd,mBAAmB;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB,mBAAmB,EAAE,CAAC;IACtB,kBAAkB,EAAE,CAAC;IACrB,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,KAAK;CACT,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACjB,oBAAoB,EAAE,2BAA2B;IACjD,kBAAkB,EAAE,qBAAqB;IACzC,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,sBAAsB;IACnC,SAAS,EAAE,mBAAmB;CACxB,CAAC;AAEX;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,OAAmC,EAAE,OAAe,WAAW;IACzF,OAAO,UAAU,IAAI,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACnC,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IAChB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;IACpB,EAAE,EAAE,CAAC,IAAI,CAAC;CACJ,CAAC"}
|
package/dist/env-config.d.ts
CHANGED
|
@@ -36,7 +36,7 @@ export declare function loadEnvExample(): Promise<EnvVariable[]>;
|
|
|
36
36
|
* @param fullMode - If true, auto-generate critical values without prompting
|
|
37
37
|
* @returns Map of environment variable keys to values
|
|
38
38
|
*/
|
|
39
|
-
export declare function promptEnvVariables(mode: 'default' | 'interactive', infraServices: string[], basePath?: string, fullMode?: boolean): Promise<Map<string, string>>;
|
|
39
|
+
export declare function promptEnvVariables(mode: 'default' | 'interactive', infraServices: string[], basePath?: string, fullMode?: boolean, envOverrides?: Partial<Record<'CORE_VERSION' | 'DASHBOARD_VERSION', string>>): Promise<Map<string, string>>;
|
|
40
40
|
/**
|
|
41
41
|
* Generate .env file from variables
|
|
42
42
|
*/
|
package/dist/env-config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-config.d.ts","sourceRoot":"","sources":["../src/env-config.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,eAAO,MAAM,iBAAiB,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"env-config.d.ts","sourceRoot":"","sources":["../src/env-config.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAepC;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,GAAE,MAAW,GAAG,MAAM,CAEhE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAcxD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAoB7D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,YAAY,GAAE,MAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAc9F;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAsG7D;AA0CD;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACpC,IAAI,EAAE,SAAS,GAAG,aAAa,EAC/B,aAAa,EAAE,MAAM,EAAE,EACvB,QAAQ,GAAE,MAA0B,EACpC,QAAQ,GAAE,OAAe,EACzB,YAAY,GAAE,OAAO,CAAC,MAAM,CAAC,cAAc,GAAG,mBAAmB,EAAE,MAAM,CAAC,CAAM,GACjF,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CA8K9B;AAqBD;;GAEG;AACH,wBAAsB,eAAe,CACjC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CAYf;AAED;;GAEG;AACH,wBAAsB,eAAe,CACjC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,OAAO,CAAC,IAAI,CAAC,CAgBf"}
|
package/dist/env-config.js
CHANGED
|
@@ -5,6 +5,17 @@ import path from 'path';
|
|
|
5
5
|
import crypto from 'crypto';
|
|
6
6
|
import { CRITICAL_ENV_KEYS } from './config/constants.js';
|
|
7
7
|
export const DEFAULT_BASE_PATH = '';
|
|
8
|
+
const AUTO_GENERATE_ON_EMPTY_KEYS = ['NS_API_KEY', 'AUTH_SECRET', 'CORE_VERSION', 'DASHBOARD_VERSION'];
|
|
9
|
+
function shouldAutoGenerateOnEmpty(key, fullMode) {
|
|
10
|
+
return !fullMode && AUTO_GENERATE_ON_EMPTY_KEYS.includes(key);
|
|
11
|
+
}
|
|
12
|
+
function resolveEnvAnswer(key, answer, fullMode) {
|
|
13
|
+
const value = typeof answer === 'string' ? answer : '';
|
|
14
|
+
if (!value.trim() && shouldAutoGenerateOnEmpty(key, fullMode)) {
|
|
15
|
+
return generateDefaultValue(key);
|
|
16
|
+
}
|
|
17
|
+
return value;
|
|
18
|
+
}
|
|
8
19
|
/**
|
|
9
20
|
* Generate a secure random string for credentials
|
|
10
21
|
*/
|
|
@@ -16,7 +27,7 @@ export function generateSecureRandom(length = 32) {
|
|
|
16
27
|
*/
|
|
17
28
|
export function generateDefaultValue(key) {
|
|
18
29
|
if (key === 'NS_API_KEY') {
|
|
19
|
-
return `
|
|
30
|
+
return `ns_${generateSecureRandom(48)}`;
|
|
20
31
|
}
|
|
21
32
|
if (key === 'AUTH_SECRET') {
|
|
22
33
|
return generateSecureRandom(64);
|
|
@@ -24,6 +35,9 @@ export function generateDefaultValue(key) {
|
|
|
24
35
|
if (key === 'ADMIN_PASSWORD') {
|
|
25
36
|
return `Admin${generateSecureRandom(16)}`;
|
|
26
37
|
}
|
|
38
|
+
if (key === 'CORE_VERSION' || key === 'DASHBOARD_VERSION') {
|
|
39
|
+
return `latest`;
|
|
40
|
+
}
|
|
27
41
|
return '';
|
|
28
42
|
}
|
|
29
43
|
/**
|
|
@@ -219,7 +233,7 @@ function parseEnvContent(content) {
|
|
|
219
233
|
* @param fullMode - If true, auto-generate critical values without prompting
|
|
220
234
|
* @returns Map of environment variable keys to values
|
|
221
235
|
*/
|
|
222
|
-
export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT_BASE_PATH, fullMode = false) {
|
|
236
|
+
export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT_BASE_PATH, fullMode = false, envOverrides = {}) {
|
|
223
237
|
logInfo('Configuring environment variables...');
|
|
224
238
|
const envVars = await loadEnvExample();
|
|
225
239
|
const result = new Map();
|
|
@@ -244,6 +258,13 @@ export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT
|
|
|
244
258
|
if (mode === 'default') {
|
|
245
259
|
// Use defaults, only prompt for critical values
|
|
246
260
|
for (const envVar of envVars) {
|
|
261
|
+
if (fullMode && envVar.key in envOverrides) {
|
|
262
|
+
const overrideValue = envOverrides[envVar.key];
|
|
263
|
+
if (overrideValue) {
|
|
264
|
+
result.set(envVar.key, overrideValue);
|
|
265
|
+
continue;
|
|
266
|
+
}
|
|
267
|
+
}
|
|
247
268
|
// Use auto-filled infra URLs
|
|
248
269
|
if (autoInfraUrls[envVar.key]) {
|
|
249
270
|
result.set(envVar.key, autoInfraUrls[envVar.key]);
|
|
@@ -280,6 +301,9 @@ export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT
|
|
|
280
301
|
answer = await password({
|
|
281
302
|
message: promptMessage,
|
|
282
303
|
validate: (input) => {
|
|
304
|
+
if (shouldAutoGenerateOnEmpty(envVar.key, fullMode) && !input) {
|
|
305
|
+
return undefined;
|
|
306
|
+
}
|
|
283
307
|
if (!input && envVar.required) {
|
|
284
308
|
return `${envVar.key} is required`;
|
|
285
309
|
}
|
|
@@ -291,8 +315,11 @@ export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT
|
|
|
291
315
|
answer = await text({
|
|
292
316
|
message: promptMessage,
|
|
293
317
|
placeholder: getSuggestedValue(envVar.key) || undefined,
|
|
294
|
-
defaultValue:
|
|
318
|
+
defaultValue: generateDefaultValue(envVar.key) || undefined,
|
|
295
319
|
validate: (input) => {
|
|
320
|
+
if (shouldAutoGenerateOnEmpty(envVar.key, fullMode) && !input) {
|
|
321
|
+
return undefined;
|
|
322
|
+
}
|
|
296
323
|
if (!input && envVar.required) {
|
|
297
324
|
return `${envVar.key} is required`;
|
|
298
325
|
}
|
|
@@ -301,7 +328,7 @@ export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT
|
|
|
301
328
|
});
|
|
302
329
|
}
|
|
303
330
|
handleCancel(answer);
|
|
304
|
-
result.set(envVar.key, answer);
|
|
331
|
+
result.set(envVar.key, resolveEnvAnswer(envVar.key, answer, fullMode));
|
|
305
332
|
}
|
|
306
333
|
}
|
|
307
334
|
}
|
|
@@ -310,6 +337,13 @@ export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT
|
|
|
310
337
|
// Interactive mode: prompt for everything
|
|
311
338
|
logInfo('Interactive mode: You will be prompted for each environment variable.');
|
|
312
339
|
for (const envVar of envVars) {
|
|
340
|
+
if (fullMode && envVar.key in envOverrides) {
|
|
341
|
+
const overrideValue = envOverrides[envVar.key];
|
|
342
|
+
if (overrideValue) {
|
|
343
|
+
result.set(envVar.key, overrideValue);
|
|
344
|
+
continue;
|
|
345
|
+
}
|
|
346
|
+
}
|
|
313
347
|
const defaultValue = autoInfraUrls[envVar.key] || envVar.value || getSuggestedValue(envVar.key);
|
|
314
348
|
// BASE_PATH is collected upfront in onboarding flow
|
|
315
349
|
if (envVar.key === 'BASE_PATH') {
|
|
@@ -327,6 +361,9 @@ export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT
|
|
|
327
361
|
answer = await password({
|
|
328
362
|
message: promptMessage,
|
|
329
363
|
validate: (input) => {
|
|
364
|
+
if (shouldAutoGenerateOnEmpty(envVar.key, fullMode) && !input) {
|
|
365
|
+
return undefined;
|
|
366
|
+
}
|
|
330
367
|
if (!input && envVar.required) {
|
|
331
368
|
return `${envVar.key} is required`;
|
|
332
369
|
}
|
|
@@ -340,6 +377,9 @@ export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT
|
|
|
340
377
|
placeholder: defaultValue || undefined,
|
|
341
378
|
defaultValue: defaultValue || undefined,
|
|
342
379
|
validate: (input) => {
|
|
380
|
+
if (shouldAutoGenerateOnEmpty(envVar.key, fullMode) && !input) {
|
|
381
|
+
return undefined;
|
|
382
|
+
}
|
|
343
383
|
if (!input && envVar.required) {
|
|
344
384
|
return `${envVar.key} is required`;
|
|
345
385
|
}
|
|
@@ -348,7 +388,7 @@ export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT
|
|
|
348
388
|
});
|
|
349
389
|
}
|
|
350
390
|
handleCancel(answer);
|
|
351
|
-
result.set(envVar.key, answer);
|
|
391
|
+
result.set(envVar.key, resolveEnvAnswer(envVar.key, answer, fullMode));
|
|
352
392
|
}
|
|
353
393
|
}
|
|
354
394
|
logSuccess('Environment variables configured');
|
|
@@ -359,7 +399,7 @@ export async function promptEnvVariables(mode, infraServices, basePath = DEFAULT
|
|
|
359
399
|
*/
|
|
360
400
|
function getSuggestedValue(key) {
|
|
361
401
|
if (key === 'NS_API_KEY' || key === 'AUTH_SECRET') {
|
|
362
|
-
return `Replace with: openssl rand -base64 32`;
|
|
402
|
+
return `Replace with: openssl rand -base64 32 (or) Press <Enter> to auto-generate value`;
|
|
363
403
|
}
|
|
364
404
|
if (key === 'NODE_ENV') {
|
|
365
405
|
return 'production';
|
package/dist/env-config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-config.js","sourceRoot":"","sources":["../src/env-config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"env-config.js","sourceRoot":"","sources":["../src/env-config.ts"],"names":[],"mappings":"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"}
|