Hey,

This is awesome! Great work.
I believe this could also be put to good use with CI. The one reservation I
would have here is in regards to :

> - same OS (ubuntu:trusty) for everybody; no matter if your local OS is
>   Linux, OSX or Windows, the container will always run the tests on top of
>   Ubuntu (no more *"your scripts don't work on my Mac"*)

I would think that test building in different environments is a good thing.
At least until we cover different envs in the CI.

But other than that this is really cool. And you get extra cookies for
Hadoop, that's awesome.

Cheers,
Dylan.

On Sat, Mar 19, 2016 at 1:57 PM, Daniel Kuppitz <m...@gremlin.guru> wrote:

> For the last 2 days I was working on some Docker containers that
> will/should make our (devs) daily work a lot easier. Let's start with how
> it currently looks:
>
> $ docker/build.sh -h
>
> Usage: build.sh [OPTIONS]
> Build the current local TinkerPop project in a Docker container.
>
> Options are:
>
>     -t, --tests              run standard test suite
>     -i, --integration-tests  run integration tests
>     -n, --neo4j              include Neo4j
>     -j, --java-docs          build Java docs
>     -d, --docs               build user docs
>     -h, --help               show this message
>
> The options should make it clear what it's good for. But to name a few more
> advantages, especially for those, who are not too familiar with Docker:
>
>    - each build will be started in a clean environment (no old jar files
>    that could mess up your test results)
>    - you can continue to work on your code and don't have to worry about
>    impacts on the tests that run inside the Docker container
>    - same OS (ubuntu:trusty) for everybody; no matter if your local OS is
>    Linux, OSX or Windows, the container will always run the tests on top of
>    Ubuntu (no more *"your scripts don't work on my Mac"*)
>    - you can start multiple builds in parallel
>    - the build container will automatically install (and start if needed)
>    the correct Hadoop version (defined in pom.xml); in the future we could
> do
>    the same for Spark Server
>    - after building the docs, it will start a simple web server and give
>    you the URL to view it (real http://, no file:/// crap)
>
> There's probably more, but I think that's impressive enough. The only
> disadvantage is, that since each build starts in a clean environment, it
> will always have to download all maven dependencies. However, I think all
> the advantage compensate that little overhead.
>
> These changes are currently in branch docker/
> <https://github.com/apache/incubator-tinkerpop/tree/docker> and could be
> merged into master/ and tp31/ at any time. But, since this is a DISCUSS
> thread, the question is: do people like it?
>
> Cheers,
> Daniel
>

Reply via email to