@platforma-sdk/bootstrap 3.5.21 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/compose-backend.yaml +119 -49
- package/dist/commands/svc/create/arg-parser.cjs +175 -0
- package/dist/commands/svc/create/arg-parser.cjs.map +1 -0
- package/dist/commands/svc/create/arg-parser.d.ts +42 -0
- package/dist/commands/svc/create/arg-parser.js +173 -0
- package/dist/commands/svc/create/arg-parser.js.map +1 -0
- package/dist/commands/svc/create/docker/s3.cjs +26 -3
- package/dist/commands/svc/create/docker/s3.cjs.map +1 -1
- package/dist/commands/svc/create/docker/s3.js +26 -3
- package/dist/commands/svc/create/docker/s3.js.map +1 -1
- package/dist/commands/svc/create/docker.cjs +36 -3
- package/dist/commands/svc/create/docker.cjs.map +1 -1
- package/dist/commands/svc/create/docker.js +36 -3
- package/dist/commands/svc/create/docker.js.map +1 -1
- package/dist/commands/svc/create/local/s3.cjs +21 -3
- package/dist/commands/svc/create/local/s3.cjs.map +1 -1
- package/dist/commands/svc/create/local/s3.js +21 -3
- package/dist/commands/svc/create/local/s3.js.map +1 -1
- package/dist/commands/svc/create/local.cjs +51 -28
- package/dist/commands/svc/create/local.cjs.map +1 -1
- package/dist/commands/svc/create/local.js +51 -28
- package/dist/commands/svc/create/local.js.map +1 -1
- package/dist/core.cjs +174 -44
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.ts +3 -0
- package/dist/core.js +174 -44
- package/dist/core.js.map +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +8 -8
- package/dist/index.js.map +1 -1
- package/dist/templates/compose.cjs +3 -0
- package/dist/templates/compose.cjs.map +1 -1
- package/dist/templates/compose.d.ts +1 -0
- package/dist/templates/compose.js +3 -0
- package/dist/templates/compose.js.map +1 -1
- package/dist/templates/pl-config.cjs +2 -2
- package/dist/templates/pl-config.cjs.map +1 -1
- package/dist/templates/pl-config.js +2 -2
- package/dist/templates/pl-config.js.map +1 -1
- package/package.json +2 -2
|
@@ -6,6 +6,7 @@ var core$1 = require('../../../../core.cjs');
|
|
|
6
6
|
var cmdOpts = require('../../../../cmd-opts.cjs');
|
|
7
7
|
var util = require('../../../../util.cjs');
|
|
8
8
|
var state = require('../../../../state.cjs');
|
|
9
|
+
var argParser = require('../arg-parser.cjs');
|
|
9
10
|
|
|
10
11
|
class S3 extends core.Command {
|
|
11
12
|
static description = 'Run Platforma Backend service as docker container on current host with MinIO as local S3 storage';
|
|
@@ -27,11 +28,28 @@ class S3 extends core.Command {
|
|
|
27
28
|
name: core.Args.string({ required: true }),
|
|
28
29
|
};
|
|
29
30
|
async run() {
|
|
30
|
-
|
|
31
|
-
const
|
|
31
|
+
// Use custom parser instead of OCLIF parse
|
|
32
|
+
const parser = new argParser.ArgParser(S3.flags);
|
|
33
|
+
const parsed = parser.parse(this.argv);
|
|
34
|
+
// Validate required flags
|
|
35
|
+
const errors = parser.validateRequired(parsed.knownFlags);
|
|
36
|
+
if (errors.length > 0) {
|
|
37
|
+
throw new Error(`Validation errors:\n${errors.join('\n')}`);
|
|
38
|
+
}
|
|
39
|
+
const instanceName = parsed.instanceName;
|
|
40
|
+
const flags = parsed.knownFlags;
|
|
41
|
+
const backendCommands = parsed.unknownFlags;
|
|
42
|
+
if (flags['log-level']) {
|
|
43
|
+
backendCommands.push(`--log-level=${flags['log-level']}`);
|
|
44
|
+
}
|
|
45
|
+
// Set default values for S3-specific flags
|
|
46
|
+
if (!flags['s3-port'])
|
|
47
|
+
flags['s3-port'] = 9000;
|
|
48
|
+
if (!flags['s3-console-port'])
|
|
49
|
+
flags['s3-console-port'] = 9001;
|
|
50
|
+
const logger = util.createLogger(flags['log-level'] || 'info');
|
|
32
51
|
const core = new core$1.default(logger);
|
|
33
52
|
core.mergeLicenseEnvs(flags);
|
|
34
|
-
const instanceName = args.name;
|
|
35
53
|
const authEnabled = flags['auth-enabled'];
|
|
36
54
|
const authOptions = authEnabled
|
|
37
55
|
? {
|
|
@@ -63,11 +81,16 @@ class S3 extends core.Command {
|
|
|
63
81
|
s3Port: flags['s3-port'],
|
|
64
82
|
s3ConsolePort: flags['s3-console-port'],
|
|
65
83
|
presignHost: presignHost,
|
|
84
|
+
backendCommands: backendCommands,
|
|
66
85
|
});
|
|
67
86
|
logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);
|
|
68
87
|
if (flags['minio-presign-host']) {
|
|
69
88
|
logger.info(' NOTE: make sure you have \'minio\' host in your hosts file as 127.0.0.1 address');
|
|
70
89
|
}
|
|
90
|
+
// Log unknown flags that will be passed to backend
|
|
91
|
+
if (backendCommands.length > 0) {
|
|
92
|
+
logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);
|
|
93
|
+
}
|
|
71
94
|
}
|
|
72
95
|
}
|
|
73
96
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3.cjs","sources":["../../../../../src/commands/svc/create/docker/s3.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type * as types from '../../../../templates/types';\nimport Core from '../../../../core';\nimport * as cmdOpts from '../../../../cmd-opts';\nimport * as util from '../../../../util';\nimport state from '../../../../state';\n\nexport default class S3 extends Command {\n static override description = 'Run Platforma Backend service as docker container on current host with MinIO as local S3 storage';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.S3AddressesFlags,\n ...cmdOpts.ImageFlag,\n ...cmdOpts.VersionFlag,\n ...cmdOpts.ArchFlag,\n\n ...cmdOpts.AuthFlags,\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.MountFlag,\n ...cmdOpts.StorageFlag,\n ...cmdOpts.MinioPresignHostFlag,\n };\n\n static args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n const
|
|
1
|
+
{"version":3,"file":"s3.cjs","sources":["../../../../../src/commands/svc/create/docker/s3.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type * as types from '../../../../templates/types';\nimport Core from '../../../../core';\nimport * as cmdOpts from '../../../../cmd-opts';\nimport * as util from '../../../../util';\nimport state from '../../../../state';\nimport { ArgParser } from '../arg-parser';\n\nexport default class S3 extends Command {\n static override description = 'Run Platforma Backend service as docker container on current host with MinIO as local S3 storage';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.S3AddressesFlags,\n ...cmdOpts.ImageFlag,\n ...cmdOpts.VersionFlag,\n ...cmdOpts.ArchFlag,\n\n ...cmdOpts.AuthFlags,\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.MountFlag,\n ...cmdOpts.StorageFlag,\n ...cmdOpts.MinioPresignHostFlag,\n };\n\n static override args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n // Use custom parser instead of OCLIF parse\n const parser = new ArgParser(S3.flags);\n const parsed = parser.parse(this.argv);\n\n // Validate required flags\n const errors = parser.validateRequired(parsed.knownFlags);\n if (errors.length > 0) {\n throw new Error(`Validation errors:\\n${errors.join('\\n')}`);\n }\n\n const instanceName = parsed.instanceName;\n const flags = parsed.knownFlags;\n\n const backendCommands = parsed.unknownFlags;\n if (flags['log-level']){\n backendCommands.push(`--log-level=${flags['log-level']}`);\n }\n\n // Set default values for S3-specific flags\n if (!flags['s3-port']) flags['s3-port'] = 9000;\n if (!flags['s3-console-port']) flags['s3-console-port'] = 9001;\n\n const logger = util.createLogger(flags['log-level'] || 'info');\n const core = new Core(logger);\n core.mergeLicenseEnvs(flags);\n\n const authEnabled = flags['auth-enabled'];\n const authOptions: types.authOptions | undefined = authEnabled\n ? {\n enabled: authEnabled,\n drivers: core.initAuthDriversList(flags, '.'),\n }\n : undefined;\n\n const storage = flags.storage ? path.join('.', flags.storage) : state.instanceDir(instanceName);\n\n const mounts: { hostPath: string; containerPath?: string }[] = [];\n for (const p of flags.mount ?? []) {\n mounts.push({ hostPath: p });\n }\n\n const platformOverride = flags.arch ? `linux/${flags.arch}` : undefined;\n const presignHost = flags['minio-presign-host'] ? 'minio' : 'localhost';\n\n core.createDockerS3(instanceName, storage, {\n image: flags.image,\n version: flags.version,\n\n license: flags['license'],\n licenseFile: flags['license-file'],\n\n platformOverride: platformOverride,\n customMounts: mounts,\n\n auth: authOptions,\n\n grpcAddr: flags['grpc-listen'],\n grpcPort: flags['grpc-port'],\n\n monitoringAddr: flags['monitoring-listen'],\n monitoringPort: flags['monitoring-port'],\n\n debugAddr: flags['debug-listen'],\n debugPort: flags['debug-port'],\n\n s3Port: flags['s3-port'],\n s3ConsolePort: flags['s3-console-port'],\n\n presignHost: presignHost,\n\n backendCommands: backendCommands,\n });\n\n logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);\n if (flags['minio-presign-host']) {\n logger.info(' NOTE: make sure you have \\'minio\\' host in your hosts file as 127.0.0.1 address');\n }\n\n // Log unknown flags that will be passed to backend\n if (backendCommands.length > 0) {\n logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);\n }\n }\n}\n"],"names":["Command","cmdOpts.GlobalFlags","cmdOpts.AddressesFlags","cmdOpts.S3AddressesFlags","cmdOpts.ImageFlag","cmdOpts.VersionFlag","cmdOpts.ArchFlag","cmdOpts.AuthFlags","cmdOpts.LicenseFlags","cmdOpts.MountFlag","cmdOpts.StorageFlag","cmdOpts.MinioPresignHostFlag","Args","ArgParser","util.createLogger","Core"],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import Core from '../../../../core.js';
|
|
|
4
4
|
import { MinioPresignHostFlag, StorageFlag, MountFlag, LicenseFlags, AuthFlags, ArchFlag, VersionFlag, ImageFlag, S3AddressesFlags, AddressesFlags, GlobalFlags } from '../../../../cmd-opts.js';
|
|
5
5
|
import { createLogger } from '../../../../util.js';
|
|
6
6
|
import state from '../../../../state.js';
|
|
7
|
+
import { ArgParser } from '../arg-parser.js';
|
|
7
8
|
|
|
8
9
|
class S3 extends Command {
|
|
9
10
|
static description = 'Run Platforma Backend service as docker container on current host with MinIO as local S3 storage';
|
|
@@ -25,11 +26,28 @@ class S3 extends Command {
|
|
|
25
26
|
name: Args.string({ required: true }),
|
|
26
27
|
};
|
|
27
28
|
async run() {
|
|
28
|
-
|
|
29
|
-
const
|
|
29
|
+
// Use custom parser instead of OCLIF parse
|
|
30
|
+
const parser = new ArgParser(S3.flags);
|
|
31
|
+
const parsed = parser.parse(this.argv);
|
|
32
|
+
// Validate required flags
|
|
33
|
+
const errors = parser.validateRequired(parsed.knownFlags);
|
|
34
|
+
if (errors.length > 0) {
|
|
35
|
+
throw new Error(`Validation errors:\n${errors.join('\n')}`);
|
|
36
|
+
}
|
|
37
|
+
const instanceName = parsed.instanceName;
|
|
38
|
+
const flags = parsed.knownFlags;
|
|
39
|
+
const backendCommands = parsed.unknownFlags;
|
|
40
|
+
if (flags['log-level']) {
|
|
41
|
+
backendCommands.push(`--log-level=${flags['log-level']}`);
|
|
42
|
+
}
|
|
43
|
+
// Set default values for S3-specific flags
|
|
44
|
+
if (!flags['s3-port'])
|
|
45
|
+
flags['s3-port'] = 9000;
|
|
46
|
+
if (!flags['s3-console-port'])
|
|
47
|
+
flags['s3-console-port'] = 9001;
|
|
48
|
+
const logger = createLogger(flags['log-level'] || 'info');
|
|
30
49
|
const core = new Core(logger);
|
|
31
50
|
core.mergeLicenseEnvs(flags);
|
|
32
|
-
const instanceName = args.name;
|
|
33
51
|
const authEnabled = flags['auth-enabled'];
|
|
34
52
|
const authOptions = authEnabled
|
|
35
53
|
? {
|
|
@@ -61,11 +79,16 @@ class S3 extends Command {
|
|
|
61
79
|
s3Port: flags['s3-port'],
|
|
62
80
|
s3ConsolePort: flags['s3-console-port'],
|
|
63
81
|
presignHost: presignHost,
|
|
82
|
+
backendCommands: backendCommands,
|
|
64
83
|
});
|
|
65
84
|
logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);
|
|
66
85
|
if (flags['minio-presign-host']) {
|
|
67
86
|
logger.info(' NOTE: make sure you have \'minio\' host in your hosts file as 127.0.0.1 address');
|
|
68
87
|
}
|
|
88
|
+
// Log unknown flags that will be passed to backend
|
|
89
|
+
if (backendCommands.length > 0) {
|
|
90
|
+
logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);
|
|
91
|
+
}
|
|
69
92
|
}
|
|
70
93
|
}
|
|
71
94
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3.js","sources":["../../../../../src/commands/svc/create/docker/s3.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type * as types from '../../../../templates/types';\nimport Core from '../../../../core';\nimport * as cmdOpts from '../../../../cmd-opts';\nimport * as util from '../../../../util';\nimport state from '../../../../state';\n\nexport default class S3 extends Command {\n static override description = 'Run Platforma Backend service as docker container on current host with MinIO as local S3 storage';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.S3AddressesFlags,\n ...cmdOpts.ImageFlag,\n ...cmdOpts.VersionFlag,\n ...cmdOpts.ArchFlag,\n\n ...cmdOpts.AuthFlags,\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.MountFlag,\n ...cmdOpts.StorageFlag,\n ...cmdOpts.MinioPresignHostFlag,\n };\n\n static args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n const
|
|
1
|
+
{"version":3,"file":"s3.js","sources":["../../../../../src/commands/svc/create/docker/s3.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type * as types from '../../../../templates/types';\nimport Core from '../../../../core';\nimport * as cmdOpts from '../../../../cmd-opts';\nimport * as util from '../../../../util';\nimport state from '../../../../state';\nimport { ArgParser } from '../arg-parser';\n\nexport default class S3 extends Command {\n static override description = 'Run Platforma Backend service as docker container on current host with MinIO as local S3 storage';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.S3AddressesFlags,\n ...cmdOpts.ImageFlag,\n ...cmdOpts.VersionFlag,\n ...cmdOpts.ArchFlag,\n\n ...cmdOpts.AuthFlags,\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.MountFlag,\n ...cmdOpts.StorageFlag,\n ...cmdOpts.MinioPresignHostFlag,\n };\n\n static override args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n // Use custom parser instead of OCLIF parse\n const parser = new ArgParser(S3.flags);\n const parsed = parser.parse(this.argv);\n\n // Validate required flags\n const errors = parser.validateRequired(parsed.knownFlags);\n if (errors.length > 0) {\n throw new Error(`Validation errors:\\n${errors.join('\\n')}`);\n }\n\n const instanceName = parsed.instanceName;\n const flags = parsed.knownFlags;\n\n const backendCommands = parsed.unknownFlags;\n if (flags['log-level']){\n backendCommands.push(`--log-level=${flags['log-level']}`);\n }\n\n // Set default values for S3-specific flags\n if (!flags['s3-port']) flags['s3-port'] = 9000;\n if (!flags['s3-console-port']) flags['s3-console-port'] = 9001;\n\n const logger = util.createLogger(flags['log-level'] || 'info');\n const core = new Core(logger);\n core.mergeLicenseEnvs(flags);\n\n const authEnabled = flags['auth-enabled'];\n const authOptions: types.authOptions | undefined = authEnabled\n ? {\n enabled: authEnabled,\n drivers: core.initAuthDriversList(flags, '.'),\n }\n : undefined;\n\n const storage = flags.storage ? path.join('.', flags.storage) : state.instanceDir(instanceName);\n\n const mounts: { hostPath: string; containerPath?: string }[] = [];\n for (const p of flags.mount ?? []) {\n mounts.push({ hostPath: p });\n }\n\n const platformOverride = flags.arch ? `linux/${flags.arch}` : undefined;\n const presignHost = flags['minio-presign-host'] ? 'minio' : 'localhost';\n\n core.createDockerS3(instanceName, storage, {\n image: flags.image,\n version: flags.version,\n\n license: flags['license'],\n licenseFile: flags['license-file'],\n\n platformOverride: platformOverride,\n customMounts: mounts,\n\n auth: authOptions,\n\n grpcAddr: flags['grpc-listen'],\n grpcPort: flags['grpc-port'],\n\n monitoringAddr: flags['monitoring-listen'],\n monitoringPort: flags['monitoring-port'],\n\n debugAddr: flags['debug-listen'],\n debugPort: flags['debug-port'],\n\n s3Port: flags['s3-port'],\n s3ConsolePort: flags['s3-console-port'],\n\n presignHost: presignHost,\n\n backendCommands: backendCommands,\n });\n\n logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);\n if (flags['minio-presign-host']) {\n logger.info(' NOTE: make sure you have \\'minio\\' host in your hosts file as 127.0.0.1 address');\n }\n\n // Log unknown flags that will be passed to backend\n if (backendCommands.length > 0) {\n logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);\n }\n }\n}\n"],"names":["cmdOpts.GlobalFlags","cmdOpts.AddressesFlags","cmdOpts.S3AddressesFlags","cmdOpts.ImageFlag","cmdOpts.VersionFlag","cmdOpts.ArchFlag","cmdOpts.AuthFlags","cmdOpts.LicenseFlags","cmdOpts.MountFlag","cmdOpts.StorageFlag","cmdOpts.MinioPresignHostFlag","util.createLogger"],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ var core$1 = require('../../../core.cjs');
|
|
|
6
6
|
var cmdOpts = require('../../../cmd-opts.cjs');
|
|
7
7
|
var util = require('../../../util.cjs');
|
|
8
8
|
var state = require('../../../state.cjs');
|
|
9
|
+
var argParser = require('./arg-parser.cjs');
|
|
9
10
|
|
|
10
11
|
class Docker extends core.Command {
|
|
11
12
|
static description = 'Run Platforma Backend service as docker container on current host';
|
|
@@ -28,11 +29,38 @@ class Docker extends core.Command {
|
|
|
28
29
|
name: core.Args.string({ required: true }),
|
|
29
30
|
};
|
|
30
31
|
async run() {
|
|
31
|
-
|
|
32
|
-
const
|
|
32
|
+
// Use custom parser instead of OCLIF parse
|
|
33
|
+
const parser = new argParser.ArgParser(Docker.flags);
|
|
34
|
+
const parsed = parser.parse(this.argv);
|
|
35
|
+
// Validate required flags
|
|
36
|
+
const errors = parser.validateRequired(parsed.knownFlags);
|
|
37
|
+
if (errors.length > 0) {
|
|
38
|
+
throw new Error(`Validation errors:\n${errors.join('\n')}`);
|
|
39
|
+
}
|
|
40
|
+
const instanceName = parsed.instanceName;
|
|
41
|
+
const flags = parsed.knownFlags;
|
|
42
|
+
const backendCommands = parsed.unknownFlags;
|
|
43
|
+
if (flags['log-level']) {
|
|
44
|
+
backendCommands.push(`--log-level=${flags['log-level']}`);
|
|
45
|
+
}
|
|
46
|
+
// Set default values for flags that weren't specified
|
|
47
|
+
if (!flags['log-level'])
|
|
48
|
+
flags['log-level'] = 'info';
|
|
49
|
+
if (!flags['grpc-port'])
|
|
50
|
+
flags['grpc-port'] = 6345;
|
|
51
|
+
if (!flags['grpc-listen'])
|
|
52
|
+
flags['grpc-listen'] = '127.0.0.1:6345';
|
|
53
|
+
if (!flags['monitoring-port'])
|
|
54
|
+
flags['monitoring-port'] = 9090;
|
|
55
|
+
if (!flags['monitoring-listen'])
|
|
56
|
+
flags['monitoring-listen'] = '127.0.0.1:9090';
|
|
57
|
+
if (!flags['debug-port'])
|
|
58
|
+
flags['debug-port'] = 9091;
|
|
59
|
+
if (!flags['debug-listen'])
|
|
60
|
+
flags['debug-listen'] = '127.0.0.1:9091';
|
|
61
|
+
const logger = util.createLogger(flags['log-level'] || 'info');
|
|
33
62
|
const core = new core$1.default(logger);
|
|
34
63
|
core.mergeLicenseEnvs(flags);
|
|
35
|
-
const instanceName = args.name;
|
|
36
64
|
const authEnabled = flags['auth-enabled'];
|
|
37
65
|
const authOptions = authEnabled
|
|
38
66
|
? {
|
|
@@ -63,8 +91,13 @@ class Docker extends core.Command {
|
|
|
63
91
|
monitoringPort: flags['monitoring-port'],
|
|
64
92
|
debugAddr: flags['debug-listen'],
|
|
65
93
|
debugPort: flags['debug-port'],
|
|
94
|
+
backendCommands: backendCommands,
|
|
66
95
|
});
|
|
67
96
|
logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);
|
|
97
|
+
// Log unknown flags that will be passed to backend
|
|
98
|
+
if (backendCommands.length > 0) {
|
|
99
|
+
logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);
|
|
100
|
+
}
|
|
68
101
|
}
|
|
69
102
|
}
|
|
70
103
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker.cjs","sources":["../../../../src/commands/svc/create/docker.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type * as types from '../../../templates/types';\nimport Core from '../../../core';\nimport * as cmdOpts from '../../../cmd-opts';\nimport * as util from '../../../util';\nimport state from '../../../state';\n\nexport default class Docker extends Command {\n static override description = 'Run Platforma Backend service as docker container on current host';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.ImageFlag,\n ...cmdOpts.VersionFlag,\n ...cmdOpts.ArchFlag,\n\n ...cmdOpts.AuthFlags,\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.MountFlag,\n ...cmdOpts.StorageFlag,\n ...cmdOpts.StoragePrimaryURLFlag,\n ...cmdOpts.StorageWorkPathFlag,\n ...cmdOpts.StorageLibraryURLFlag,\n };\n\n static args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n const { flags
|
|
1
|
+
{"version":3,"file":"docker.cjs","sources":["../../../../src/commands/svc/create/docker.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type * as types from '../../../templates/types';\nimport Core from '../../../core';\nimport * as cmdOpts from '../../../cmd-opts';\nimport * as util from '../../../util';\nimport state from '../../../state';\nimport { ArgParser } from './arg-parser';\n\nexport default class Docker extends Command {\n static override description = 'Run Platforma Backend service as docker container on current host';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.ImageFlag,\n ...cmdOpts.VersionFlag,\n ...cmdOpts.ArchFlag,\n\n ...cmdOpts.AuthFlags,\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.MountFlag,\n ...cmdOpts.StorageFlag,\n ...cmdOpts.StoragePrimaryURLFlag,\n ...cmdOpts.StorageWorkPathFlag,\n ...cmdOpts.StorageLibraryURLFlag,\n };\n\n static override args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n // Use custom parser instead of OCLIF parse\n const parser = new ArgParser(Docker.flags);\n const parsed = parser.parse(this.argv);\n\n // Validate required flags\n const errors = parser.validateRequired(parsed.knownFlags);\n if (errors.length > 0) {\n throw new Error(`Validation errors:\\n${errors.join('\\n')}`);\n }\n\n const instanceName = parsed.instanceName;\n const flags = parsed.knownFlags;\n const backendCommands = parsed.unknownFlags;\n if (flags['log-level']){\n backendCommands.push(`--log-level=${flags['log-level']}`);\n }\n\n // Set default values for flags that weren't specified\n if (!flags['log-level']) flags['log-level'] = 'info';\n if (!flags['grpc-port']) flags['grpc-port'] = 6345;\n if (!flags['grpc-listen']) flags['grpc-listen'] = '127.0.0.1:6345';\n if (!flags['monitoring-port']) flags['monitoring-port'] = 9090;\n if (!flags['monitoring-listen']) flags['monitoring-listen'] = '127.0.0.1:9090';\n if (!flags['debug-port']) flags['debug-port'] = 9091;\n if (!flags['debug-listen']) flags['debug-listen'] = '127.0.0.1:9091';\n\n const logger = util.createLogger(flags['log-level'] || 'info');\n const core = new Core(logger);\n core.mergeLicenseEnvs(flags);\n\n const authEnabled = flags['auth-enabled'];\n const authOptions: types.authOptions | undefined = authEnabled\n ? {\n enabled: authEnabled,\n drivers: core.initAuthDriversList(flags, '.'),\n }\n : undefined;\n\n const storage = flags.storage ? path.join('.', flags.storage) : state.instanceDir(instanceName);\n\n const mounts: { hostPath: string; containerPath?: string }[] = [];\n for (const p of flags.mount ?? []) {\n mounts.push({ hostPath: p });\n }\n\n const platformOverride = flags.arch ? `linux/${flags.arch}` : undefined;\n\n core.createDocker(instanceName, storage, {\n primaryStorageURL: flags['storage-primary'],\n workStoragePath: flags['storage-work'],\n libraryStorageURL: flags['storage-library'],\n\n image: flags.image,\n version: flags.version,\n\n platformOverride: platformOverride,\n customMounts: mounts,\n\n license: flags['license'],\n licenseFile: flags['license-file'],\n\n auth: authOptions,\n\n grpcAddr: flags['grpc-listen'],\n grpcPort: flags['grpc-port'],\n\n monitoringAddr: flags['monitoring-listen'],\n monitoringPort: flags['monitoring-port'],\n\n debugAddr: flags['debug-listen'],\n debugPort: flags['debug-port'],\n\n backendCommands: backendCommands,\n });\n\n logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);\n \n // Log unknown flags that will be passed to backend\n if (backendCommands.length > 0) {\n logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);\n }\n }\n}\n"],"names":["Command","cmdOpts.GlobalFlags","cmdOpts.AddressesFlags","cmdOpts.ImageFlag","cmdOpts.VersionFlag","cmdOpts.ArchFlag","cmdOpts.AuthFlags","cmdOpts.LicenseFlags","cmdOpts.MountFlag","cmdOpts.StorageFlag","cmdOpts.StoragePrimaryURLFlag","cmdOpts.StorageWorkPathFlag","cmdOpts.StorageLibraryURLFlag","Args","ArgParser","util.createLogger","Core"],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import Core from '../../../core.js';
|
|
|
4
4
|
import { StorageLibraryURLFlag, StorageWorkPathFlag, StoragePrimaryURLFlag, StorageFlag, MountFlag, LicenseFlags, AuthFlags, ArchFlag, VersionFlag, ImageFlag, AddressesFlags, GlobalFlags } from '../../../cmd-opts.js';
|
|
5
5
|
import { createLogger } from '../../../util.js';
|
|
6
6
|
import state from '../../../state.js';
|
|
7
|
+
import { ArgParser } from './arg-parser.js';
|
|
7
8
|
|
|
8
9
|
class Docker extends Command {
|
|
9
10
|
static description = 'Run Platforma Backend service as docker container on current host';
|
|
@@ -26,11 +27,38 @@ class Docker extends Command {
|
|
|
26
27
|
name: Args.string({ required: true }),
|
|
27
28
|
};
|
|
28
29
|
async run() {
|
|
29
|
-
|
|
30
|
-
const
|
|
30
|
+
// Use custom parser instead of OCLIF parse
|
|
31
|
+
const parser = new ArgParser(Docker.flags);
|
|
32
|
+
const parsed = parser.parse(this.argv);
|
|
33
|
+
// Validate required flags
|
|
34
|
+
const errors = parser.validateRequired(parsed.knownFlags);
|
|
35
|
+
if (errors.length > 0) {
|
|
36
|
+
throw new Error(`Validation errors:\n${errors.join('\n')}`);
|
|
37
|
+
}
|
|
38
|
+
const instanceName = parsed.instanceName;
|
|
39
|
+
const flags = parsed.knownFlags;
|
|
40
|
+
const backendCommands = parsed.unknownFlags;
|
|
41
|
+
if (flags['log-level']) {
|
|
42
|
+
backendCommands.push(`--log-level=${flags['log-level']}`);
|
|
43
|
+
}
|
|
44
|
+
// Set default values for flags that weren't specified
|
|
45
|
+
if (!flags['log-level'])
|
|
46
|
+
flags['log-level'] = 'info';
|
|
47
|
+
if (!flags['grpc-port'])
|
|
48
|
+
flags['grpc-port'] = 6345;
|
|
49
|
+
if (!flags['grpc-listen'])
|
|
50
|
+
flags['grpc-listen'] = '127.0.0.1:6345';
|
|
51
|
+
if (!flags['monitoring-port'])
|
|
52
|
+
flags['monitoring-port'] = 9090;
|
|
53
|
+
if (!flags['monitoring-listen'])
|
|
54
|
+
flags['monitoring-listen'] = '127.0.0.1:9090';
|
|
55
|
+
if (!flags['debug-port'])
|
|
56
|
+
flags['debug-port'] = 9091;
|
|
57
|
+
if (!flags['debug-listen'])
|
|
58
|
+
flags['debug-listen'] = '127.0.0.1:9091';
|
|
59
|
+
const logger = createLogger(flags['log-level'] || 'info');
|
|
31
60
|
const core = new Core(logger);
|
|
32
61
|
core.mergeLicenseEnvs(flags);
|
|
33
|
-
const instanceName = args.name;
|
|
34
62
|
const authEnabled = flags['auth-enabled'];
|
|
35
63
|
const authOptions = authEnabled
|
|
36
64
|
? {
|
|
@@ -61,8 +89,13 @@ class Docker extends Command {
|
|
|
61
89
|
monitoringPort: flags['monitoring-port'],
|
|
62
90
|
debugAddr: flags['debug-listen'],
|
|
63
91
|
debugPort: flags['debug-port'],
|
|
92
|
+
backendCommands: backendCommands,
|
|
64
93
|
});
|
|
65
94
|
logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);
|
|
95
|
+
// Log unknown flags that will be passed to backend
|
|
96
|
+
if (backendCommands.length > 0) {
|
|
97
|
+
logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);
|
|
98
|
+
}
|
|
66
99
|
}
|
|
67
100
|
}
|
|
68
101
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker.js","sources":["../../../../src/commands/svc/create/docker.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type * as types from '../../../templates/types';\nimport Core from '../../../core';\nimport * as cmdOpts from '../../../cmd-opts';\nimport * as util from '../../../util';\nimport state from '../../../state';\n\nexport default class Docker extends Command {\n static override description = 'Run Platforma Backend service as docker container on current host';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.ImageFlag,\n ...cmdOpts.VersionFlag,\n ...cmdOpts.ArchFlag,\n\n ...cmdOpts.AuthFlags,\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.MountFlag,\n ...cmdOpts.StorageFlag,\n ...cmdOpts.StoragePrimaryURLFlag,\n ...cmdOpts.StorageWorkPathFlag,\n ...cmdOpts.StorageLibraryURLFlag,\n };\n\n static args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n const { flags
|
|
1
|
+
{"version":3,"file":"docker.js","sources":["../../../../src/commands/svc/create/docker.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type * as types from '../../../templates/types';\nimport Core from '../../../core';\nimport * as cmdOpts from '../../../cmd-opts';\nimport * as util from '../../../util';\nimport state from '../../../state';\nimport { ArgParser } from './arg-parser';\n\nexport default class Docker extends Command {\n static override description = 'Run Platforma Backend service as docker container on current host';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.ImageFlag,\n ...cmdOpts.VersionFlag,\n ...cmdOpts.ArchFlag,\n\n ...cmdOpts.AuthFlags,\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.MountFlag,\n ...cmdOpts.StorageFlag,\n ...cmdOpts.StoragePrimaryURLFlag,\n ...cmdOpts.StorageWorkPathFlag,\n ...cmdOpts.StorageLibraryURLFlag,\n };\n\n static override args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n // Use custom parser instead of OCLIF parse\n const parser = new ArgParser(Docker.flags);\n const parsed = parser.parse(this.argv);\n\n // Validate required flags\n const errors = parser.validateRequired(parsed.knownFlags);\n if (errors.length > 0) {\n throw new Error(`Validation errors:\\n${errors.join('\\n')}`);\n }\n\n const instanceName = parsed.instanceName;\n const flags = parsed.knownFlags;\n const backendCommands = parsed.unknownFlags;\n if (flags['log-level']){\n backendCommands.push(`--log-level=${flags['log-level']}`);\n }\n\n // Set default values for flags that weren't specified\n if (!flags['log-level']) flags['log-level'] = 'info';\n if (!flags['grpc-port']) flags['grpc-port'] = 6345;\n if (!flags['grpc-listen']) flags['grpc-listen'] = '127.0.0.1:6345';\n if (!flags['monitoring-port']) flags['monitoring-port'] = 9090;\n if (!flags['monitoring-listen']) flags['monitoring-listen'] = '127.0.0.1:9090';\n if (!flags['debug-port']) flags['debug-port'] = 9091;\n if (!flags['debug-listen']) flags['debug-listen'] = '127.0.0.1:9091';\n\n const logger = util.createLogger(flags['log-level'] || 'info');\n const core = new Core(logger);\n core.mergeLicenseEnvs(flags);\n\n const authEnabled = flags['auth-enabled'];\n const authOptions: types.authOptions | undefined = authEnabled\n ? {\n enabled: authEnabled,\n drivers: core.initAuthDriversList(flags, '.'),\n }\n : undefined;\n\n const storage = flags.storage ? path.join('.', flags.storage) : state.instanceDir(instanceName);\n\n const mounts: { hostPath: string; containerPath?: string }[] = [];\n for (const p of flags.mount ?? []) {\n mounts.push({ hostPath: p });\n }\n\n const platformOverride = flags.arch ? `linux/${flags.arch}` : undefined;\n\n core.createDocker(instanceName, storage, {\n primaryStorageURL: flags['storage-primary'],\n workStoragePath: flags['storage-work'],\n libraryStorageURL: flags['storage-library'],\n\n image: flags.image,\n version: flags.version,\n\n platformOverride: platformOverride,\n customMounts: mounts,\n\n license: flags['license'],\n licenseFile: flags['license-file'],\n\n auth: authOptions,\n\n grpcAddr: flags['grpc-listen'],\n grpcPort: flags['grpc-port'],\n\n monitoringAddr: flags['monitoring-listen'],\n monitoringPort: flags['monitoring-port'],\n\n debugAddr: flags['debug-listen'],\n debugPort: flags['debug-port'],\n\n backendCommands: backendCommands,\n });\n\n logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);\n \n // Log unknown flags that will be passed to backend\n if (backendCommands.length > 0) {\n logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);\n }\n }\n}\n"],"names":["cmdOpts.GlobalFlags","cmdOpts.AddressesFlags","cmdOpts.ImageFlag","cmdOpts.VersionFlag","cmdOpts.ArchFlag","cmdOpts.AuthFlags","cmdOpts.LicenseFlags","cmdOpts.MountFlag","cmdOpts.StorageFlag","cmdOpts.StoragePrimaryURLFlag","cmdOpts.StorageWorkPathFlag","cmdOpts.StorageLibraryURLFlag","util.createLogger"],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ var util = require('../../../../util.cjs');
|
|
|
8
8
|
var state = require('../../../../state.cjs');
|
|
9
9
|
var platforma = require('../../../../platforma.cjs');
|
|
10
10
|
var os = require('node:os');
|
|
11
|
+
var argParser = require('../arg-parser.cjs');
|
|
11
12
|
|
|
12
13
|
function _interopNamespaceDefault(e) {
|
|
13
14
|
var n = Object.create(null);
|
|
@@ -52,11 +53,23 @@ class Local extends core.Command {
|
|
|
52
53
|
name: core.Args.string({ required: true }),
|
|
53
54
|
};
|
|
54
55
|
async run() {
|
|
55
|
-
|
|
56
|
-
const
|
|
56
|
+
// Use custom parser instead of OCLIF parse
|
|
57
|
+
const parser = new argParser.ArgParser(Local.flags);
|
|
58
|
+
const parsed = parser.parse(this.argv);
|
|
59
|
+
// Validate required flags
|
|
60
|
+
const errors = parser.validateRequired(parsed.knownFlags);
|
|
61
|
+
if (errors.length > 0) {
|
|
62
|
+
throw new Error(`Validation errors:\n${errors.join('\n')}`);
|
|
63
|
+
}
|
|
64
|
+
const instanceName = parsed.instanceName;
|
|
65
|
+
const flags = parsed.knownFlags;
|
|
66
|
+
const backendCommands = parsed.unknownFlags;
|
|
67
|
+
if (flags['log-level']) {
|
|
68
|
+
backendCommands.push(`--log-level=${flags['log-level']}`);
|
|
69
|
+
}
|
|
70
|
+
const logger = util.createLogger(flags['log-level'] || 'info');
|
|
57
71
|
const core = new core$1.default(logger);
|
|
58
72
|
core.mergeLicenseEnvs(flags);
|
|
59
|
-
const instanceName = args.name;
|
|
60
73
|
const workdir = flags['pl-workdir'] ?? '.';
|
|
61
74
|
const storage = flags.storage ? path.join(workdir, flags.storage) : state.instanceDir(instanceName);
|
|
62
75
|
const logFile = flags['pl-log-file'] ? path.join(workdir, flags['pl-log-file']) : undefined;
|
|
@@ -87,6 +100,7 @@ class Local extends core.Command {
|
|
|
87
100
|
libraryURL: flags['storage-library'],
|
|
88
101
|
minioPort: flags['s3-port'],
|
|
89
102
|
minioConsolePort: flags['s3-console-port'],
|
|
103
|
+
backendCommands: backendCommands,
|
|
90
104
|
configOptions: {
|
|
91
105
|
grpc: { listen: listenGrpc },
|
|
92
106
|
monitoring: { listen: listenMon },
|
|
@@ -114,6 +128,10 @@ class Local extends core.Command {
|
|
|
114
128
|
.catch(function (err) {
|
|
115
129
|
logger.error(err.message);
|
|
116
130
|
});
|
|
131
|
+
// Log unknown flags that will be passed to backend
|
|
132
|
+
if (backendCommands.length > 0) {
|
|
133
|
+
logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);
|
|
134
|
+
}
|
|
117
135
|
}
|
|
118
136
|
}
|
|
119
137
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3.cjs","sources":["../../../../../src/commands/svc/create/local/s3.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type { createLocalS3Options } from '../../../../core';\nimport Core from '../../../../core';\nimport * as cmdOpts from '../../../../cmd-opts';\nimport * as util from '../../../../util';\nimport state from '../../../../state';\nimport * as platforma from '../../../../platforma';\nimport * as os from 'node:os';\n\nexport default class Local extends Command {\n static override description = 'Run Platforma Backend service as local process on current host (no docker container)';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n ...cmdOpts.VersionFlag,\n\n ...cmdOpts.S3AddressesFlags,\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.PlBinaryFlag,\n ...cmdOpts.PlSourcesFlag,\n\n ...cmdOpts.ConfigFlag,\n\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.StorageFlag,\n ...cmdOpts.StoragePrimaryURLFlag,\n ...cmdOpts.StorageWorkPathFlag,\n ...cmdOpts.StorageLibraryURLFlag,\n\n ...cmdOpts.PlLogFileFlag,\n ...cmdOpts.PlWorkdirFlag,\n ...cmdOpts.AuthFlags,\n };\n\n static args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n const
|
|
1
|
+
{"version":3,"file":"s3.cjs","sources":["../../../../../src/commands/svc/create/local/s3.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type { createLocalS3Options } from '../../../../core';\nimport Core from '../../../../core';\nimport * as cmdOpts from '../../../../cmd-opts';\nimport * as util from '../../../../util';\nimport state from '../../../../state';\nimport * as platforma from '../../../../platforma';\nimport * as os from 'node:os';\nimport { ArgParser } from '../arg-parser';\n\nexport default class Local extends Command {\n static override description = 'Run Platforma Backend service as local process on current host (no docker container)';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n ...cmdOpts.VersionFlag,\n\n ...cmdOpts.S3AddressesFlags,\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.PlBinaryFlag,\n ...cmdOpts.PlSourcesFlag,\n\n ...cmdOpts.ConfigFlag,\n\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.StorageFlag,\n ...cmdOpts.StoragePrimaryURLFlag,\n ...cmdOpts.StorageWorkPathFlag,\n ...cmdOpts.StorageLibraryURLFlag,\n\n ...cmdOpts.PlLogFileFlag,\n ...cmdOpts.PlWorkdirFlag,\n ...cmdOpts.AuthFlags,\n };\n\n static override args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n // Use custom parser instead of OCLIF parse\n const parser = new ArgParser(Local.flags);\n const parsed = parser.parse(this.argv);\n\n // Validate required flags\n const errors = parser.validateRequired(parsed.knownFlags);\n if (errors.length > 0) {\n throw new Error(`Validation errors:\\n${errors.join('\\n')}`);\n }\n\n const instanceName = parsed.instanceName;\n const flags = parsed.knownFlags;\n const backendCommands = parsed.unknownFlags;\n if (flags['log-level']){\n backendCommands.push(`--log-level=${flags['log-level']}`);\n }\n\n const logger = util.createLogger(flags['log-level'] || 'info');\n const core = new Core(logger);\n core.mergeLicenseEnvs(flags);\n\n const workdir = flags['pl-workdir'] ?? '.';\n const storage = flags.storage ? path.join(workdir, flags.storage) : state.instanceDir(instanceName);\n const logFile = flags['pl-log-file'] ? path.join(workdir, flags['pl-log-file']) : undefined;\n\n const authDrivers = core.initAuthDriversList(flags, workdir);\n const authEnabled = flags['auth-enabled'] ?? authDrivers !== undefined;\n\n let listenGrpc: string = '127.0.0.1:6345';\n if (flags['grpc-listen']) listenGrpc = flags['grpc-listen'];\n else if (flags['grpc-port']) listenGrpc = `127.0.0.1:${flags['grpc-port']}`;\n\n let listenMon: string = '127.0.0.1:9090';\n if (flags['monitoring-listen']) listenMon = flags['monitoring-listen'];\n else if (flags['monitoring-port']) listenMon = `127.0.0.1:${flags['monitoring-port']}`;\n\n let listenDbg: string = '127.0.0.1:9091';\n if (flags['debug-listen']) listenDbg = flags['debug-listen'];\n else if (flags['debug-port']) listenDbg = `127.0.0.1:${flags['debug-port']}`;\n\n const createOptions: createLocalS3Options = {\n sourcesPath: flags['pl-sources'],\n binaryPath: flags['pl-binary'],\n\n version: flags.version,\n configPath: flags.config,\n workdir: flags['pl-workdir'],\n\n primaryURL: flags['storage-primary'],\n libraryURL: flags['storage-library'],\n\n minioPort: flags['s3-port'],\n minioConsolePort: flags['s3-console-port'],\n\n backendCommands: backendCommands,\n\n configOptions: {\n grpc: { listen: listenGrpc },\n monitoring: { listen: listenMon },\n debug: { listen: listenDbg },\n license: { value: flags['license'], file: flags['license-file'] },\n log: { path: logFile },\n localRoot: storage,\n core: { auth: { enabled: authEnabled, drivers: authDrivers } },\n storages: {\n work: { type: 'FS', rootPath: flags['storage-work'] },\n },\n\n // Backend could consume a lot of CPU power,\n // we want to keep at least a couple for UI and other apps to work.\n numCpu: Math.max(os.cpus().length - 2, 1),\n },\n\n };\n\n logger.info(`Creating instance configuration, data directory and other stuff...`);\n core.createLocalS3(instanceName, createOptions);\n\n if (createOptions.binaryPath || createOptions.sourcesPath) {\n logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);\n return;\n }\n\n platforma\n .getBinary(logger, { version: flags.version })\n .then(() => logger.info(`Instance '${instanceName}' was created. To start it run 'svc up' command`))\n .catch(function (err: Error) {\n logger.error(err.message);\n });\n\n // Log unknown flags that will be passed to backend\n if (backendCommands.length > 0) {\n logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);\n }\n }\n}\n"],"names":["Command","cmdOpts.GlobalFlags","cmdOpts.VersionFlag","cmdOpts.S3AddressesFlags","cmdOpts.AddressesFlags","cmdOpts.PlBinaryFlag","cmdOpts.PlSourcesFlag","cmdOpts.ConfigFlag","cmdOpts.LicenseFlags","cmdOpts.StorageFlag","cmdOpts.StoragePrimaryURLFlag","cmdOpts.StorageWorkPathFlag","cmdOpts.StorageLibraryURLFlag","cmdOpts.PlLogFileFlag","cmdOpts.PlWorkdirFlag","cmdOpts.AuthFlags","Args","ArgParser","util.createLogger","Core","os","platforma\n .getBinary"],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ import { createLogger } from '../../../../util.js';
|
|
|
6
6
|
import state from '../../../../state.js';
|
|
7
7
|
import { getBinary } from '../../../../platforma.js';
|
|
8
8
|
import * as os from 'node:os';
|
|
9
|
+
import { ArgParser } from '../arg-parser.js';
|
|
9
10
|
|
|
10
11
|
class Local extends Command {
|
|
11
12
|
static description = 'Run Platforma Backend service as local process on current host (no docker container)';
|
|
@@ -31,11 +32,23 @@ class Local extends Command {
|
|
|
31
32
|
name: Args.string({ required: true }),
|
|
32
33
|
};
|
|
33
34
|
async run() {
|
|
34
|
-
|
|
35
|
-
const
|
|
35
|
+
// Use custom parser instead of OCLIF parse
|
|
36
|
+
const parser = new ArgParser(Local.flags);
|
|
37
|
+
const parsed = parser.parse(this.argv);
|
|
38
|
+
// Validate required flags
|
|
39
|
+
const errors = parser.validateRequired(parsed.knownFlags);
|
|
40
|
+
if (errors.length > 0) {
|
|
41
|
+
throw new Error(`Validation errors:\n${errors.join('\n')}`);
|
|
42
|
+
}
|
|
43
|
+
const instanceName = parsed.instanceName;
|
|
44
|
+
const flags = parsed.knownFlags;
|
|
45
|
+
const backendCommands = parsed.unknownFlags;
|
|
46
|
+
if (flags['log-level']) {
|
|
47
|
+
backendCommands.push(`--log-level=${flags['log-level']}`);
|
|
48
|
+
}
|
|
49
|
+
const logger = createLogger(flags['log-level'] || 'info');
|
|
36
50
|
const core = new Core(logger);
|
|
37
51
|
core.mergeLicenseEnvs(flags);
|
|
38
|
-
const instanceName = args.name;
|
|
39
52
|
const workdir = flags['pl-workdir'] ?? '.';
|
|
40
53
|
const storage = flags.storage ? path.join(workdir, flags.storage) : state.instanceDir(instanceName);
|
|
41
54
|
const logFile = flags['pl-log-file'] ? path.join(workdir, flags['pl-log-file']) : undefined;
|
|
@@ -66,6 +79,7 @@ class Local extends Command {
|
|
|
66
79
|
libraryURL: flags['storage-library'],
|
|
67
80
|
minioPort: flags['s3-port'],
|
|
68
81
|
minioConsolePort: flags['s3-console-port'],
|
|
82
|
+
backendCommands: backendCommands,
|
|
69
83
|
configOptions: {
|
|
70
84
|
grpc: { listen: listenGrpc },
|
|
71
85
|
monitoring: { listen: listenMon },
|
|
@@ -93,6 +107,10 @@ class Local extends Command {
|
|
|
93
107
|
.catch(function (err) {
|
|
94
108
|
logger.error(err.message);
|
|
95
109
|
});
|
|
110
|
+
// Log unknown flags that will be passed to backend
|
|
111
|
+
if (backendCommands.length > 0) {
|
|
112
|
+
logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);
|
|
113
|
+
}
|
|
96
114
|
}
|
|
97
115
|
}
|
|
98
116
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3.js","sources":["../../../../../src/commands/svc/create/local/s3.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type { createLocalS3Options } from '../../../../core';\nimport Core from '../../../../core';\nimport * as cmdOpts from '../../../../cmd-opts';\nimport * as util from '../../../../util';\nimport state from '../../../../state';\nimport * as platforma from '../../../../platforma';\nimport * as os from 'node:os';\n\nexport default class Local extends Command {\n static override description = 'Run Platforma Backend service as local process on current host (no docker container)';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n ...cmdOpts.VersionFlag,\n\n ...cmdOpts.S3AddressesFlags,\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.PlBinaryFlag,\n ...cmdOpts.PlSourcesFlag,\n\n ...cmdOpts.ConfigFlag,\n\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.StorageFlag,\n ...cmdOpts.StoragePrimaryURLFlag,\n ...cmdOpts.StorageWorkPathFlag,\n ...cmdOpts.StorageLibraryURLFlag,\n\n ...cmdOpts.PlLogFileFlag,\n ...cmdOpts.PlWorkdirFlag,\n ...cmdOpts.AuthFlags,\n };\n\n static args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n const
|
|
1
|
+
{"version":3,"file":"s3.js","sources":["../../../../../src/commands/svc/create/local/s3.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type { createLocalS3Options } from '../../../../core';\nimport Core from '../../../../core';\nimport * as cmdOpts from '../../../../cmd-opts';\nimport * as util from '../../../../util';\nimport state from '../../../../state';\nimport * as platforma from '../../../../platforma';\nimport * as os from 'node:os';\nimport { ArgParser } from '../arg-parser';\n\nexport default class Local extends Command {\n static override description = 'Run Platforma Backend service as local process on current host (no docker container)';\n\n static override examples = ['<%= config.bin %> <%= command.id %>'];\n\n static override flags = {\n ...cmdOpts.GlobalFlags,\n ...cmdOpts.VersionFlag,\n\n ...cmdOpts.S3AddressesFlags,\n ...cmdOpts.AddressesFlags,\n ...cmdOpts.PlBinaryFlag,\n ...cmdOpts.PlSourcesFlag,\n\n ...cmdOpts.ConfigFlag,\n\n ...cmdOpts.LicenseFlags,\n\n ...cmdOpts.StorageFlag,\n ...cmdOpts.StoragePrimaryURLFlag,\n ...cmdOpts.StorageWorkPathFlag,\n ...cmdOpts.StorageLibraryURLFlag,\n\n ...cmdOpts.PlLogFileFlag,\n ...cmdOpts.PlWorkdirFlag,\n ...cmdOpts.AuthFlags,\n };\n\n static override args = {\n name: Args.string({ required: true }),\n };\n\n public async run(): Promise<void> {\n // Use custom parser instead of OCLIF parse\n const parser = new ArgParser(Local.flags);\n const parsed = parser.parse(this.argv);\n\n // Validate required flags\n const errors = parser.validateRequired(parsed.knownFlags);\n if (errors.length > 0) {\n throw new Error(`Validation errors:\\n${errors.join('\\n')}`);\n }\n\n const instanceName = parsed.instanceName;\n const flags = parsed.knownFlags;\n const backendCommands = parsed.unknownFlags;\n if (flags['log-level']){\n backendCommands.push(`--log-level=${flags['log-level']}`);\n }\n\n const logger = util.createLogger(flags['log-level'] || 'info');\n const core = new Core(logger);\n core.mergeLicenseEnvs(flags);\n\n const workdir = flags['pl-workdir'] ?? '.';\n const storage = flags.storage ? path.join(workdir, flags.storage) : state.instanceDir(instanceName);\n const logFile = flags['pl-log-file'] ? path.join(workdir, flags['pl-log-file']) : undefined;\n\n const authDrivers = core.initAuthDriversList(flags, workdir);\n const authEnabled = flags['auth-enabled'] ?? authDrivers !== undefined;\n\n let listenGrpc: string = '127.0.0.1:6345';\n if (flags['grpc-listen']) listenGrpc = flags['grpc-listen'];\n else if (flags['grpc-port']) listenGrpc = `127.0.0.1:${flags['grpc-port']}`;\n\n let listenMon: string = '127.0.0.1:9090';\n if (flags['monitoring-listen']) listenMon = flags['monitoring-listen'];\n else if (flags['monitoring-port']) listenMon = `127.0.0.1:${flags['monitoring-port']}`;\n\n let listenDbg: string = '127.0.0.1:9091';\n if (flags['debug-listen']) listenDbg = flags['debug-listen'];\n else if (flags['debug-port']) listenDbg = `127.0.0.1:${flags['debug-port']}`;\n\n const createOptions: createLocalS3Options = {\n sourcesPath: flags['pl-sources'],\n binaryPath: flags['pl-binary'],\n\n version: flags.version,\n configPath: flags.config,\n workdir: flags['pl-workdir'],\n\n primaryURL: flags['storage-primary'],\n libraryURL: flags['storage-library'],\n\n minioPort: flags['s3-port'],\n minioConsolePort: flags['s3-console-port'],\n\n backendCommands: backendCommands,\n\n configOptions: {\n grpc: { listen: listenGrpc },\n monitoring: { listen: listenMon },\n debug: { listen: listenDbg },\n license: { value: flags['license'], file: flags['license-file'] },\n log: { path: logFile },\n localRoot: storage,\n core: { auth: { enabled: authEnabled, drivers: authDrivers } },\n storages: {\n work: { type: 'FS', rootPath: flags['storage-work'] },\n },\n\n // Backend could consume a lot of CPU power,\n // we want to keep at least a couple for UI and other apps to work.\n numCpu: Math.max(os.cpus().length - 2, 1),\n },\n\n };\n\n logger.info(`Creating instance configuration, data directory and other stuff...`);\n core.createLocalS3(instanceName, createOptions);\n\n if (createOptions.binaryPath || createOptions.sourcesPath) {\n logger.info(`Instance '${instanceName}' was created. To start it run 'up' command`);\n return;\n }\n\n platforma\n .getBinary(logger, { version: flags.version })\n .then(() => logger.info(`Instance '${instanceName}' was created. To start it run 'svc up' command`))\n .catch(function (err: Error) {\n logger.error(err.message);\n });\n\n // Log unknown flags that will be passed to backend\n if (backendCommands.length > 0) {\n logger.info(`Unknown flags will be passed to backend: ${backendCommands.join(' ')}`);\n }\n }\n}\n"],"names":["cmdOpts.GlobalFlags","cmdOpts.VersionFlag","cmdOpts.S3AddressesFlags","cmdOpts.AddressesFlags","cmdOpts.PlBinaryFlag","cmdOpts.PlSourcesFlag","cmdOpts.ConfigFlag","cmdOpts.LicenseFlags","cmdOpts.StorageFlag","cmdOpts.StoragePrimaryURLFlag","cmdOpts.StorageWorkPathFlag","cmdOpts.StorageLibraryURLFlag","cmdOpts.PlLogFileFlag","cmdOpts.PlWorkdirFlag","cmdOpts.AuthFlags","util.createLogger","platforma\n .getBinary"],"mappings":";;;;;;;;;;AAWc,MAAO,KAAM,SAAQ,OAAO,CAAA;AACxC,IAAA,OAAgB,WAAW,GAAG,sFAAsF;AAEpH,IAAA,OAAgB,QAAQ,GAAG,CAAC,qCAAqC,CAAC;IAElE,OAAgB,KAAK,GAAG;QACtB,GAAGA,WAAmB;QACtB,GAAGC,WAAmB;QAEtB,GAAGC,gBAAwB;QAC3B,GAAGC,cAAsB;QACzB,GAAGC,YAAoB;QACvB,GAAGC,aAAqB;QAExB,GAAGC,UAAkB;QAErB,GAAGC,YAAoB;QAEvB,GAAGC,WAAmB;QACtB,GAAGC,qBAA6B;QAChC,GAAGC,mBAA2B;QAC9B,GAAGC,qBAA6B;QAEhC,GAAGC,aAAqB;QACxB,GAAGC,aAAqB;QACxB,GAAGC,SAAiB;KACrB;IAED,OAAgB,IAAI,GAAG;QACrB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;KACtC;AAEM,IAAA,MAAM,GAAG,GAAA;;QAEd,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;;QAGtC,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC;AACzD,QAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AACrB,YAAA,MAAM,IAAI,KAAK,CAAC,CAAA,oBAAA,EAAuB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE,CAAC;QAC7D;AAEA,QAAA,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY;AACxC,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU;AAC/B,QAAA,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY;AAC3C,QAAA,IAAI,KAAK,CAAC,WAAW,CAAC,EAAC;YACrB,eAAe,CAAC,IAAI,CAAC,CAAA,YAAA,EAAe,KAAK,CAAC,WAAW,CAAC,CAAA,CAAE,CAAC;QAC3D;AAEA,QAAA,MAAM,MAAM,GAAGC,YAAiB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC;AAC9D,QAAA,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC;AAC7B,QAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;QAE5B,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG;QAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC;QACnG,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,SAAS;QAE3F,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC;QAC5D,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,IAAI,WAAW,KAAK,SAAS;QAEtE,IAAI,UAAU,GAAW,gBAAgB;QACzC,IAAI,KAAK,CAAC,aAAa,CAAC;AAAE,YAAA,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC;aACtD,IAAI,KAAK,CAAC,WAAW,CAAC;AAAE,YAAA,UAAU,GAAG,CAAA,UAAA,EAAa,KAAK,CAAC,WAAW,CAAC,EAAE;QAE3E,IAAI,SAAS,GAAW,gBAAgB;QACxC,IAAI,KAAK,CAAC,mBAAmB,CAAC;AAAE,YAAA,SAAS,GAAG,KAAK,CAAC,mBAAmB,CAAC;aACjE,IAAI,KAAK,CAAC,iBAAiB,CAAC;AAAE,YAAA,SAAS,GAAG,CAAA,UAAA,EAAa,KAAK,CAAC,iBAAiB,CAAC,EAAE;QAEtF,IAAI,SAAS,GAAW,gBAAgB;QACxC,IAAI,KAAK,CAAC,cAAc,CAAC;AAAE,YAAA,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC;aACvD,IAAI,KAAK,CAAC,YAAY,CAAC;AAAE,YAAA,SAAS,GAAG,CAAA,UAAA,EAAa,KAAK,CAAC,YAAY,CAAC,EAAE;AAE5E,QAAA,MAAM,aAAa,GAAyB;AAC1C,YAAA,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC;AAChC,YAAA,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC;YAE9B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,KAAK,CAAC,MAAM;AACxB,YAAA,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC;AAE5B,YAAA,UAAU,EAAE,KAAK,CAAC,iBAAiB,CAAC;AACpC,YAAA,UAAU,EAAE,KAAK,CAAC,iBAAiB,CAAC;AAEpC,YAAA,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;AAC3B,YAAA,gBAAgB,EAAE,KAAK,CAAC,iBAAiB,CAAC;AAE1C,YAAA,eAAe,EAAE,eAAe;AAEhC,YAAA,aAAa,EAAE;AACb,gBAAA,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE;AAC5B,gBAAA,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE;AACjC,gBAAA,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE;AAC5B,gBAAA,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE;AACjE,gBAAA,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AACtB,gBAAA,SAAS,EAAE,OAAO;AAClB,gBAAA,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE;AAC9D,gBAAA,QAAQ,EAAE;AACR,oBAAA,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE;AACtD,iBAAA;;;AAID,gBAAA,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;AAC1C,aAAA;SAEF;AAED,QAAA,MAAM,CAAC,IAAI,CAAC,CAAA,kEAAA,CAAoE,CAAC;AACjF,QAAA,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC;QAE/C,IAAI,aAAa,CAAC,UAAU,IAAI,aAAa,CAAC,WAAW,EAAE;AACzD,YAAA,MAAM,CAAC,IAAI,CAAC,aAAa,YAAY,CAAA,2CAAA,CAA6C,CAAC;YACnF;QACF;QAEAC,SACY,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;AAC5C,aAAA,IAAI,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAA,UAAA,EAAa,YAAY,CAAA,+CAAA,CAAiD,CAAC;aAClG,KAAK,CAAC,UAAU,GAAU,EAAA;AACzB,YAAA,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;AAC3B,QAAA,CAAC,CAAC;;AAGJ,QAAA,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;AAC9B,YAAA,MAAM,CAAC,IAAI,CAAC,CAAA,yCAAA,EAA4C,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAE,CAAC;QACtF;IACF;;;;;"}
|