| ## Apache BookKeeper Dev Tools |
| |
| ### Running Integration Tests on macOS |
| |
| Currently all the integration tests are docker based and written using arquillian framework. |
| Due to the networking issues, the integration tests can only be run on linux environment. |
| For people who is using macOS as their development environment, you can use [Vagrant](https://www.vagrantup.com) |
| to launch a linux virtual machine and run the integration tests there. |
| |
| 1. [Download and Install](https://www.vagrantup.com/downloads.html) Vagrant. |
| |
| 2. Provision and launch the dev vm. |
| |
| ```shell |
| $ cd ${BOOKKEEPER_HOME}/dev |
| |
| # provision the vm |
| $ vagrant up |
| ``` |
| |
| 3. The dev vm will try to mount your current bookkeeper workspace to be under `/bookkeeper` in the vm. You might |
| potentially hit following errors due to fail to install VirtualBox Guest additions. |
| |
| ``` |
| /sbin/mount.vboxsf: mounting failed with the error: No such device |
| ``` |
| |
| If that happens, follow the below instructions: |
| |
| ``` |
| # ssh to the dev vm |
| $ vagrant ssh |
| |
| [vagrant@bogon bookkeeper]$ sudo yum update -y |
| [vagrant@bogon bookkeeper]$ exit |
| |
| # reload the vm |
| $ vagrant reload |
| ``` |
| |
| 4. Now, you will have a bookkeeper dev vm ready for running integration tests. |
| |
| ```shell |
| $ vagrant ssh |
| |
| # once you are in the bookkeeper dev vm, you can launch docker. |
| [vagrant@bogon bookkeeper]$ sudo systemctl start docker |
| |
| # your bookkeeper workspace will be mount under /bookkeeper |
| [vagrant@bogon bookkeeper]$ cd /bookkeeper |
| |
| # you can build and test using maven commands |
| ``` |