You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@bookkeeper.apache.org by GitBox <gi...@apache.org> on 2018/11/12 12:50:34 UTC

[GitHub] eolivelli opened a new pull request #1806: Issue 1799: bkctl is broken with default build options

eolivelli opened a new pull request #1806: Issue 1799: bkctl is broken with default build options 
URL: https://github.com/apache/bookkeeper/pull/1806
 
 
   This is a cherry pick of #1799 on branch-4.8.
   Original commit is from Sijie Guo
   
   Descriptions of the changes in this PR:
   
   *Motivation*
   
   `bkctl` is designed in a modularized way for extensibility.
   it loads command groups via ServiceLoader. However current build
   profile doesn't leverage this extensibility. Instead it hardcodes
   all the commands in one service load file. So if `bkctl` is built
   without `-Dstream`, it will broke.
   
   *Changes*
   
   - move `ledger` related commands to `tools/ledger`
   - generate the service load file by concating `commands` files from each module's resources directory.
   
   *Results*
   
   bkctl works for all build profiles.
   
   - without `-Dstream`
   
   ```
   $ bin/bkctl
   
   bkctl interacts and operates Apache BookKeeper clusters
   
   Usage:  bkctl [flags] [command group] [commands]
   
   Commands:
   
       bookie      Commands on operating a single bookie
       bookies     Commands on operating a cluster of bookies
       cookie      Commands on operating cookies
       ledger      Commands on interacting with ledgers
   
       help        Display help information about it
   
   Flags:
   
       -c, --conf
           Configuration file
   
       -n, --namespace
           Namespace scope to run commands (only valid for table service for now)
   
       -u, --service-uri
           Service Uri
   
       -h, --help
           Display help information
   
   Use "bkctl [command] --help" or "bkctl help [command]" for more information
   about a command
   ```
   
   - with `-Dstream`
   
   ```
   $ bin/bkctl
   
   bkctl interacts and operates Apache BookKeeper clusters
   
   Usage:  bkctl [flags] [command group] [commands]
   
   Commands:
   
       bookie          Commands on operating a single bookie
       bookies         Commands on operating a cluster of bookies
       cluster         Commands on administrating bookkeeper clusters
       cookie          Commands on operating cookies
       ledger          Commands on interacting with ledgers
       namespace       Commands on operating namespaces
       table           Commands on interacting with tables
       tables          Commands on operating tables
   
       help            Display help information about it
   
   Flags:
   
       -c, --conf
           Configuration file
   
       -n, --namespace
           Namespace scope to run commands (only valid for table service for now)
   
       -u, --service-uri
           Service Uri
   
       -h, --help
           Display help information
   
   Use "bkctl [command] --help" or "bkctl help [command]" for more information
   about a command
   ```
   
   Master Issue: #1799
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services