]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/tools/peertube.ts
Fix test cleanup
[github/Chocobozzz/PeerTube.git] / server / tools / peertube.ts
old mode 100755 (executable)
new mode 100644 (file)
index 7441161..b79917b
@@ -1,13 +1,10 @@
 #!/usr/bin/env node
 
-import * as program from 'commander'
-import {
-  version,
-  getSettings
-} from './cli'
+import { CommandOptions, program } from 'commander'
+import { getSettings, version } from './shared'
 
 program
-  .version(version(), '-v, --version')
+  .version(version, '-v, --version')
   .usage('[command] [options]')
 
 /* Subcommands automatically loaded in the directory and beginning by peertube-* */
@@ -16,22 +13,20 @@ program
   .command('upload', 'upload a video').alias('up')
   .command('import-videos', 'import a video from a streaming platform').alias('import')
   .command('get-access-token', 'get a peertube access token', { noHelp: true }).alias('token')
-  .command('watch', 'watch a video in the terminal ✩°。⋆').alias('w')
+  .command('plugins [action]', 'manage instance plugins/themes').alias('p')
+  .command('redundancy [action]', 'manage instance redundancies').alias('r')
 
 /* Not Yet Implemented */
 program
-  .command('plugins [action]',
-           'manage plugins on a local instance',
-           { noHelp: true } as program.CommandOptions
-          ).alias('p')
-  .command('diagnostic [action]',
-           'like couple therapy, but for your instance',
-           { noHelp: true } as program.CommandOptions
-          ).alias('d')
+  .command(
+    'diagnostic [action]',
+    'like couple therapy, but for your instance',
+    { noHelp: true } as CommandOptions
+  ).alias('d')
   .command('admin',
-           'manage an instance where you have elevated rights',
-          { noHelp: true } as program.CommandOptions
-          ).alias('a')
+    'manage an instance where you have elevated rights',
+    { noHelp: true } as CommandOptions
+  ).alias('a')
 
 // help on no command
 if (!process.argv.slice(2).length) {
@@ -45,7 +40,7 @@ if (!process.argv.slice(2).length) {
      /   /                -" _/"/
     /   |    ._\\\\ |\\  |_.".-"  /
    /    |   __\\)|)|),/|_." _,."
-  /     \_."   " ") | ).-""---''--
+  /     \\_."   " ") | ).-""---''--
  (                  "/.""7__-""''
  |                   " ."._--._
  \\       \\ (_    __   ""   ".,_
@@ -57,25 +52,21 @@ if (!process.argv.slice(2).length) {
             ,"\\/
       _,.__/"\\/_                     (the CLI for red chocobos)
      / \\) "./,  ".
-  --/---"---" "-) )---- by Chocobozzz et al.`)
+  --/---"---" "-) )---- by Chocobozzz et al.\n`)
 }
 
 getSettings()
   .then(settings => {
-    const state = (settings.default === -1) ?
-      'no instance selected, commands will require explicit arguments' :
-      ('instance ' + settings.remotes[settings.default] + ' selected')
+    const state = (settings.default === undefined || settings.default === -1)
+      ? 'no instance selected, commands will require explicit arguments'
+      : 'instance ' + settings.remotes[settings.default] + ' selected'
+
     program
-      .on('--help', function () {
-        console.log()
-        console.log('  State: ' + state)
-        console.log()
-        console.log('  Examples:')
-        console.log()
-        console.log('    $ peertube auth add -u "PEERTUBE_URL" -U "PEERTUBE_USER" --password "PEERTUBE_PASSWORD"')
-        console.log('    $ peertube up <videoFile>')
-        console.log('    $ peertube watch https://peertube.cpy.re/videos/watch/e8a1af4e-414a-4d58-bfe6-2146eed06d10')
-        console.log()
-      })
+      .addHelpText('after', '\n\n  State: ' + state + '\n\n' +
+        '  Examples:\n\n' +
+        '    $ peertube auth add -u "PEERTUBE_URL" -U "PEERTUBE_USER" --password "PEERTUBE_PASSWORD"\n' +
+        '    $ peertube up <videoFile>\n'
+      )
       .parse(process.argv)
   })
+  .catch(err => console.error(err))