An open API service indexing awesome lists of open source software.

https://github.com/containersolutions/minimesos-maven-plugin

A Maven plugin for minimesos. Control your minimesos cluster from Maven
https://github.com/containersolutions/minimesos-maven-plugin

Last synced: about 1 year ago
JSON representation

A Maven plugin for minimesos. Control your minimesos cluster from Maven

Awesome Lists containing this project

README

          

# minimesos-maven-plugin
A Maven plugin for minimesos. Control your minimesos cluster from your pom.

# Quick start
Add the following plugin to your pom:

```


jitpack.io
https://jitpack.io



com.github.ContainerSolutions
minimesos-maven-plugin


start
pre-integration-test

start



stop
post-integration-test

stop




...
```

It is recommended that you also specify the version of the plugin. Note that only tagged versions of the plugin will work when downloaded from jitpack. This is because Maven plugins require the version number specified in your project and the version number inside the plugin to match exactly.

## OSX (or VM) users
For people using a VM to host the docker daemon, ensure you setup a route to route traffic to the containers. Without this your cluster will appear to "doesn't start". Use the following command:
```
$ sudo route delete 172.17.0.0/16; sudo route -n add 172.17.0.0/16 $(docker-machine ip ${DOCKER_MACHINE_NAME})
```

# Usage
## Goals
Goal | Description
--- | ---
`start` | Start the minimesos cluster
`stop` | Stop the minimesos cluster

## Configuration
Setting | Description
--- | ---
`configFile` | A relative or absolute path to a minimesos configuration file (a.k.a minimesosFile)

For example:
```

com.containersolutions.minimesos
minimesos-maven-plugin

./src/test/resources/minimesosFile

...
```

Settings may also be passed as Maven arguments. E.g. `mvn verify -DconfigFile=./myConfig`

## Exported maven properties
Property | Description
--- | ---
`zookeeper_ip` | The IP address of the ZooKeeper container
`mesos_master_ip` | The IP address of the Mesos master container

### Using exported maven properties
Use the properties to import into other variables. For example, when testing a Spring application, you will want to inject the maven properties into System properties:

```

maven-failsafe-plugin


${zookeeper_ip}:2181
${mesos_master_ip}:5050

...
```

# Releasing
To release:
```
git checkout master
git fetch origin
git reset --hard origin/master
git checkout -b release/$VERSION
mvn versions:set -DnewVersion=$VERSION
git add pom.xml
git commit -m "Set version number for release of $VERSION"
git tag $VERSION
git push --set-upstream origin release/$VERSION && git push origin $VERSION
```
Do not create a GH release. Travis will do this for you.