@platforma-sdk/bootstrap 5.2.32 → 5.2.34

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 (47) hide show
  1. package/dist/block.cjs +1 -1
  2. package/dist/block.cjs.map +1 -1
  3. package/dist/block.d.ts.map +1 -1
  4. package/dist/block.js +1 -1
  5. package/dist/block.js.map +1 -1
  6. package/dist/commands/create-block.cjs +2 -2
  7. package/dist/commands/create-block.cjs.map +1 -1
  8. package/dist/commands/create-block.d.ts.map +1 -1
  9. package/dist/commands/create-block.js +2 -2
  10. package/dist/commands/create-block.js.map +1 -1
  11. package/dist/commands/reset.cjs +1 -1
  12. package/dist/commands/reset.cjs.map +1 -1
  13. package/dist/commands/reset.d.ts.map +1 -1
  14. package/dist/commands/reset.js +1 -1
  15. package/dist/commands/reset.js.map +1 -1
  16. package/dist/commands/stop.cjs +1 -1
  17. package/dist/commands/stop.cjs.map +1 -1
  18. package/dist/commands/stop.js +1 -1
  19. package/dist/commands/stop.js.map +1 -1
  20. package/dist/commands/svc/create/arg-parser.cjs +2 -2
  21. package/dist/commands/svc/create/arg-parser.cjs.map +1 -1
  22. package/dist/commands/svc/create/arg-parser.js +2 -2
  23. package/dist/commands/svc/create/arg-parser.js.map +1 -1
  24. package/dist/commands/svc/create/docker/s3.cjs.map +1 -1
  25. package/dist/commands/svc/create/docker/s3.js.map +1 -1
  26. package/dist/commands/svc/create/docker.cjs.map +1 -1
  27. package/dist/commands/svc/create/docker.js.map +1 -1
  28. package/dist/commands/svc/create/local/s3.cjs.map +1 -1
  29. package/dist/commands/svc/create/local/s3.js.map +1 -1
  30. package/dist/commands/svc/create/local.cjs.map +1 -1
  31. package/dist/commands/svc/create/local.js.map +1 -1
  32. package/dist/index.cjs +0 -1
  33. package/dist/index.cjs.map +1 -1
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +0 -1
  36. package/dist/index.js.map +1 -1
  37. package/dist/package.cjs.map +1 -1
  38. package/dist/package.js.map +1 -1
  39. package/dist/templates/pl-config.cjs.map +1 -1
  40. package/dist/templates/pl-config.js.map +1 -1
  41. package/dist/util.cjs +2 -2
  42. package/dist/util.cjs.map +1 -1
  43. package/dist/util.d.ts +1 -1
  44. package/dist/util.d.ts.map +1 -1
  45. package/dist/util.js +2 -2
  46. package/dist/util.js.map +1 -1
  47. package/package.json +9 -8
@@ -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';\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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"}
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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"}
@@ -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';\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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"}
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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"}
@@ -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';\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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"}
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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"}
@@ -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';\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":"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"}
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":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"local.cjs","sources":["../../../../src/commands/svc/create/local.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type { createLocalOptions } 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 type * as types from '../../../templates/types';\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.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 // 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 createOptions: createLocalOptions = {\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 backendCommands: backendCommands,\n\n configOptions: {\n grpc: { listen: flags['grpc-listen'] },\n monitoring: { listen: flags['monitoring-listen'] },\n debug: { listen: flags['debug-listen'] },\n license: { value: flags['license'], file: flags['license-file'] },\n log: { path: flags['pl-log-file'] },\n localRoot: storage,\n core: { auth: authOptions },\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 core.createLocal(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.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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"}
1
+ {"version":3,"file":"local.cjs","sources":["../../../../src/commands/svc/create/local.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type { createLocalOptions } 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 type * as types from '../../../templates/types';\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.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 // 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 createOptions: createLocalOptions = {\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 backendCommands: backendCommands,\n\n configOptions: {\n grpc: { listen: flags['grpc-listen'] },\n monitoring: { listen: flags['monitoring-listen'] },\n debug: { listen: flags['debug-listen'] },\n license: { value: flags['license'], file: flags['license-file'] },\n log: { path: flags['pl-log-file'] },\n localRoot: storage,\n core: { auth: authOptions },\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 core.createLocal(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.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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"local.js","sources":["../../../../src/commands/svc/create/local.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type { createLocalOptions } 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 type * as types from '../../../templates/types';\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.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 // 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 createOptions: createLocalOptions = {\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 backendCommands: backendCommands,\n\n configOptions: {\n grpc: { listen: flags['grpc-listen'] },\n monitoring: { listen: flags['monitoring-listen'] },\n debug: { listen: flags['debug-listen'] },\n license: { value: flags['license'], file: flags['license-file'] },\n log: { path: flags['pl-log-file'] },\n localRoot: storage,\n core: { auth: authOptions },\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 core.createLocal(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.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":"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"}
1
+ {"version":3,"file":"local.js","sources":["../../../../src/commands/svc/create/local.ts"],"sourcesContent":["import { Command, Args } from '@oclif/core';\nimport path from 'node:path';\nimport type { createLocalOptions } 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 type * as types from '../../../templates/types';\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.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 // 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 createOptions: createLocalOptions = {\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 backendCommands: backendCommands,\n\n configOptions: {\n grpc: { listen: flags['grpc-listen'] },\n monitoring: { listen: flags['monitoring-listen'] },\n debug: { listen: flags['debug-listen'] },\n license: { value: flags['license'], file: flags['license-file'] },\n log: { path: flags['pl-log-file'] },\n localRoot: storage,\n core: { auth: authOptions },\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 core.createLocal(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.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":"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"}
package/dist/index.cjs CHANGED
@@ -18,7 +18,6 @@ var s3$1 = require('./commands/svc/create/docker/s3.cjs');
18
18
  var s3 = require('./commands/svc/create/local/s3.cjs');
19
19
 
20
20
  // DO NOT EDIT. This file was generated by oclif-index utility.
21
- // prettier-ignore
22
21
  const COMMANDS = {
23
22
  'create-block': createBlock,
24
23
  'reset': reset,
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/index.ts"],"sourcesContent":["// DO NOT EDIT. This file was generated by oclif-index utility.\n\nimport Cmd0 from './commands/create-block';\nimport Cmd1 from './commands/reset';\nimport Cmd2 from './commands/start';\nimport Cmd3 from './commands/stop';\nimport Cmd4 from './commands/start/docker';\nimport Cmd5 from './commands/start/local';\nimport Cmd6 from './commands/svc/delete';\nimport Cmd7 from './commands/svc/down';\nimport Cmd8 from './commands/svc/list';\nimport Cmd9 from './commands/svc/up';\nimport Cmd10 from './commands/start/docker/s3';\nimport Cmd11 from './commands/start/local/s3';\nimport Cmd13 from './commands/svc/create/docker';\nimport Cmd14 from './commands/svc/create/local';\nimport Cmd15 from './commands/svc/create/docker/s3';\nimport Cmd16 from './commands/svc/create/local/s3';\n\n// prettier-ignore\nexport const COMMANDS = {\n 'create-block': Cmd0,\n 'reset': Cmd1,\n 'start': Cmd2,\n 'stop': Cmd3,\n 'start:docker': Cmd4,\n 'start:local': Cmd5,\n 'svc:delete': Cmd6,\n 'svc:down': Cmd7,\n 'svc:list': Cmd8,\n 'svc:up': Cmd9,\n 'start:docker:s3': Cmd10,\n 'start:local:s3': Cmd11,\n 'svc:create:docker': Cmd13,\n 'svc:create:local': Cmd14,\n 'svc:create:docker:s3': Cmd15,\n 'svc:create:local:s3': Cmd16,\n};\n"],"names":["Cmd0","Cmd1","Cmd2","Cmd3","Cmd4","Cmd5","Cmd6","Cmd7","Cmd8","Cmd9","Cmd10","Cmd11","Cmd13","Cmd14","Cmd15","Cmd16"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAmBA;AACO,MAAM,QAAQ,GAAG;AACtB,IAAA,cAAc,EAAEA,WAAI;AACpB,IAAA,OAAO,EAAEC,KAAI;AACb,IAAA,OAAO,EAAEC,KAAI;AACb,IAAA,MAAM,EAAEC,IAAI;AACZ,IAAA,cAAc,EAAEC,QAAI;AACpB,IAAA,aAAa,EAAEC,OAAI;AACnB,IAAA,YAAY,EAAEC,OAAI;AAClB,IAAA,UAAU,EAAEC,IAAI;AAChB,IAAA,UAAU,EAAEC,IAAI;AAChB,IAAA,QAAQ,EAAEC,EAAI;AACd,IAAA,iBAAiB,EAAEC,IAAK;AACxB,IAAA,gBAAgB,EAAEC,IAAK;AACvB,IAAA,mBAAmB,EAAEC,MAAK;AAC1B,IAAA,kBAAkB,EAAEC,KAAK;AACzB,IAAA,sBAAsB,EAAEC,IAAK;AAC7B,IAAA,qBAAqB,EAAEC,EAAK;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/index.ts"],"sourcesContent":["// DO NOT EDIT. This file was generated by oclif-index utility.\n\nimport Cmd0 from './commands/create-block';\nimport Cmd1 from './commands/reset';\nimport Cmd2 from './commands/start';\nimport Cmd3 from './commands/stop';\nimport Cmd4 from './commands/start/docker';\nimport Cmd5 from './commands/start/local';\nimport Cmd6 from './commands/svc/delete';\nimport Cmd7 from './commands/svc/down';\nimport Cmd8 from './commands/svc/list';\nimport Cmd9 from './commands/svc/up';\nimport Cmd10 from './commands/start/docker/s3';\nimport Cmd11 from './commands/start/local/s3';\nimport Cmd13 from './commands/svc/create/docker';\nimport Cmd14 from './commands/svc/create/local';\nimport Cmd15 from './commands/svc/create/docker/s3';\nimport Cmd16 from './commands/svc/create/local/s3';\n\nexport const COMMANDS = {\n 'create-block': Cmd0,\n 'reset': Cmd1,\n 'start': Cmd2,\n 'stop': Cmd3,\n 'start:docker': Cmd4,\n 'start:local': Cmd5,\n 'svc:delete': Cmd6,\n 'svc:down': Cmd7,\n 'svc:list': Cmd8,\n 'svc:up': Cmd9,\n 'start:docker:s3': Cmd10,\n 'start:local:s3': Cmd11,\n 'svc:create:docker': Cmd13,\n 'svc:create:local': Cmd14,\n 'svc:create:docker:s3': Cmd15,\n 'svc:create:local:s3': Cmd16,\n};\n"],"names":["Cmd0","Cmd1","Cmd2","Cmd3","Cmd4","Cmd5","Cmd6","Cmd7","Cmd8","Cmd9","Cmd10","Cmd11","Cmd13","Cmd14","Cmd15","Cmd16"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAmBO,MAAM,QAAQ,GAAG;AACtB,IAAA,cAAc,EAAEA,WAAI;AACpB,IAAA,OAAO,EAAEC,KAAI;AACb,IAAA,OAAO,EAAEC,KAAI;AACb,IAAA,MAAM,EAAEC,IAAI;AACZ,IAAA,cAAc,EAAEC,QAAI;AACpB,IAAA,aAAa,EAAEC,OAAI;AACnB,IAAA,YAAY,EAAEC,OAAI;AAClB,IAAA,UAAU,EAAEC,IAAI;AAChB,IAAA,UAAU,EAAEC,IAAI;AAChB,IAAA,QAAQ,EAAEC,EAAI;AACd,IAAA,iBAAiB,EAAEC,IAAK;AACxB,IAAA,gBAAgB,EAAEC,IAAK;AACvB,IAAA,mBAAmB,EAAEC,MAAK;AAC1B,IAAA,kBAAkB,EAAEC,KAAK;AACzB,IAAA,sBAAsB,EAAEC,IAAK;AAC7B,IAAA,qBAAqB,EAAEC,EAAK;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,yBAAyB,CAAC;AAC3C,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,IAAI,MAAM,iBAAiB,CAAC;AACnC,OAAO,IAAI,MAAM,yBAAyB,CAAC;AAC3C,OAAO,IAAI,MAAM,wBAAwB,CAAC;AAC1C,OAAO,IAAI,MAAM,uBAAuB,CAAC;AACzC,OAAO,IAAI,MAAM,qBAAqB,CAAC;AACvC,OAAO,IAAI,MAAM,qBAAqB,CAAC;AACvC,OAAO,IAAI,MAAM,mBAAmB,CAAC;AACrC,OAAO,KAAK,MAAM,4BAA4B,CAAC;AAC/C,OAAO,KAAK,MAAM,2BAA2B,CAAC;AAC9C,OAAO,KAAK,MAAM,8BAA8B,CAAC;AACjD,OAAO,KAAK,MAAM,6BAA6B,CAAC;AAChD,OAAO,KAAK,MAAM,iCAAiC,CAAC;AACpD,OAAO,KAAK,MAAM,gCAAgC,CAAC;AAGnD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;CAiBpB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,yBAAyB,CAAC;AAC3C,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,IAAI,MAAM,kBAAkB,CAAC;AACpC,OAAO,IAAI,MAAM,iBAAiB,CAAC;AACnC,OAAO,IAAI,MAAM,yBAAyB,CAAC;AAC3C,OAAO,IAAI,MAAM,wBAAwB,CAAC;AAC1C,OAAO,IAAI,MAAM,uBAAuB,CAAC;AACzC,OAAO,IAAI,MAAM,qBAAqB,CAAC;AACvC,OAAO,IAAI,MAAM,qBAAqB,CAAC;AACvC,OAAO,IAAI,MAAM,mBAAmB,CAAC;AACrC,OAAO,KAAK,MAAM,4BAA4B,CAAC;AAC/C,OAAO,KAAK,MAAM,2BAA2B,CAAC;AAC9C,OAAO,KAAK,MAAM,8BAA8B,CAAC;AACjD,OAAO,KAAK,MAAM,6BAA6B,CAAC;AAChD,OAAO,KAAK,MAAM,iCAAiC,CAAC;AACpD,OAAO,KAAK,MAAM,gCAAgC,CAAC;AAEnD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;CAiBpB,CAAC"}
package/dist/index.js CHANGED
@@ -16,7 +16,6 @@ import S3 from './commands/svc/create/docker/s3.js';
16
16
  import Local from './commands/svc/create/local/s3.js';
17
17
 
18
18
  // DO NOT EDIT. This file was generated by oclif-index utility.
19
- // prettier-ignore
20
19
  const COMMANDS = {
21
20
  'create-block': CreateBlock,
22
21
  'reset': Reset,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["// DO NOT EDIT. This file was generated by oclif-index utility.\n\nimport Cmd0 from './commands/create-block';\nimport Cmd1 from './commands/reset';\nimport Cmd2 from './commands/start';\nimport Cmd3 from './commands/stop';\nimport Cmd4 from './commands/start/docker';\nimport Cmd5 from './commands/start/local';\nimport Cmd6 from './commands/svc/delete';\nimport Cmd7 from './commands/svc/down';\nimport Cmd8 from './commands/svc/list';\nimport Cmd9 from './commands/svc/up';\nimport Cmd10 from './commands/start/docker/s3';\nimport Cmd11 from './commands/start/local/s3';\nimport Cmd13 from './commands/svc/create/docker';\nimport Cmd14 from './commands/svc/create/local';\nimport Cmd15 from './commands/svc/create/docker/s3';\nimport Cmd16 from './commands/svc/create/local/s3';\n\n// prettier-ignore\nexport const COMMANDS = {\n 'create-block': Cmd0,\n 'reset': Cmd1,\n 'start': Cmd2,\n 'stop': Cmd3,\n 'start:docker': Cmd4,\n 'start:local': Cmd5,\n 'svc:delete': Cmd6,\n 'svc:down': Cmd7,\n 'svc:list': Cmd8,\n 'svc:up': Cmd9,\n 'start:docker:s3': Cmd10,\n 'start:local:s3': Cmd11,\n 'svc:create:docker': Cmd13,\n 'svc:create:local': Cmd14,\n 'svc:create:docker:s3': Cmd15,\n 'svc:create:local:s3': Cmd16,\n};\n"],"names":["Cmd0","Cmd1","Cmd2","Cmd3","Cmd4","Cmd5","Cmd6","Cmd7","Cmd8","Cmd9","Cmd10","Cmd11","Cmd13","Cmd14","Cmd15","Cmd16"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAmBA;AACO,MAAM,QAAQ,GAAG;AACtB,IAAA,cAAc,EAAEA,WAAI;AACpB,IAAA,OAAO,EAAEC,KAAI;AACb,IAAA,OAAO,EAAEC,KAAI;AACb,IAAA,MAAM,EAAEC,IAAI;AACZ,IAAA,cAAc,EAAEC,QAAI;AACpB,IAAA,aAAa,EAAEC,OAAI;AACnB,IAAA,YAAY,EAAEC,MAAI;AAClB,IAAA,UAAU,EAAEC,IAAI;AAChB,IAAA,UAAU,EAAEC,IAAI;AAChB,IAAA,QAAQ,EAAEC,EAAI;AACd,IAAA,iBAAiB,EAAEC,IAAK;AACxB,IAAA,gBAAgB,EAAEC,IAAK;AACvB,IAAA,mBAAmB,EAAEC,MAAK;AAC1B,IAAA,kBAAkB,EAAEC,OAAK;AACzB,IAAA,sBAAsB,EAAEC,EAAK;AAC7B,IAAA,qBAAqB,EAAEC,KAAK;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["// DO NOT EDIT. This file was generated by oclif-index utility.\n\nimport Cmd0 from './commands/create-block';\nimport Cmd1 from './commands/reset';\nimport Cmd2 from './commands/start';\nimport Cmd3 from './commands/stop';\nimport Cmd4 from './commands/start/docker';\nimport Cmd5 from './commands/start/local';\nimport Cmd6 from './commands/svc/delete';\nimport Cmd7 from './commands/svc/down';\nimport Cmd8 from './commands/svc/list';\nimport Cmd9 from './commands/svc/up';\nimport Cmd10 from './commands/start/docker/s3';\nimport Cmd11 from './commands/start/local/s3';\nimport Cmd13 from './commands/svc/create/docker';\nimport Cmd14 from './commands/svc/create/local';\nimport Cmd15 from './commands/svc/create/docker/s3';\nimport Cmd16 from './commands/svc/create/local/s3';\n\nexport const COMMANDS = {\n 'create-block': Cmd0,\n 'reset': Cmd1,\n 'start': Cmd2,\n 'stop': Cmd3,\n 'start:docker': Cmd4,\n 'start:local': Cmd5,\n 'svc:delete': Cmd6,\n 'svc:down': Cmd7,\n 'svc:list': Cmd8,\n 'svc:up': Cmd9,\n 'start:docker:s3': Cmd10,\n 'start:local:s3': Cmd11,\n 'svc:create:docker': Cmd13,\n 'svc:create:local': Cmd14,\n 'svc:create:docker:s3': Cmd15,\n 'svc:create:local:s3': Cmd16,\n};\n"],"names":["Cmd0","Cmd1","Cmd2","Cmd3","Cmd4","Cmd5","Cmd6","Cmd7","Cmd8","Cmd9","Cmd10","Cmd11","Cmd13","Cmd14","Cmd15","Cmd16"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAmBO,MAAM,QAAQ,GAAG;AACtB,IAAA,cAAc,EAAEA,WAAI;AACpB,IAAA,OAAO,EAAEC,KAAI;AACb,IAAA,OAAO,EAAEC,KAAI;AACb,IAAA,MAAM,EAAEC,IAAI;AACZ,IAAA,cAAc,EAAEC,QAAI;AACpB,IAAA,aAAa,EAAEC,OAAI;AACnB,IAAA,YAAY,EAAEC,MAAI;AAClB,IAAA,UAAU,EAAEC,IAAI;AAChB,IAAA,UAAU,EAAEC,IAAI;AAChB,IAAA,QAAQ,EAAEC,EAAI;AACd,IAAA,iBAAiB,EAAEC,IAAK;AACxB,IAAA,gBAAgB,EAAEC,IAAK;AACvB,IAAA,mBAAmB,EAAEC,MAAK;AAC1B,IAAA,kBAAkB,EAAEC,OAAK;AACzB,IAAA,sBAAsB,EAAEC,EAAK;AAC7B,IAAA,qBAAqB,EAAEC,KAAK;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"package.cjs","sources":["../src/package.ts"],"sourcesContent":["import { resolve } from 'path';\nimport * as fs from 'fs';\nimport { getDefaultPlVersion } from '@milaboratories/pl-deployments';\nimport { dirname } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst __dirname = dirname(fileURLToPath(import.meta.url));\n\nexport function path(...p: string[]): string {\n return resolve(__dirname, '..', ...p);\n}\n\nexport function dist(...p: string[]): string {\n return path('dist', ...p);\n}\n\nexport function assets(...p: string[]): string {\n return path('assets', ...p);\n}\n\nexport function composeFiles(): string[] {\n const dockerDirEntries = fs.readdirSync(assets());\n return dockerDirEntries\n .filter((entry) => {\n return entry.startsWith('compose-') && entry.endsWith('.yaml');\n })\n .map((value) => assets(value));\n}\n\nexport function readFileSync(...p: string[]): Buffer {\n return fs.readFileSync(path(...p));\n}\n\nexport function plImageTag(version?: string): string {\n if (!version) {\n version = getDefaultPlVersion();\n }\n\n return `quay.io/milaboratories/platforma:${version}`;\n}\n"],"names":["__dirname","dirname","fileURLToPath","resolve","fs","getDefaultPlVersion"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAMA,WAAS,GAAGC,cAAO,CAACC,sBAAa,CAAC,6PAAe,CAAC,CAAC;AAEnD,SAAU,IAAI,CAAC,GAAG,CAAW,EAAA;IACjC,OAAOC,cAAO,CAACH,WAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AACvC;AAMM,SAAU,MAAM,CAAC,GAAG,CAAW,EAAA;AACnC,IAAA,OAAO,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AAC7B;AAWM,SAAU,YAAY,CAAC,GAAG,CAAW,EAAA;IACzC,OAAOI,aAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACpC;AAEM,SAAU,UAAU,CAAC,OAAgB,EAAA;IACzC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,GAAGC,iCAAmB,EAAE;IACjC;IAEA,OAAO,CAAA,iCAAA,EAAoC,OAAO,CAAA,CAAE;AACtD;;;;;;;"}
1
+ {"version":3,"file":"package.cjs","sources":["../src/package.ts"],"sourcesContent":["import { resolve } from 'node:path';\nimport * as fs from 'node:fs';\nimport { getDefaultPlVersion } from '@milaboratories/pl-deployments';\nimport { dirname } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst __dirname = dirname(fileURLToPath(import.meta.url));\n\nexport function path(...p: string[]): string {\n return resolve(__dirname, '..', ...p);\n}\n\nexport function dist(...p: string[]): string {\n return path('dist', ...p);\n}\n\nexport function assets(...p: string[]): string {\n return path('assets', ...p);\n}\n\nexport function composeFiles(): string[] {\n const dockerDirEntries = fs.readdirSync(assets());\n return dockerDirEntries\n .filter((entry) => {\n return entry.startsWith('compose-') && entry.endsWith('.yaml');\n })\n .map((value) => assets(value));\n}\n\nexport function readFileSync(...p: string[]): Buffer {\n return fs.readFileSync(path(...p));\n}\n\nexport function plImageTag(version?: string): string {\n if (!version) {\n version = getDefaultPlVersion();\n }\n\n return `quay.io/milaboratories/platforma:${version}`;\n}\n"],"names":["__dirname","dirname","fileURLToPath","resolve","fs","getDefaultPlVersion"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAMA,WAAS,GAAGC,cAAO,CAACC,sBAAa,CAAC,6PAAe,CAAC,CAAC;AAEnD,SAAU,IAAI,CAAC,GAAG,CAAW,EAAA;IACjC,OAAOC,cAAO,CAACH,WAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AACvC;AAMM,SAAU,MAAM,CAAC,GAAG,CAAW,EAAA;AACnC,IAAA,OAAO,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AAC7B;AAWM,SAAU,YAAY,CAAC,GAAG,CAAW,EAAA;IACzC,OAAOI,aAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACpC;AAEM,SAAU,UAAU,CAAC,OAAgB,EAAA;IACzC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,GAAGC,iCAAmB,EAAE;IACjC;IAEA,OAAO,CAAA,iCAAA,EAAoC,OAAO,CAAA,CAAE;AACtD;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"package.js","sources":["../src/package.ts"],"sourcesContent":["import { resolve } from 'path';\nimport * as fs from 'fs';\nimport { getDefaultPlVersion } from '@milaboratories/pl-deployments';\nimport { dirname } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst __dirname = dirname(fileURLToPath(import.meta.url));\n\nexport function path(...p: string[]): string {\n return resolve(__dirname, '..', ...p);\n}\n\nexport function dist(...p: string[]): string {\n return path('dist', ...p);\n}\n\nexport function assets(...p: string[]): string {\n return path('assets', ...p);\n}\n\nexport function composeFiles(): string[] {\n const dockerDirEntries = fs.readdirSync(assets());\n return dockerDirEntries\n .filter((entry) => {\n return entry.startsWith('compose-') && entry.endsWith('.yaml');\n })\n .map((value) => assets(value));\n}\n\nexport function readFileSync(...p: string[]): Buffer {\n return fs.readFileSync(path(...p));\n}\n\nexport function plImageTag(version?: string): string {\n if (!version) {\n version = getDefaultPlVersion();\n }\n\n return `quay.io/milaboratories/platforma:${version}`;\n}\n"],"names":[],"mappings":";;;;;AAMA,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEnD,SAAU,IAAI,CAAC,GAAG,CAAW,EAAA;IACjC,OAAO,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AACvC;AAMM,SAAU,MAAM,CAAC,GAAG,CAAW,EAAA;AACnC,IAAA,OAAO,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AAC7B;AAWM,SAAU,YAAY,CAAC,GAAG,CAAW,EAAA;IACzC,OAAO,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACpC;AAEM,SAAU,UAAU,CAAC,OAAgB,EAAA;IACzC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,GAAG,mBAAmB,EAAE;IACjC;IAEA,OAAO,CAAA,iCAAA,EAAoC,OAAO,CAAA,CAAE;AACtD;;;;"}
1
+ {"version":3,"file":"package.js","sources":["../src/package.ts"],"sourcesContent":["import { resolve } from 'node:path';\nimport * as fs from 'node:fs';\nimport { getDefaultPlVersion } from '@milaboratories/pl-deployments';\nimport { dirname } from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\nconst __dirname = dirname(fileURLToPath(import.meta.url));\n\nexport function path(...p: string[]): string {\n return resolve(__dirname, '..', ...p);\n}\n\nexport function dist(...p: string[]): string {\n return path('dist', ...p);\n}\n\nexport function assets(...p: string[]): string {\n return path('assets', ...p);\n}\n\nexport function composeFiles(): string[] {\n const dockerDirEntries = fs.readdirSync(assets());\n return dockerDirEntries\n .filter((entry) => {\n return entry.startsWith('compose-') && entry.endsWith('.yaml');\n })\n .map((value) => assets(value));\n}\n\nexport function readFileSync(...p: string[]): Buffer {\n return fs.readFileSync(path(...p));\n}\n\nexport function plImageTag(version?: string): string {\n if (!version) {\n version = getDefaultPlVersion();\n }\n\n return `quay.io/milaboratories/platforma:${version}`;\n}\n"],"names":[],"mappings":";;;;;AAMA,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEnD,SAAU,IAAI,CAAC,GAAG,CAAW,EAAA;IACjC,OAAO,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AACvC;AAMM,SAAU,MAAM,CAAC,GAAG,CAAW,EAAA;AACnC,IAAA,OAAO,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AAC7B;AAWM,SAAU,YAAY,CAAC,GAAG,CAAW,EAAA;IACzC,OAAO,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACpC;AAEM,SAAU,UAAU,CAAC,OAAgB,EAAA;IACzC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,GAAG,mBAAmB,EAAE;IACjC;IAEA,OAAO,CAAA,iCAAA,EAAoC,OAAO,CAAA,CAAE;AACtD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"pl-config.cjs","sources":["../../src/templates/pl-config.ts"],"sourcesContent":["import fs from 'node:fs';\nimport * as types from './types';\nimport { assertNever, resolveTilde } from '../util';\nimport state from '../state';\n\nexport type { plOptions } from './types';\n\nexport function storageSettingsFromURL(\n storageURL: string,\n baseDir?: string,\n defaults?: types.storageOptions,\n): types.storageOptions {\n storageURL = resolveTilde(storageURL);\n const url = new URL(storageURL, `file:${baseDir}`);\n\n switch (url.protocol) {\n case 's3:': {\n const bucketName = url.hostname;\n const region = url.searchParams.get('region');\n const keyPrefix = url.pathname.slice(1); // 's3://bucket/' will have '/' as pathname. We don't want to always have '/' prefix\n\n return {\n ...defaults,\n\n type: 'S3',\n bucketName,\n region,\n keyPrefix,\n } as types.storageOptions;\n }\n case 's3e:': {\n const p = url.pathname.split('/').slice(1); // '/bucket/key/prefix' -> ['', 'bucket', 'key' 'prefix'] -> ['bucket', 'key', 'prefix']\n const bucketName = p[0];\n const keyPrefix = p.length > 1 ? p.slice(1).join('/') : '';\n\n return {\n ...defaults,\n\n type: 'S3',\n endpoint: `http://${url.host}/`,\n bucketName,\n keyPrefix,\n region: url.searchParams.get('region'),\n key: url.username ? `static:${url.username}` : '',\n secret: url.password ? `static:${url.password}` : '',\n } as types.storageOptions;\n }\n case 's3es:': {\n const p = url.pathname.split('/').slice(1); // '/bucket/key/prefix' -> ['', 'bucket', 'key' 'prefix'] -> ['bucket', 'key', 'prefix']\n const bucketName = p[0];\n const keyPrefix = p.length > 1 ? p.slice(1).join('/') : '';\n\n return {\n ...defaults,\n\n type: 'S3',\n endpoint: `https://${url.host}/`,\n bucketName,\n keyPrefix,\n region: url.searchParams.get('region'),\n key: url.username ? `static:${url.username}` : '',\n secret: url.password ? `static:${url.password}` : '',\n } as types.storageOptions;\n }\n case 'file:':\n return {\n type: 'FS',\n rootPath: url.pathname,\n };\n\n default:\n throw new Error(`storage protocol '${url.protocol}' is not supported`);\n }\n}\n\nexport function loadDefaults(jwtKey: string, options?: types.plOptions): types.plSettings {\n const localRoot = options?.localRoot ?? state.instanceDir('default');\n\n const log: types.logSettings = {\n level: options?.log?.level ?? 'info',\n path: options?.log?.path ?? `${localRoot}/logs/platforma.log`,\n };\n\n const grpc: types.grpcSettings = {\n listen: options?.grpc?.listen ?? 'localhost:6345',\n tls: {\n enable: defaultBool(options?.grpc?.tls?.enable, false),\n clientAuthMode: options?.grpc?.tls?.clientAuthMode ?? 'NoAuth',\n certFile: options?.grpc?.tls?.certFile ?? `${localRoot}/certs/tls.cert`,\n keyFile: options?.grpc?.tls?.keyFile ?? `${localRoot}/certs/tls.key`,\n\n ...options?.grpc?.tls,\n },\n };\n\n const core: types.coreSettings = {\n auth: {\n enabled: options?.core?.auth?.enabled ?? false,\n drivers: options?.core?.auth?.drivers ?? [\n { driver: 'jwt', key: jwtKey },\n { driver: 'htpasswd', path: `${localRoot}/users.htpasswd` },\n ],\n },\n db: {\n path: `${localRoot}/db`,\n },\n };\n\n const primary = defaultStorageSettings(\n 'main',\n `${localRoot}/storages/main`,\n 'platforma-primary-bucket',\n options?.storages?.primary,\n );\n\n let work: types.storageSettings;\n const wType = options?.storages?.work?.type;\n switch (wType) {\n case undefined:\n case 'FS':\n work = types.emptyFSSettings('work');\n work.rootPath = options?.storages?.work?.rootPath ?? `${localRoot}/storages/work`;\n work.indexCachePeriod = options?.storages?.work?.indexCachePeriod ?? '1m';\n break;\n\n default:\n throw new Error('work storage MUST have \\'FS\\' type as it is used for working directories management');\n }\n\n const library = defaultStorageSettings(\n 'library',\n `${localRoot}/storages/library`,\n 'platforma-library-bucket',\n options?.storages?.library,\n );\n\n const monitoring: types.monitoringSettings = {\n enabled: defaultBool(options?.monitoring?.enabled, true),\n listen: options?.monitoring?.listen ?? '127.0.0.1:9090',\n };\n const debug: types.debugSettings = {\n enabled: defaultBool(options?.debug?.enabled, true),\n listen: options?.debug?.listen ?? '127.0.0.1:9091',\n };\n const license: types.licenseSettings = {\n value: options?.license?.value ?? '',\n file: options?.license?.file ?? '',\n };\n\n return {\n localRoot,\n license,\n log,\n grpc,\n core,\n monitoring,\n debug,\n numCpu: options?.numCpu,\n storages: { primary, work, library },\n hacks: { libraryDownloadable: true },\n };\n}\n\nfunction defaultStorageSettings(\n storageID: string,\n defaultLocation: string,\n defaultBucket: string,\n options?: types.storageOptions,\n): types.storageSettings {\n let storage: types.storageSettings;\n const pType = options?.type;\n switch (pType) {\n case undefined:\n case 'FS':\n storage = types.emptyFSSettings(storageID);\n storage.rootPath = options?.rootPath ?? defaultLocation;\n break;\n\n case 'S3':\n storage = types.emptyS3Settings(storageID);\n\n storage.endpoint = options?.endpoint;\n storage.region = options?.region;\n storage.presignEndpoint = options?.presignEndpoint ?? options?.endpoint;\n storage.bucketName = options?.bucketName ?? defaultBucket;\n storage.createBucket = defaultBool(options?.createBucket, true);\n storage.forcePathStyle = defaultBool(options?.forcePathStyle, true);\n storage.key = options?.key ?? '';\n storage.secret = options?.secret ?? '';\n storage.keyPrefix = options?.keyPrefix ?? '';\n storage.accessPrefixes = options?.accessPrefixes ?? [''];\n storage.uploadKeyPrefix = options?.uploadKeyPrefix ?? '';\n break;\n\n default:\n assertNever(pType);\n throw new Error('unknown storage type'); // calm down TS type analyzer\n }\n\n return storage;\n}\n\nexport function render(options: types.plSettings): string {\n const disableMon = options.monitoring.enabled ? '' : ' disabled';\n const disableDbg = options.debug.enabled ? '' : ' disabled';\n const libraryDownloadable = options.hacks.libraryDownloadable ? 'true' : 'false';\n let miLicenseSecret = options.license.value;\n if (options.license.file != '') {\n miLicenseSecret = fs.readFileSync(options.license.file).toString().trimEnd();\n }\n\n let cpuLimit = ''\n if (options.numCpu) {\n cpuLimit = `\n resources:\n cpu: ${options.numCpu}\n`;\n }\n\n return `\nlicense:\n value: '${options.license.value}'\n file: '${options.license.file}'\n\nlogging:\n level: '${options.log.level}'\n destinations:\n - path: '${options.log.path}'\n rotation:\n maxSize: 1GiB\n maxBackups: 15\n compress: true\n\nmonitoring${disableMon}:\n listen: '${options.monitoring.listen}'\n\ndebug${disableDbg}:\n listen: '${options.debug.listen}'\n\ncore:\n logging:\n extendedInfo: true\n dumpResourceData: false\n\n grpc:\n listen: '${options.grpc.listen}'\n\n tlsEnabled: ${JSON.stringify(options.grpc.tls.enable)}\n tls:\n clientAuthMode: '${options.grpc.tls.clientAuthMode}'\n certificates:\n - certFile: '${options.grpc.tls.certFile}'\n keyFile: '${options.grpc.tls.keyFile}'\n\n\n authEnabled: ${JSON.stringify(options.core.auth.enabled)}\n auth: ${JSON.stringify(options.core.auth.drivers)}\n db:\n path: '${options.core.db.path}'\n\ncontrollers:\n data:\n main:\n storages:\n main:\n mode: primary\n downloadable: true\n\n library:\n mode: passive\n downloadable: ${libraryDownloadable}\n\n work:\n mode: active\n downloadable: false\n\n storages:\n - ${JSON.stringify(options.storages.primary)}\n - ${JSON.stringify(options.storages.library)}\n - ${JSON.stringify(options.storages.work)}\n\n runner:\n type: local\n storageRoot: '${(options.storages.work).rootPath}'\n workdirCacheOnSuccess: 20m\n workdirCacheOnFailure: 1h\n${cpuLimit}\n secrets:\n - map:\n MI_LICENSE: ${JSON.stringify(miLicenseSecret)}\n\n packageLoader:\n packagesRoot: '${options.localRoot}/packages'\n\n workflows:\n features:\n pureFutureFields: true\n commandExpressions: true\n workdirLimits: true\n computeLimits: false\n`;\n}\n\nfunction defaultBool(v: boolean | undefined, def: boolean): boolean {\n return v === undefined ? def : v;\n}\n"],"names":["resolveTilde","types.emptyFSSettings","types.emptyS3Settings","assertNever"],"mappings":"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"}
1
+ {"version":3,"file":"pl-config.cjs","sources":["../../src/templates/pl-config.ts"],"sourcesContent":["import fs from 'node:fs';\nimport * as types from './types';\nimport { assertNever, resolveTilde } from '../util';\nimport state from '../state';\n\nexport type { plOptions } from './types';\n\nexport function storageSettingsFromURL(\n storageURL: string,\n baseDir?: string,\n defaults?: types.storageOptions,\n): types.storageOptions {\n storageURL = resolveTilde(storageURL);\n const url = new URL(storageURL, `file:${baseDir}`);\n\n switch (url.protocol) {\n case 's3:': {\n const bucketName = url.hostname;\n const region = url.searchParams.get('region');\n const keyPrefix = url.pathname.slice(1); // 's3://bucket/' will have '/' as pathname. We don't want to always have '/' prefix\n\n return {\n ...defaults,\n\n type: 'S3',\n bucketName,\n region,\n keyPrefix,\n } as types.storageOptions;\n }\n case 's3e:': {\n const p = url.pathname.split('/').slice(1); // '/bucket/key/prefix' -> ['', 'bucket', 'key' 'prefix'] -> ['bucket', 'key', 'prefix']\n const bucketName = p[0];\n const keyPrefix = p.length > 1 ? p.slice(1).join('/') : '';\n\n return {\n ...defaults,\n\n type: 'S3',\n endpoint: `http://${url.host}/`,\n bucketName,\n keyPrefix,\n region: url.searchParams.get('region'),\n key: url.username ? `static:${url.username}` : '',\n secret: url.password ? `static:${url.password}` : '',\n } as types.storageOptions;\n }\n case 's3es:': {\n const p = url.pathname.split('/').slice(1); // '/bucket/key/prefix' -> ['', 'bucket', 'key' 'prefix'] -> ['bucket', 'key', 'prefix']\n const bucketName = p[0];\n const keyPrefix = p.length > 1 ? p.slice(1).join('/') : '';\n\n return {\n ...defaults,\n\n type: 'S3',\n endpoint: `https://${url.host}/`,\n bucketName,\n keyPrefix,\n region: url.searchParams.get('region'),\n key: url.username ? `static:${url.username}` : '',\n secret: url.password ? `static:${url.password}` : '',\n } as types.storageOptions;\n }\n case 'file:':\n return {\n type: 'FS',\n rootPath: url.pathname,\n };\n\n default:\n throw new Error(`storage protocol '${url.protocol}' is not supported`);\n }\n}\n\nexport function loadDefaults(jwtKey: string, options?: types.plOptions): types.plSettings {\n const localRoot = options?.localRoot ?? state.instanceDir('default');\n\n const log: types.logSettings = {\n level: options?.log?.level ?? 'info',\n path: options?.log?.path ?? `${localRoot}/logs/platforma.log`,\n };\n\n const grpc: types.grpcSettings = {\n listen: options?.grpc?.listen ?? 'localhost:6345',\n tls: {\n enable: defaultBool(options?.grpc?.tls?.enable, false),\n clientAuthMode: options?.grpc?.tls?.clientAuthMode ?? 'NoAuth',\n certFile: options?.grpc?.tls?.certFile ?? `${localRoot}/certs/tls.cert`,\n keyFile: options?.grpc?.tls?.keyFile ?? `${localRoot}/certs/tls.key`,\n\n ...options?.grpc?.tls,\n },\n };\n\n const core: types.coreSettings = {\n auth: {\n enabled: options?.core?.auth?.enabled ?? false,\n drivers: options?.core?.auth?.drivers ?? [\n { driver: 'jwt', key: jwtKey },\n { driver: 'htpasswd', path: `${localRoot}/users.htpasswd` },\n ],\n },\n db: {\n path: `${localRoot}/db`,\n },\n };\n\n const primary = defaultStorageSettings(\n 'main',\n `${localRoot}/storages/main`,\n 'platforma-primary-bucket',\n options?.storages?.primary,\n );\n\n let work: types.storageSettings;\n const wType = options?.storages?.work?.type;\n switch (wType) {\n case undefined:\n case 'FS':\n work = types.emptyFSSettings('work');\n work.rootPath = options?.storages?.work?.rootPath ?? `${localRoot}/storages/work`;\n work.indexCachePeriod = options?.storages?.work?.indexCachePeriod ?? '1m';\n break;\n\n default:\n throw new Error('work storage MUST have \\'FS\\' type as it is used for working directories management');\n }\n\n const library = defaultStorageSettings(\n 'library',\n `${localRoot}/storages/library`,\n 'platforma-library-bucket',\n options?.storages?.library,\n );\n\n const monitoring: types.monitoringSettings = {\n enabled: defaultBool(options?.monitoring?.enabled, true),\n listen: options?.monitoring?.listen ?? '127.0.0.1:9090',\n };\n const debug: types.debugSettings = {\n enabled: defaultBool(options?.debug?.enabled, true),\n listen: options?.debug?.listen ?? '127.0.0.1:9091',\n };\n const license: types.licenseSettings = {\n value: options?.license?.value ?? '',\n file: options?.license?.file ?? '',\n };\n\n return {\n localRoot,\n license,\n log,\n grpc,\n core,\n monitoring,\n debug,\n numCpu: options?.numCpu,\n storages: { primary, work, library },\n hacks: { libraryDownloadable: true },\n };\n}\n\nfunction defaultStorageSettings(\n storageID: string,\n defaultLocation: string,\n defaultBucket: string,\n options?: types.storageOptions,\n): types.storageSettings {\n let storage: types.storageSettings;\n const pType = options?.type;\n switch (pType) {\n case undefined:\n case 'FS':\n storage = types.emptyFSSettings(storageID);\n storage.rootPath = options?.rootPath ?? defaultLocation;\n break;\n\n case 'S3':\n storage = types.emptyS3Settings(storageID);\n\n storage.endpoint = options?.endpoint;\n storage.region = options?.region;\n storage.presignEndpoint = options?.presignEndpoint ?? options?.endpoint;\n storage.bucketName = options?.bucketName ?? defaultBucket;\n storage.createBucket = defaultBool(options?.createBucket, true);\n storage.forcePathStyle = defaultBool(options?.forcePathStyle, true);\n storage.key = options?.key ?? '';\n storage.secret = options?.secret ?? '';\n storage.keyPrefix = options?.keyPrefix ?? '';\n storage.accessPrefixes = options?.accessPrefixes ?? [''];\n storage.uploadKeyPrefix = options?.uploadKeyPrefix ?? '';\n break;\n\n default:\n assertNever(pType);\n throw new Error('unknown storage type'); // calm down TS type analyzer\n }\n\n return storage;\n}\n\nexport function render(options: types.plSettings): string {\n const disableMon = options.monitoring.enabled ? '' : ' disabled';\n const disableDbg = options.debug.enabled ? '' : ' disabled';\n const libraryDownloadable = options.hacks.libraryDownloadable ? 'true' : 'false';\n let miLicenseSecret = options.license.value;\n if (options.license.file != '') {\n miLicenseSecret = fs.readFileSync(options.license.file).toString().trimEnd();\n }\n\n let cpuLimit = '';\n if (options.numCpu) {\n cpuLimit = `\n resources:\n cpu: ${options.numCpu}\n`;\n }\n\n return `\nlicense:\n value: '${options.license.value}'\n file: '${options.license.file}'\n\nlogging:\n level: '${options.log.level}'\n destinations:\n - path: '${options.log.path}'\n rotation:\n maxSize: 1GiB\n maxBackups: 15\n compress: true\n\nmonitoring${disableMon}:\n listen: '${options.monitoring.listen}'\n\ndebug${disableDbg}:\n listen: '${options.debug.listen}'\n\ncore:\n logging:\n extendedInfo: true\n dumpResourceData: false\n\n grpc:\n listen: '${options.grpc.listen}'\n\n tlsEnabled: ${JSON.stringify(options.grpc.tls.enable)}\n tls:\n clientAuthMode: '${options.grpc.tls.clientAuthMode}'\n certificates:\n - certFile: '${options.grpc.tls.certFile}'\n keyFile: '${options.grpc.tls.keyFile}'\n\n\n authEnabled: ${JSON.stringify(options.core.auth.enabled)}\n auth: ${JSON.stringify(options.core.auth.drivers)}\n db:\n path: '${options.core.db.path}'\n\ncontrollers:\n data:\n main:\n storages:\n main:\n mode: primary\n downloadable: true\n\n library:\n mode: passive\n downloadable: ${libraryDownloadable}\n\n work:\n mode: active\n downloadable: false\n\n storages:\n - ${JSON.stringify(options.storages.primary)}\n - ${JSON.stringify(options.storages.library)}\n - ${JSON.stringify(options.storages.work)}\n\n runner:\n type: local\n storageRoot: '${(options.storages.work).rootPath}'\n workdirCacheOnSuccess: 20m\n workdirCacheOnFailure: 1h\n${cpuLimit}\n secrets:\n - map:\n MI_LICENSE: ${JSON.stringify(miLicenseSecret)}\n\n packageLoader:\n packagesRoot: '${options.localRoot}/packages'\n\n workflows:\n features:\n pureFutureFields: true\n commandExpressions: true\n workdirLimits: true\n computeLimits: false\n`;\n}\n\nfunction defaultBool(v: boolean | undefined, def: boolean): boolean {\n return v === undefined ? def : v;\n}\n"],"names":["resolveTilde","types.emptyFSSettings","types.emptyS3Settings","assertNever"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pl-config.js","sources":["../../src/templates/pl-config.ts"],"sourcesContent":["import fs from 'node:fs';\nimport * as types from './types';\nimport { assertNever, resolveTilde } from '../util';\nimport state from '../state';\n\nexport type { plOptions } from './types';\n\nexport function storageSettingsFromURL(\n storageURL: string,\n baseDir?: string,\n defaults?: types.storageOptions,\n): types.storageOptions {\n storageURL = resolveTilde(storageURL);\n const url = new URL(storageURL, `file:${baseDir}`);\n\n switch (url.protocol) {\n case 's3:': {\n const bucketName = url.hostname;\n const region = url.searchParams.get('region');\n const keyPrefix = url.pathname.slice(1); // 's3://bucket/' will have '/' as pathname. We don't want to always have '/' prefix\n\n return {\n ...defaults,\n\n type: 'S3',\n bucketName,\n region,\n keyPrefix,\n } as types.storageOptions;\n }\n case 's3e:': {\n const p = url.pathname.split('/').slice(1); // '/bucket/key/prefix' -> ['', 'bucket', 'key' 'prefix'] -> ['bucket', 'key', 'prefix']\n const bucketName = p[0];\n const keyPrefix = p.length > 1 ? p.slice(1).join('/') : '';\n\n return {\n ...defaults,\n\n type: 'S3',\n endpoint: `http://${url.host}/`,\n bucketName,\n keyPrefix,\n region: url.searchParams.get('region'),\n key: url.username ? `static:${url.username}` : '',\n secret: url.password ? `static:${url.password}` : '',\n } as types.storageOptions;\n }\n case 's3es:': {\n const p = url.pathname.split('/').slice(1); // '/bucket/key/prefix' -> ['', 'bucket', 'key' 'prefix'] -> ['bucket', 'key', 'prefix']\n const bucketName = p[0];\n const keyPrefix = p.length > 1 ? p.slice(1).join('/') : '';\n\n return {\n ...defaults,\n\n type: 'S3',\n endpoint: `https://${url.host}/`,\n bucketName,\n keyPrefix,\n region: url.searchParams.get('region'),\n key: url.username ? `static:${url.username}` : '',\n secret: url.password ? `static:${url.password}` : '',\n } as types.storageOptions;\n }\n case 'file:':\n return {\n type: 'FS',\n rootPath: url.pathname,\n };\n\n default:\n throw new Error(`storage protocol '${url.protocol}' is not supported`);\n }\n}\n\nexport function loadDefaults(jwtKey: string, options?: types.plOptions): types.plSettings {\n const localRoot = options?.localRoot ?? state.instanceDir('default');\n\n const log: types.logSettings = {\n level: options?.log?.level ?? 'info',\n path: options?.log?.path ?? `${localRoot}/logs/platforma.log`,\n };\n\n const grpc: types.grpcSettings = {\n listen: options?.grpc?.listen ?? 'localhost:6345',\n tls: {\n enable: defaultBool(options?.grpc?.tls?.enable, false),\n clientAuthMode: options?.grpc?.tls?.clientAuthMode ?? 'NoAuth',\n certFile: options?.grpc?.tls?.certFile ?? `${localRoot}/certs/tls.cert`,\n keyFile: options?.grpc?.tls?.keyFile ?? `${localRoot}/certs/tls.key`,\n\n ...options?.grpc?.tls,\n },\n };\n\n const core: types.coreSettings = {\n auth: {\n enabled: options?.core?.auth?.enabled ?? false,\n drivers: options?.core?.auth?.drivers ?? [\n { driver: 'jwt', key: jwtKey },\n { driver: 'htpasswd', path: `${localRoot}/users.htpasswd` },\n ],\n },\n db: {\n path: `${localRoot}/db`,\n },\n };\n\n const primary = defaultStorageSettings(\n 'main',\n `${localRoot}/storages/main`,\n 'platforma-primary-bucket',\n options?.storages?.primary,\n );\n\n let work: types.storageSettings;\n const wType = options?.storages?.work?.type;\n switch (wType) {\n case undefined:\n case 'FS':\n work = types.emptyFSSettings('work');\n work.rootPath = options?.storages?.work?.rootPath ?? `${localRoot}/storages/work`;\n work.indexCachePeriod = options?.storages?.work?.indexCachePeriod ?? '1m';\n break;\n\n default:\n throw new Error('work storage MUST have \\'FS\\' type as it is used for working directories management');\n }\n\n const library = defaultStorageSettings(\n 'library',\n `${localRoot}/storages/library`,\n 'platforma-library-bucket',\n options?.storages?.library,\n );\n\n const monitoring: types.monitoringSettings = {\n enabled: defaultBool(options?.monitoring?.enabled, true),\n listen: options?.monitoring?.listen ?? '127.0.0.1:9090',\n };\n const debug: types.debugSettings = {\n enabled: defaultBool(options?.debug?.enabled, true),\n listen: options?.debug?.listen ?? '127.0.0.1:9091',\n };\n const license: types.licenseSettings = {\n value: options?.license?.value ?? '',\n file: options?.license?.file ?? '',\n };\n\n return {\n localRoot,\n license,\n log,\n grpc,\n core,\n monitoring,\n debug,\n numCpu: options?.numCpu,\n storages: { primary, work, library },\n hacks: { libraryDownloadable: true },\n };\n}\n\nfunction defaultStorageSettings(\n storageID: string,\n defaultLocation: string,\n defaultBucket: string,\n options?: types.storageOptions,\n): types.storageSettings {\n let storage: types.storageSettings;\n const pType = options?.type;\n switch (pType) {\n case undefined:\n case 'FS':\n storage = types.emptyFSSettings(storageID);\n storage.rootPath = options?.rootPath ?? defaultLocation;\n break;\n\n case 'S3':\n storage = types.emptyS3Settings(storageID);\n\n storage.endpoint = options?.endpoint;\n storage.region = options?.region;\n storage.presignEndpoint = options?.presignEndpoint ?? options?.endpoint;\n storage.bucketName = options?.bucketName ?? defaultBucket;\n storage.createBucket = defaultBool(options?.createBucket, true);\n storage.forcePathStyle = defaultBool(options?.forcePathStyle, true);\n storage.key = options?.key ?? '';\n storage.secret = options?.secret ?? '';\n storage.keyPrefix = options?.keyPrefix ?? '';\n storage.accessPrefixes = options?.accessPrefixes ?? [''];\n storage.uploadKeyPrefix = options?.uploadKeyPrefix ?? '';\n break;\n\n default:\n assertNever(pType);\n throw new Error('unknown storage type'); // calm down TS type analyzer\n }\n\n return storage;\n}\n\nexport function render(options: types.plSettings): string {\n const disableMon = options.monitoring.enabled ? '' : ' disabled';\n const disableDbg = options.debug.enabled ? '' : ' disabled';\n const libraryDownloadable = options.hacks.libraryDownloadable ? 'true' : 'false';\n let miLicenseSecret = options.license.value;\n if (options.license.file != '') {\n miLicenseSecret = fs.readFileSync(options.license.file).toString().trimEnd();\n }\n\n let cpuLimit = ''\n if (options.numCpu) {\n cpuLimit = `\n resources:\n cpu: ${options.numCpu}\n`;\n }\n\n return `\nlicense:\n value: '${options.license.value}'\n file: '${options.license.file}'\n\nlogging:\n level: '${options.log.level}'\n destinations:\n - path: '${options.log.path}'\n rotation:\n maxSize: 1GiB\n maxBackups: 15\n compress: true\n\nmonitoring${disableMon}:\n listen: '${options.monitoring.listen}'\n\ndebug${disableDbg}:\n listen: '${options.debug.listen}'\n\ncore:\n logging:\n extendedInfo: true\n dumpResourceData: false\n\n grpc:\n listen: '${options.grpc.listen}'\n\n tlsEnabled: ${JSON.stringify(options.grpc.tls.enable)}\n tls:\n clientAuthMode: '${options.grpc.tls.clientAuthMode}'\n certificates:\n - certFile: '${options.grpc.tls.certFile}'\n keyFile: '${options.grpc.tls.keyFile}'\n\n\n authEnabled: ${JSON.stringify(options.core.auth.enabled)}\n auth: ${JSON.stringify(options.core.auth.drivers)}\n db:\n path: '${options.core.db.path}'\n\ncontrollers:\n data:\n main:\n storages:\n main:\n mode: primary\n downloadable: true\n\n library:\n mode: passive\n downloadable: ${libraryDownloadable}\n\n work:\n mode: active\n downloadable: false\n\n storages:\n - ${JSON.stringify(options.storages.primary)}\n - ${JSON.stringify(options.storages.library)}\n - ${JSON.stringify(options.storages.work)}\n\n runner:\n type: local\n storageRoot: '${(options.storages.work).rootPath}'\n workdirCacheOnSuccess: 20m\n workdirCacheOnFailure: 1h\n${cpuLimit}\n secrets:\n - map:\n MI_LICENSE: ${JSON.stringify(miLicenseSecret)}\n\n packageLoader:\n packagesRoot: '${options.localRoot}/packages'\n\n workflows:\n features:\n pureFutureFields: true\n commandExpressions: true\n workdirLimits: true\n computeLimits: false\n`;\n}\n\nfunction defaultBool(v: boolean | undefined, def: boolean): boolean {\n return v === undefined ? def : v;\n}\n"],"names":["types.emptyFSSettings","types.emptyS3Settings","fs"],"mappings":"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"}
1
+ {"version":3,"file":"pl-config.js","sources":["../../src/templates/pl-config.ts"],"sourcesContent":["import fs from 'node:fs';\nimport * as types from './types';\nimport { assertNever, resolveTilde } from '../util';\nimport state from '../state';\n\nexport type { plOptions } from './types';\n\nexport function storageSettingsFromURL(\n storageURL: string,\n baseDir?: string,\n defaults?: types.storageOptions,\n): types.storageOptions {\n storageURL = resolveTilde(storageURL);\n const url = new URL(storageURL, `file:${baseDir}`);\n\n switch (url.protocol) {\n case 's3:': {\n const bucketName = url.hostname;\n const region = url.searchParams.get('region');\n const keyPrefix = url.pathname.slice(1); // 's3://bucket/' will have '/' as pathname. We don't want to always have '/' prefix\n\n return {\n ...defaults,\n\n type: 'S3',\n bucketName,\n region,\n keyPrefix,\n } as types.storageOptions;\n }\n case 's3e:': {\n const p = url.pathname.split('/').slice(1); // '/bucket/key/prefix' -> ['', 'bucket', 'key' 'prefix'] -> ['bucket', 'key', 'prefix']\n const bucketName = p[0];\n const keyPrefix = p.length > 1 ? p.slice(1).join('/') : '';\n\n return {\n ...defaults,\n\n type: 'S3',\n endpoint: `http://${url.host}/`,\n bucketName,\n keyPrefix,\n region: url.searchParams.get('region'),\n key: url.username ? `static:${url.username}` : '',\n secret: url.password ? `static:${url.password}` : '',\n } as types.storageOptions;\n }\n case 's3es:': {\n const p = url.pathname.split('/').slice(1); // '/bucket/key/prefix' -> ['', 'bucket', 'key' 'prefix'] -> ['bucket', 'key', 'prefix']\n const bucketName = p[0];\n const keyPrefix = p.length > 1 ? p.slice(1).join('/') : '';\n\n return {\n ...defaults,\n\n type: 'S3',\n endpoint: `https://${url.host}/`,\n bucketName,\n keyPrefix,\n region: url.searchParams.get('region'),\n key: url.username ? `static:${url.username}` : '',\n secret: url.password ? `static:${url.password}` : '',\n } as types.storageOptions;\n }\n case 'file:':\n return {\n type: 'FS',\n rootPath: url.pathname,\n };\n\n default:\n throw new Error(`storage protocol '${url.protocol}' is not supported`);\n }\n}\n\nexport function loadDefaults(jwtKey: string, options?: types.plOptions): types.plSettings {\n const localRoot = options?.localRoot ?? state.instanceDir('default');\n\n const log: types.logSettings = {\n level: options?.log?.level ?? 'info',\n path: options?.log?.path ?? `${localRoot}/logs/platforma.log`,\n };\n\n const grpc: types.grpcSettings = {\n listen: options?.grpc?.listen ?? 'localhost:6345',\n tls: {\n enable: defaultBool(options?.grpc?.tls?.enable, false),\n clientAuthMode: options?.grpc?.tls?.clientAuthMode ?? 'NoAuth',\n certFile: options?.grpc?.tls?.certFile ?? `${localRoot}/certs/tls.cert`,\n keyFile: options?.grpc?.tls?.keyFile ?? `${localRoot}/certs/tls.key`,\n\n ...options?.grpc?.tls,\n },\n };\n\n const core: types.coreSettings = {\n auth: {\n enabled: options?.core?.auth?.enabled ?? false,\n drivers: options?.core?.auth?.drivers ?? [\n { driver: 'jwt', key: jwtKey },\n { driver: 'htpasswd', path: `${localRoot}/users.htpasswd` },\n ],\n },\n db: {\n path: `${localRoot}/db`,\n },\n };\n\n const primary = defaultStorageSettings(\n 'main',\n `${localRoot}/storages/main`,\n 'platforma-primary-bucket',\n options?.storages?.primary,\n );\n\n let work: types.storageSettings;\n const wType = options?.storages?.work?.type;\n switch (wType) {\n case undefined:\n case 'FS':\n work = types.emptyFSSettings('work');\n work.rootPath = options?.storages?.work?.rootPath ?? `${localRoot}/storages/work`;\n work.indexCachePeriod = options?.storages?.work?.indexCachePeriod ?? '1m';\n break;\n\n default:\n throw new Error('work storage MUST have \\'FS\\' type as it is used for working directories management');\n }\n\n const library = defaultStorageSettings(\n 'library',\n `${localRoot}/storages/library`,\n 'platforma-library-bucket',\n options?.storages?.library,\n );\n\n const monitoring: types.monitoringSettings = {\n enabled: defaultBool(options?.monitoring?.enabled, true),\n listen: options?.monitoring?.listen ?? '127.0.0.1:9090',\n };\n const debug: types.debugSettings = {\n enabled: defaultBool(options?.debug?.enabled, true),\n listen: options?.debug?.listen ?? '127.0.0.1:9091',\n };\n const license: types.licenseSettings = {\n value: options?.license?.value ?? '',\n file: options?.license?.file ?? '',\n };\n\n return {\n localRoot,\n license,\n log,\n grpc,\n core,\n monitoring,\n debug,\n numCpu: options?.numCpu,\n storages: { primary, work, library },\n hacks: { libraryDownloadable: true },\n };\n}\n\nfunction defaultStorageSettings(\n storageID: string,\n defaultLocation: string,\n defaultBucket: string,\n options?: types.storageOptions,\n): types.storageSettings {\n let storage: types.storageSettings;\n const pType = options?.type;\n switch (pType) {\n case undefined:\n case 'FS':\n storage = types.emptyFSSettings(storageID);\n storage.rootPath = options?.rootPath ?? defaultLocation;\n break;\n\n case 'S3':\n storage = types.emptyS3Settings(storageID);\n\n storage.endpoint = options?.endpoint;\n storage.region = options?.region;\n storage.presignEndpoint = options?.presignEndpoint ?? options?.endpoint;\n storage.bucketName = options?.bucketName ?? defaultBucket;\n storage.createBucket = defaultBool(options?.createBucket, true);\n storage.forcePathStyle = defaultBool(options?.forcePathStyle, true);\n storage.key = options?.key ?? '';\n storage.secret = options?.secret ?? '';\n storage.keyPrefix = options?.keyPrefix ?? '';\n storage.accessPrefixes = options?.accessPrefixes ?? [''];\n storage.uploadKeyPrefix = options?.uploadKeyPrefix ?? '';\n break;\n\n default:\n assertNever(pType);\n throw new Error('unknown storage type'); // calm down TS type analyzer\n }\n\n return storage;\n}\n\nexport function render(options: types.plSettings): string {\n const disableMon = options.monitoring.enabled ? '' : ' disabled';\n const disableDbg = options.debug.enabled ? '' : ' disabled';\n const libraryDownloadable = options.hacks.libraryDownloadable ? 'true' : 'false';\n let miLicenseSecret = options.license.value;\n if (options.license.file != '') {\n miLicenseSecret = fs.readFileSync(options.license.file).toString().trimEnd();\n }\n\n let cpuLimit = '';\n if (options.numCpu) {\n cpuLimit = `\n resources:\n cpu: ${options.numCpu}\n`;\n }\n\n return `\nlicense:\n value: '${options.license.value}'\n file: '${options.license.file}'\n\nlogging:\n level: '${options.log.level}'\n destinations:\n - path: '${options.log.path}'\n rotation:\n maxSize: 1GiB\n maxBackups: 15\n compress: true\n\nmonitoring${disableMon}:\n listen: '${options.monitoring.listen}'\n\ndebug${disableDbg}:\n listen: '${options.debug.listen}'\n\ncore:\n logging:\n extendedInfo: true\n dumpResourceData: false\n\n grpc:\n listen: '${options.grpc.listen}'\n\n tlsEnabled: ${JSON.stringify(options.grpc.tls.enable)}\n tls:\n clientAuthMode: '${options.grpc.tls.clientAuthMode}'\n certificates:\n - certFile: '${options.grpc.tls.certFile}'\n keyFile: '${options.grpc.tls.keyFile}'\n\n\n authEnabled: ${JSON.stringify(options.core.auth.enabled)}\n auth: ${JSON.stringify(options.core.auth.drivers)}\n db:\n path: '${options.core.db.path}'\n\ncontrollers:\n data:\n main:\n storages:\n main:\n mode: primary\n downloadable: true\n\n library:\n mode: passive\n downloadable: ${libraryDownloadable}\n\n work:\n mode: active\n downloadable: false\n\n storages:\n - ${JSON.stringify(options.storages.primary)}\n - ${JSON.stringify(options.storages.library)}\n - ${JSON.stringify(options.storages.work)}\n\n runner:\n type: local\n storageRoot: '${(options.storages.work).rootPath}'\n workdirCacheOnSuccess: 20m\n workdirCacheOnFailure: 1h\n${cpuLimit}\n secrets:\n - map:\n MI_LICENSE: ${JSON.stringify(miLicenseSecret)}\n\n packageLoader:\n packagesRoot: '${options.localRoot}/packages'\n\n workflows:\n features:\n pureFutureFields: true\n commandExpressions: true\n workdirLimits: true\n computeLimits: false\n`;\n}\n\nfunction defaultBool(v: boolean | undefined, def: boolean): boolean {\n return v === undefined ? def : v;\n}\n"],"names":["types.emptyFSSettings","types.emptyS3Settings","fs"],"mappings":"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"}
package/dist/util.cjs CHANGED
@@ -12,7 +12,7 @@ function askYN(prompt) {
12
12
  const answer = readlineSync.question(`${prompt} [y/N] `);
13
13
  return answer.toLowerCase() === 'y';
14
14
  }
15
- function assertNever(n) {
15
+ function assertNever(_n) {
16
16
  throw new Error('this should never happen');
17
17
  }
18
18
  function createLogger(level = 'debug') {
@@ -72,7 +72,7 @@ function getProcessName(pid) {
72
72
  }
73
73
  return lines[1].trim();
74
74
  }
75
- catch (e) {
75
+ catch (_e) {
76
76
  return '';
77
77
  }
78
78
  }