shyp 0.1.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.
Files changed (123) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +218 -0
  3. package/dist/cli.d.ts +3 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +64 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/commands/add.d.ts +9 -0
  8. package/dist/commands/add.d.ts.map +1 -0
  9. package/dist/commands/add.js +69 -0
  10. package/dist/commands/add.js.map +1 -0
  11. package/dist/commands/deploy.d.ts +4 -0
  12. package/dist/commands/deploy.d.ts.map +1 -0
  13. package/dist/commands/deploy.js +104 -0
  14. package/dist/commands/deploy.js.map +1 -0
  15. package/dist/commands/doctor.d.ts +2 -0
  16. package/dist/commands/doctor.d.ts.map +1 -0
  17. package/dist/commands/doctor.js +97 -0
  18. package/dist/commands/doctor.js.map +1 -0
  19. package/dist/commands/index.d.ts +10 -0
  20. package/dist/commands/index.d.ts.map +1 -0
  21. package/dist/commands/index.js +10 -0
  22. package/dist/commands/index.js.map +1 -0
  23. package/dist/commands/init.d.ts +4 -0
  24. package/dist/commands/init.d.ts.map +1 -0
  25. package/dist/commands/init.js +150 -0
  26. package/dist/commands/init.js.map +1 -0
  27. package/dist/commands/logs.d.ts +5 -0
  28. package/dist/commands/logs.d.ts.map +1 -0
  29. package/dist/commands/logs.js +56 -0
  30. package/dist/commands/logs.js.map +1 -0
  31. package/dist/commands/ports.d.ts +2 -0
  32. package/dist/commands/ports.d.ts.map +1 -0
  33. package/dist/commands/ports.js +73 -0
  34. package/dist/commands/ports.js.map +1 -0
  35. package/dist/commands/start.d.ts +2 -0
  36. package/dist/commands/start.d.ts.map +1 -0
  37. package/dist/commands/start.js +11 -0
  38. package/dist/commands/start.js.map +1 -0
  39. package/dist/commands/status.d.ts +2 -0
  40. package/dist/commands/status.d.ts.map +1 -0
  41. package/dist/commands/status.js +73 -0
  42. package/dist/commands/status.js.map +1 -0
  43. package/dist/commands/sync.d.ts +4 -0
  44. package/dist/commands/sync.d.ts.map +1 -0
  45. package/dist/commands/sync.js +95 -0
  46. package/dist/commands/sync.js.map +1 -0
  47. package/dist/index.d.ts +4 -0
  48. package/dist/index.d.ts.map +1 -0
  49. package/dist/index.js +6 -0
  50. package/dist/index.js.map +1 -0
  51. package/dist/lib/config.d.ts +10 -0
  52. package/dist/lib/config.d.ts.map +1 -0
  53. package/dist/lib/config.js +116 -0
  54. package/dist/lib/config.js.map +1 -0
  55. package/dist/lib/deploy.d.ts +12 -0
  56. package/dist/lib/deploy.d.ts.map +1 -0
  57. package/dist/lib/deploy.js +288 -0
  58. package/dist/lib/deploy.js.map +1 -0
  59. package/dist/lib/git.d.ts +24 -0
  60. package/dist/lib/git.d.ts.map +1 -0
  61. package/dist/lib/git.js +82 -0
  62. package/dist/lib/git.js.map +1 -0
  63. package/dist/lib/index.d.ts +7 -0
  64. package/dist/lib/index.d.ts.map +1 -0
  65. package/dist/lib/index.js +7 -0
  66. package/dist/lib/index.js.map +1 -0
  67. package/dist/lib/nginx.d.ts +16 -0
  68. package/dist/lib/nginx.d.ts.map +1 -0
  69. package/dist/lib/nginx.js +312 -0
  70. package/dist/lib/nginx.js.map +1 -0
  71. package/dist/lib/pm2.d.ts +25 -0
  72. package/dist/lib/pm2.d.ts.map +1 -0
  73. package/dist/lib/pm2.js +106 -0
  74. package/dist/lib/pm2.js.map +1 -0
  75. package/dist/lib/state.d.ts +12 -0
  76. package/dist/lib/state.d.ts.map +1 -0
  77. package/dist/lib/state.js +112 -0
  78. package/dist/lib/state.js.map +1 -0
  79. package/dist/schemas/app.d.ts +272 -0
  80. package/dist/schemas/app.d.ts.map +1 -0
  81. package/dist/schemas/app.js +79 -0
  82. package/dist/schemas/app.js.map +1 -0
  83. package/dist/schemas/config.d.ts +508 -0
  84. package/dist/schemas/config.d.ts.map +1 -0
  85. package/dist/schemas/config.js +62 -0
  86. package/dist/schemas/config.js.map +1 -0
  87. package/dist/schemas/engine.d.ts +772 -0
  88. package/dist/schemas/engine.d.ts.map +1 -0
  89. package/dist/schemas/engine.js +93 -0
  90. package/dist/schemas/engine.js.map +1 -0
  91. package/dist/schemas/index.d.ts +5 -0
  92. package/dist/schemas/index.d.ts.map +1 -0
  93. package/dist/schemas/index.js +5 -0
  94. package/dist/schemas/index.js.map +1 -0
  95. package/dist/schemas/state.d.ts +416 -0
  96. package/dist/schemas/state.d.ts.map +1 -0
  97. package/dist/schemas/state.js +56 -0
  98. package/dist/schemas/state.js.map +1 -0
  99. package/dist/server/index.d.ts +2 -0
  100. package/dist/server/index.d.ts.map +1 -0
  101. package/dist/server/index.js +51 -0
  102. package/dist/server/index.js.map +1 -0
  103. package/dist/server/webhook.d.ts +6 -0
  104. package/dist/server/webhook.d.ts.map +1 -0
  105. package/dist/server/webhook.js +163 -0
  106. package/dist/server/webhook.js.map +1 -0
  107. package/dist/utils/index.d.ts +4 -0
  108. package/dist/utils/index.d.ts.map +1 -0
  109. package/dist/utils/index.js +4 -0
  110. package/dist/utils/index.js.map +1 -0
  111. package/dist/utils/logger.d.ts +17 -0
  112. package/dist/utils/logger.d.ts.map +1 -0
  113. package/dist/utils/logger.js +25 -0
  114. package/dist/utils/logger.js.map +1 -0
  115. package/dist/utils/paths.d.ts +37 -0
  116. package/dist/utils/paths.d.ts.map +1 -0
  117. package/dist/utils/paths.js +35 -0
  118. package/dist/utils/paths.js.map +1 -0
  119. package/dist/utils/spinner.d.ts +4 -0
  120. package/dist/utils/spinner.d.ts.map +1 -0
  121. package/dist/utils/spinner.js +20 -0
  122. package/dist/utils/spinner.js.map +1 -0
  123. package/package.json +58 -0
@@ -0,0 +1,508 @@
1
+ import { z } from 'zod';
2
+ export declare const PortRangeSchema: z.ZodObject<{
3
+ start: z.ZodNumber;
4
+ end: z.ZodNumber;
5
+ }, "strip", z.ZodTypeAny, {
6
+ start: number;
7
+ end: number;
8
+ }, {
9
+ start: number;
10
+ end: number;
11
+ }>;
12
+ export declare const SSLConfigSchema: z.ZodObject<{
13
+ enabled: z.ZodDefault<z.ZodBoolean>;
14
+ email: z.ZodString;
15
+ auto_renew: z.ZodDefault<z.ZodBoolean>;
16
+ }, "strip", z.ZodTypeAny, {
17
+ enabled: boolean;
18
+ email: string;
19
+ auto_renew: boolean;
20
+ }, {
21
+ email: string;
22
+ enabled?: boolean | undefined;
23
+ auto_renew?: boolean | undefined;
24
+ }>;
25
+ export declare const DefaultsSchema: z.ZodObject<{
26
+ node_version: z.ZodDefault<z.ZodString>;
27
+ build_timeout: z.ZodDefault<z.ZodNumber>;
28
+ health_check_timeout: z.ZodDefault<z.ZodNumber>;
29
+ max_memory: z.ZodDefault<z.ZodString>;
30
+ instances: z.ZodDefault<z.ZodNumber>;
31
+ }, "strip", z.ZodTypeAny, {
32
+ instances: number;
33
+ node_version: string;
34
+ build_timeout: number;
35
+ health_check_timeout: number;
36
+ max_memory: string;
37
+ }, {
38
+ instances?: number | undefined;
39
+ node_version?: string | undefined;
40
+ build_timeout?: number | undefined;
41
+ health_check_timeout?: number | undefined;
42
+ max_memory?: string | undefined;
43
+ }>;
44
+ export declare const GitConfigSchema: z.ZodObject<{
45
+ provider: z.ZodDefault<z.ZodEnum<["github", "gitlab", "bitbucket"]>>;
46
+ ssh_key: z.ZodOptional<z.ZodString>;
47
+ }, "strip", z.ZodTypeAny, {
48
+ provider: "github" | "gitlab" | "bitbucket";
49
+ ssh_key?: string | undefined;
50
+ }, {
51
+ provider?: "github" | "gitlab" | "bitbucket" | undefined;
52
+ ssh_key?: string | undefined;
53
+ }>;
54
+ export declare const DeploymentConfigSchema: z.ZodObject<{
55
+ keep_releases: z.ZodDefault<z.ZodNumber>;
56
+ health_check_retries: z.ZodDefault<z.ZodNumber>;
57
+ rollback_on_failure: z.ZodDefault<z.ZodBoolean>;
58
+ }, "strip", z.ZodTypeAny, {
59
+ keep_releases: number;
60
+ health_check_retries: number;
61
+ rollback_on_failure: boolean;
62
+ }, {
63
+ keep_releases?: number | undefined;
64
+ health_check_retries?: number | undefined;
65
+ rollback_on_failure?: boolean | undefined;
66
+ }>;
67
+ export declare const ServerConfigSchema: z.ZodObject<{
68
+ webhook_port: z.ZodDefault<z.ZodNumber>;
69
+ webhook_secret: z.ZodOptional<z.ZodString>;
70
+ port_ranges: z.ZodOptional<z.ZodObject<{
71
+ standard: z.ZodDefault<z.ZodObject<{
72
+ start: z.ZodNumber;
73
+ end: z.ZodNumber;
74
+ }, "strip", z.ZodTypeAny, {
75
+ start: number;
76
+ end: number;
77
+ }, {
78
+ start: number;
79
+ end: number;
80
+ }>>;
81
+ games: z.ZodDefault<z.ZodObject<{
82
+ start: z.ZodNumber;
83
+ end: z.ZodNumber;
84
+ }, "strip", z.ZodTypeAny, {
85
+ start: number;
86
+ end: number;
87
+ }, {
88
+ start: number;
89
+ end: number;
90
+ }>>;
91
+ special: z.ZodDefault<z.ZodObject<{
92
+ start: z.ZodNumber;
93
+ end: z.ZodNumber;
94
+ }, "strip", z.ZodTypeAny, {
95
+ start: number;
96
+ end: number;
97
+ }, {
98
+ start: number;
99
+ end: number;
100
+ }>>;
101
+ }, "strip", z.ZodTypeAny, {
102
+ standard: {
103
+ start: number;
104
+ end: number;
105
+ };
106
+ games: {
107
+ start: number;
108
+ end: number;
109
+ };
110
+ special: {
111
+ start: number;
112
+ end: number;
113
+ };
114
+ }, {
115
+ standard?: {
116
+ start: number;
117
+ end: number;
118
+ } | undefined;
119
+ games?: {
120
+ start: number;
121
+ end: number;
122
+ } | undefined;
123
+ special?: {
124
+ start: number;
125
+ end: number;
126
+ } | undefined;
127
+ }>>;
128
+ ssl: z.ZodOptional<z.ZodObject<{
129
+ enabled: z.ZodDefault<z.ZodBoolean>;
130
+ email: z.ZodString;
131
+ auto_renew: z.ZodDefault<z.ZodBoolean>;
132
+ }, "strip", z.ZodTypeAny, {
133
+ enabled: boolean;
134
+ email: string;
135
+ auto_renew: boolean;
136
+ }, {
137
+ email: string;
138
+ enabled?: boolean | undefined;
139
+ auto_renew?: boolean | undefined;
140
+ }>>;
141
+ defaults: z.ZodOptional<z.ZodObject<{
142
+ node_version: z.ZodDefault<z.ZodString>;
143
+ build_timeout: z.ZodDefault<z.ZodNumber>;
144
+ health_check_timeout: z.ZodDefault<z.ZodNumber>;
145
+ max_memory: z.ZodDefault<z.ZodString>;
146
+ instances: z.ZodDefault<z.ZodNumber>;
147
+ }, "strip", z.ZodTypeAny, {
148
+ instances: number;
149
+ node_version: string;
150
+ build_timeout: number;
151
+ health_check_timeout: number;
152
+ max_memory: string;
153
+ }, {
154
+ instances?: number | undefined;
155
+ node_version?: string | undefined;
156
+ build_timeout?: number | undefined;
157
+ health_check_timeout?: number | undefined;
158
+ max_memory?: string | undefined;
159
+ }>>;
160
+ }, "strip", z.ZodTypeAny, {
161
+ webhook_port: number;
162
+ webhook_secret?: string | undefined;
163
+ port_ranges?: {
164
+ standard: {
165
+ start: number;
166
+ end: number;
167
+ };
168
+ games: {
169
+ start: number;
170
+ end: number;
171
+ };
172
+ special: {
173
+ start: number;
174
+ end: number;
175
+ };
176
+ } | undefined;
177
+ ssl?: {
178
+ enabled: boolean;
179
+ email: string;
180
+ auto_renew: boolean;
181
+ } | undefined;
182
+ defaults?: {
183
+ instances: number;
184
+ node_version: string;
185
+ build_timeout: number;
186
+ health_check_timeout: number;
187
+ max_memory: string;
188
+ } | undefined;
189
+ }, {
190
+ webhook_port?: number | undefined;
191
+ webhook_secret?: string | undefined;
192
+ port_ranges?: {
193
+ standard?: {
194
+ start: number;
195
+ end: number;
196
+ } | undefined;
197
+ games?: {
198
+ start: number;
199
+ end: number;
200
+ } | undefined;
201
+ special?: {
202
+ start: number;
203
+ end: number;
204
+ } | undefined;
205
+ } | undefined;
206
+ ssl?: {
207
+ email: string;
208
+ enabled?: boolean | undefined;
209
+ auto_renew?: boolean | undefined;
210
+ } | undefined;
211
+ defaults?: {
212
+ instances?: number | undefined;
213
+ node_version?: string | undefined;
214
+ build_timeout?: number | undefined;
215
+ health_check_timeout?: number | undefined;
216
+ max_memory?: string | undefined;
217
+ } | undefined;
218
+ }>;
219
+ export declare const GlobalConfigSchema: z.ZodObject<{
220
+ version: z.ZodDefault<z.ZodNumber>;
221
+ server: z.ZodObject<{
222
+ webhook_port: z.ZodDefault<z.ZodNumber>;
223
+ webhook_secret: z.ZodOptional<z.ZodString>;
224
+ port_ranges: z.ZodOptional<z.ZodObject<{
225
+ standard: z.ZodDefault<z.ZodObject<{
226
+ start: z.ZodNumber;
227
+ end: z.ZodNumber;
228
+ }, "strip", z.ZodTypeAny, {
229
+ start: number;
230
+ end: number;
231
+ }, {
232
+ start: number;
233
+ end: number;
234
+ }>>;
235
+ games: z.ZodDefault<z.ZodObject<{
236
+ start: z.ZodNumber;
237
+ end: z.ZodNumber;
238
+ }, "strip", z.ZodTypeAny, {
239
+ start: number;
240
+ end: number;
241
+ }, {
242
+ start: number;
243
+ end: number;
244
+ }>>;
245
+ special: z.ZodDefault<z.ZodObject<{
246
+ start: z.ZodNumber;
247
+ end: z.ZodNumber;
248
+ }, "strip", z.ZodTypeAny, {
249
+ start: number;
250
+ end: number;
251
+ }, {
252
+ start: number;
253
+ end: number;
254
+ }>>;
255
+ }, "strip", z.ZodTypeAny, {
256
+ standard: {
257
+ start: number;
258
+ end: number;
259
+ };
260
+ games: {
261
+ start: number;
262
+ end: number;
263
+ };
264
+ special: {
265
+ start: number;
266
+ end: number;
267
+ };
268
+ }, {
269
+ standard?: {
270
+ start: number;
271
+ end: number;
272
+ } | undefined;
273
+ games?: {
274
+ start: number;
275
+ end: number;
276
+ } | undefined;
277
+ special?: {
278
+ start: number;
279
+ end: number;
280
+ } | undefined;
281
+ }>>;
282
+ ssl: z.ZodOptional<z.ZodObject<{
283
+ enabled: z.ZodDefault<z.ZodBoolean>;
284
+ email: z.ZodString;
285
+ auto_renew: z.ZodDefault<z.ZodBoolean>;
286
+ }, "strip", z.ZodTypeAny, {
287
+ enabled: boolean;
288
+ email: string;
289
+ auto_renew: boolean;
290
+ }, {
291
+ email: string;
292
+ enabled?: boolean | undefined;
293
+ auto_renew?: boolean | undefined;
294
+ }>>;
295
+ defaults: z.ZodOptional<z.ZodObject<{
296
+ node_version: z.ZodDefault<z.ZodString>;
297
+ build_timeout: z.ZodDefault<z.ZodNumber>;
298
+ health_check_timeout: z.ZodDefault<z.ZodNumber>;
299
+ max_memory: z.ZodDefault<z.ZodString>;
300
+ instances: z.ZodDefault<z.ZodNumber>;
301
+ }, "strip", z.ZodTypeAny, {
302
+ instances: number;
303
+ node_version: string;
304
+ build_timeout: number;
305
+ health_check_timeout: number;
306
+ max_memory: string;
307
+ }, {
308
+ instances?: number | undefined;
309
+ node_version?: string | undefined;
310
+ build_timeout?: number | undefined;
311
+ health_check_timeout?: number | undefined;
312
+ max_memory?: string | undefined;
313
+ }>>;
314
+ }, "strip", z.ZodTypeAny, {
315
+ webhook_port: number;
316
+ webhook_secret?: string | undefined;
317
+ port_ranges?: {
318
+ standard: {
319
+ start: number;
320
+ end: number;
321
+ };
322
+ games: {
323
+ start: number;
324
+ end: number;
325
+ };
326
+ special: {
327
+ start: number;
328
+ end: number;
329
+ };
330
+ } | undefined;
331
+ ssl?: {
332
+ enabled: boolean;
333
+ email: string;
334
+ auto_renew: boolean;
335
+ } | undefined;
336
+ defaults?: {
337
+ instances: number;
338
+ node_version: string;
339
+ build_timeout: number;
340
+ health_check_timeout: number;
341
+ max_memory: string;
342
+ } | undefined;
343
+ }, {
344
+ webhook_port?: number | undefined;
345
+ webhook_secret?: string | undefined;
346
+ port_ranges?: {
347
+ standard?: {
348
+ start: number;
349
+ end: number;
350
+ } | undefined;
351
+ games?: {
352
+ start: number;
353
+ end: number;
354
+ } | undefined;
355
+ special?: {
356
+ start: number;
357
+ end: number;
358
+ } | undefined;
359
+ } | undefined;
360
+ ssl?: {
361
+ email: string;
362
+ enabled?: boolean | undefined;
363
+ auto_renew?: boolean | undefined;
364
+ } | undefined;
365
+ defaults?: {
366
+ instances?: number | undefined;
367
+ node_version?: string | undefined;
368
+ build_timeout?: number | undefined;
369
+ health_check_timeout?: number | undefined;
370
+ max_memory?: string | undefined;
371
+ } | undefined;
372
+ }>;
373
+ git: z.ZodOptional<z.ZodObject<{
374
+ provider: z.ZodDefault<z.ZodEnum<["github", "gitlab", "bitbucket"]>>;
375
+ ssh_key: z.ZodOptional<z.ZodString>;
376
+ }, "strip", z.ZodTypeAny, {
377
+ provider: "github" | "gitlab" | "bitbucket";
378
+ ssh_key?: string | undefined;
379
+ }, {
380
+ provider?: "github" | "gitlab" | "bitbucket" | undefined;
381
+ ssh_key?: string | undefined;
382
+ }>>;
383
+ deployment: z.ZodOptional<z.ZodObject<{
384
+ keep_releases: z.ZodDefault<z.ZodNumber>;
385
+ health_check_retries: z.ZodDefault<z.ZodNumber>;
386
+ rollback_on_failure: z.ZodDefault<z.ZodBoolean>;
387
+ }, "strip", z.ZodTypeAny, {
388
+ keep_releases: number;
389
+ health_check_retries: number;
390
+ rollback_on_failure: boolean;
391
+ }, {
392
+ keep_releases?: number | undefined;
393
+ health_check_retries?: number | undefined;
394
+ rollback_on_failure?: boolean | undefined;
395
+ }>>;
396
+ notifications: z.ZodOptional<z.ZodObject<{
397
+ on_failure: z.ZodOptional<z.ZodObject<{
398
+ webhook: z.ZodOptional<z.ZodString>;
399
+ }, "strip", z.ZodTypeAny, {
400
+ webhook?: string | undefined;
401
+ }, {
402
+ webhook?: string | undefined;
403
+ }>>;
404
+ }, "strip", z.ZodTypeAny, {
405
+ on_failure?: {
406
+ webhook?: string | undefined;
407
+ } | undefined;
408
+ }, {
409
+ on_failure?: {
410
+ webhook?: string | undefined;
411
+ } | undefined;
412
+ }>>;
413
+ }, "strip", z.ZodTypeAny, {
414
+ version: number;
415
+ server: {
416
+ webhook_port: number;
417
+ webhook_secret?: string | undefined;
418
+ port_ranges?: {
419
+ standard: {
420
+ start: number;
421
+ end: number;
422
+ };
423
+ games: {
424
+ start: number;
425
+ end: number;
426
+ };
427
+ special: {
428
+ start: number;
429
+ end: number;
430
+ };
431
+ } | undefined;
432
+ ssl?: {
433
+ enabled: boolean;
434
+ email: string;
435
+ auto_renew: boolean;
436
+ } | undefined;
437
+ defaults?: {
438
+ instances: number;
439
+ node_version: string;
440
+ build_timeout: number;
441
+ health_check_timeout: number;
442
+ max_memory: string;
443
+ } | undefined;
444
+ };
445
+ git?: {
446
+ provider: "github" | "gitlab" | "bitbucket";
447
+ ssh_key?: string | undefined;
448
+ } | undefined;
449
+ deployment?: {
450
+ keep_releases: number;
451
+ health_check_retries: number;
452
+ rollback_on_failure: boolean;
453
+ } | undefined;
454
+ notifications?: {
455
+ on_failure?: {
456
+ webhook?: string | undefined;
457
+ } | undefined;
458
+ } | undefined;
459
+ }, {
460
+ server: {
461
+ webhook_port?: number | undefined;
462
+ webhook_secret?: string | undefined;
463
+ port_ranges?: {
464
+ standard?: {
465
+ start: number;
466
+ end: number;
467
+ } | undefined;
468
+ games?: {
469
+ start: number;
470
+ end: number;
471
+ } | undefined;
472
+ special?: {
473
+ start: number;
474
+ end: number;
475
+ } | undefined;
476
+ } | undefined;
477
+ ssl?: {
478
+ email: string;
479
+ enabled?: boolean | undefined;
480
+ auto_renew?: boolean | undefined;
481
+ } | undefined;
482
+ defaults?: {
483
+ instances?: number | undefined;
484
+ node_version?: string | undefined;
485
+ build_timeout?: number | undefined;
486
+ health_check_timeout?: number | undefined;
487
+ max_memory?: string | undefined;
488
+ } | undefined;
489
+ };
490
+ version?: number | undefined;
491
+ git?: {
492
+ provider?: "github" | "gitlab" | "bitbucket" | undefined;
493
+ ssh_key?: string | undefined;
494
+ } | undefined;
495
+ deployment?: {
496
+ keep_releases?: number | undefined;
497
+ health_check_retries?: number | undefined;
498
+ rollback_on_failure?: boolean | undefined;
499
+ } | undefined;
500
+ notifications?: {
501
+ on_failure?: {
502
+ webhook?: string | undefined;
503
+ } | undefined;
504
+ } | undefined;
505
+ }>;
506
+ export type GlobalConfig = z.infer<typeof GlobalConfigSchema>;
507
+ export declare function parseGlobalConfig(data: unknown): GlobalConfig;
508
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/schemas/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,eAAe;;;;;;;;;EAG1B,CAAA;AAGF,eAAO,MAAM,eAAe;;;;;;;;;;;;EAI1B,CAAA;AAGF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;EAMzB,CAAA;AAGF,eAAO,MAAM,eAAe;;;;;;;;;EAG1B,CAAA;AAGF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;EAIjC,CAAA;AAGF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY7B,CAAA;AAGF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAG7D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,YAAY,CAE7D"}
@@ -0,0 +1,62 @@
1
+ import { z } from 'zod';
2
+ import { PORT_RANGES, DEFAULT_WEBHOOK_PORT } from '../utils/paths.js';
3
+ // Port range configuration
4
+ export const PortRangeSchema = z.object({
5
+ start: z.number(),
6
+ end: z.number(),
7
+ });
8
+ // SSL configuration
9
+ export const SSLConfigSchema = z.object({
10
+ enabled: z.boolean().default(true),
11
+ email: z.string().email(),
12
+ auto_renew: z.boolean().default(true),
13
+ });
14
+ // Default values
15
+ export const DefaultsSchema = z.object({
16
+ node_version: z.string().default('23'),
17
+ build_timeout: z.number().default(600),
18
+ health_check_timeout: z.number().default(30),
19
+ max_memory: z.string().default('512M'),
20
+ instances: z.number().default(1),
21
+ });
22
+ // Git provider configuration
23
+ export const GitConfigSchema = z.object({
24
+ provider: z.enum(['github', 'gitlab', 'bitbucket']).default('github'),
25
+ ssh_key: z.string().optional(),
26
+ });
27
+ // Deployment behavior
28
+ export const DeploymentConfigSchema = z.object({
29
+ keep_releases: z.number().default(3),
30
+ health_check_retries: z.number().default(3),
31
+ rollback_on_failure: z.boolean().default(true),
32
+ });
33
+ // Server configuration
34
+ export const ServerConfigSchema = z.object({
35
+ webhook_port: z.number().default(DEFAULT_WEBHOOK_PORT),
36
+ webhook_secret: z.string().optional(), // Can use ${SHYP_WEBHOOK_SECRET}
37
+ port_ranges: z.object({
38
+ standard: PortRangeSchema.default(PORT_RANGES.standard),
39
+ games: PortRangeSchema.default(PORT_RANGES.games),
40
+ special: PortRangeSchema.default(PORT_RANGES.special),
41
+ }).optional(),
42
+ ssl: SSLConfigSchema.optional(),
43
+ defaults: DefaultsSchema.optional(),
44
+ });
45
+ // Global configuration schema
46
+ export const GlobalConfigSchema = z.object({
47
+ version: z.number().default(1),
48
+ server: ServerConfigSchema,
49
+ git: GitConfigSchema.optional(),
50
+ deployment: DeploymentConfigSchema.optional(),
51
+ // Notifications (future)
52
+ notifications: z.object({
53
+ on_failure: z.object({
54
+ webhook: z.string().url().optional(),
55
+ }).optional(),
56
+ }).optional(),
57
+ });
58
+ // Parse and validate global config
59
+ export function parseGlobalConfig(data) {
60
+ return GlobalConfigSchema.parse(data);
61
+ }
62
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/schemas/config.ts"],"names":[],"mappings":"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"}