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/05/15 22:53:00 UTC

[GitHub] sijie opened a new pull request #1407: Refactor bookkeeper bash scripts and move dlog script to root bin directory

sijie opened a new pull request #1407: Refactor bookkeeper bash scripts and move dlog script to root bin directory
URL: https://github.com/apache/bookkeeper/pull/1407
 
 
   Descriptions of the changes in this PR:
   
   *Motivation*
   
   Since 4.7, we have moved bash scripts and configuration to the root directory. However the scripts and configurations for dlog and table-service modules are still in their own modules. It is inconvenient and confusing. This change mainly refactor current bookkeeper script to make it reusable for other modules.
   
   *Code Change*
   
   The main changes are:
   
   - abstract the common logic in `bin/bookkeeper` to `bin/common.sh`. These common logics include:
      * common definitions on environment variables, such jvm settings, bk conf, log4j conf, classpath and such.
      * common functions can be reusabled, such as find jars, add maven dependencies.
   - simplify `bin/bookkeeper` and `bin/bookkeeper-cli` by reusing `bin/common.sh`
   - remove `stream/distributedlog/core/bin/dlog` to `bin/dlog` and simplify it by reusing `bin/common.sh`
   
   *Tests*
   
   Most of the changes in this PR are tests to ensure this script refactor is done correctly.
   
   - introduced a module `tests/scripts` for testing all the bash scripts in bookkeeper project. This module uses [shUnit2](https://github.com/kward/shunit2) for testing bash scripts. This gives a good test coverage on `bin/common.sh`.
   
   - add a few CLI smoketests under `tests/integration/smoke` to smoke test all CLI tools, including `bin/bookkeeper shell`, `bin/bookkeeper-cli` and `bin/dlog`. This makes sure all the CLI scripts work well after refactor.
   
   

----------------------------------------------------------------
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