@worca/ui 0.1.0-rc.4 → 0.1.0-rc.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/worca-ui.js CHANGED
@@ -20,6 +20,11 @@ import {
20
20
  writeProject,
21
21
  } from '../server/project-registry.js';
22
22
 
23
+ const __dirname = dirname(fileURLToPath(import.meta.url));
24
+ const pkg = JSON.parse(
25
+ readFileSync(join(__dirname, '..', 'package.json'), 'utf8'),
26
+ );
27
+
23
28
  function findProjectRoot(startDir) {
24
29
  let dir = startDir;
25
30
  while (dir !== dirname(dir)) {
@@ -30,12 +35,7 @@ function findProjectRoot(startDir) {
30
35
  }
31
36
 
32
37
  const PREFS_DIR = join(homedir(), '.worca');
33
- const SERVER_SCRIPT = join(
34
- dirname(fileURLToPath(import.meta.url)),
35
- '..',
36
- 'server',
37
- 'index.js',
38
- );
38
+ const SERVER_SCRIPT = join(__dirname, '..', 'server', 'index.js');
39
39
 
40
40
  /** Exported for testing */
41
41
  export function parseArgs(argv) {
@@ -57,7 +57,11 @@ export function parseArgs(argv) {
57
57
  };
58
58
  for (let i = 2; i < argv.length; i++) {
59
59
  const arg = argv[i];
60
- if (
60
+ if (arg === '--version' || arg === '-v') {
61
+ args.command = 'version';
62
+ } else if (arg === '--help' || arg === '-h') {
63
+ args.command = 'help';
64
+ } else if (
61
65
  ['start', 'stop', 'restart', 'status', 'projects', 'migrate'].includes(
62
66
  arg,
63
67
  )
@@ -493,6 +497,34 @@ function migrateStatus() {
493
497
  }
494
498
  }
495
499
 
500
+ function printHelp() {
501
+ console.log(`worca-ui v${pkg.version} — Pipeline monitoring UI for worca-cc
502
+
503
+ Usage: worca-ui <command> [options]
504
+
505
+ Commands:
506
+ start Start the server (default)
507
+ stop Stop the running server
508
+ restart Restart the server
509
+ status Show server status
510
+ projects list List registered projects
511
+ projects add <path> [--name] Register a project
512
+ projects remove <name> Unregister a project
513
+ migrate --scan <dir> Scan directory for projects to register
514
+ migrate --add <path> Register a single project
515
+ migrate --status Show registration health
516
+
517
+ Options:
518
+ --port <N> Server port (default: 3400, env: PORT)
519
+ --host <addr> Bind address (default: 127.0.0.1, env: HOST)
520
+ --global Multi-project mode (default)
521
+ --project [path] Single-project mode, optionally scoped to path
522
+ --open Open browser after start
523
+ --dry-run Preview migrate --scan without registering
524
+ -v, --version Show version
525
+ -h, --help Show this help`);
526
+ }
527
+
496
528
  const args = parseArgs(process.argv);
497
529
  switch (args.command) {
498
530
  case 'start':
@@ -538,8 +570,12 @@ switch (args.command) {
538
570
  );
539
571
  }
540
572
  break;
573
+ case 'version':
574
+ console.log(pkg.version);
575
+ break;
576
+ case 'help':
577
+ printHelp();
578
+ break;
541
579
  default:
542
- console.log(
543
- 'Usage: worca-ui [start|stop|restart|status|projects|migrate] [--port N] [--host H] [--open] [--project [PATH]]',
544
- );
580
+ printHelp();
545
581
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@worca/ui",
3
- "version": "0.1.0-rc.4",
3
+ "version": "0.1.0-rc.5",
4
4
  "description": "Pipeline monitoring UI for worca-cc",
5
5
  "license": "MIT",
6
6
  "author": "Sinisha Djukic",