<commit_before>docker-maven-plugin
===================

A maven plugin to manage docker containers and images for integration tests.

# Musts for 1.0
* Build a docker image from a bunch of source files in package and pre-integration-test phases
* Start a container in the pre-integration-test phase based on an image:
  * Known on the docker host by a name
  * Just built by the plugin itself
* Supply information to the project during the integration-test phase about:
  * Images that were built
  * Containers that were started
* Shut down containers in the post-integration-test phase that were started in the pre-integration-test phase

# Further possible functionality
* Commit containers instead of cleaning them up when the integration tests have failed
* Create some kind of "wait for stuff to initialize" step: for example, Tomcat starting up.<commit_msg>Adde more goals & architecture principles.<commit_after>docker-maven-plugin
===================

A maven plugin to manage docker containers and images for integration tests.

# Architecture principles
* The plugin needs to work in CI server environments, so it needs to make sure there are no port collisions and multiple builds can run on the same server in parallel.
* Multiple "docker providers" need to be supported and pluggable

# Musts for 1.0
* Build a docker image from a bunch of source files in package and pre-integration-test phases
* Start a container in the pre-integration-test phase based on an image:
  * Known on the docker host by a name
  * Just built by the plugin itself
* Supply information to the project during the integration-test phase about:
  * Images that were built
  * Containers that were started
* Shut down containers in the post-integration-test phase that were started in the pre-integration-test phase
* Docker provider for "local docker" via tcp
* Docker provider for "remote docker" via tcp (boot2docker/vm/server)

# Further possible functionality
* Commit containers instead of cleaning them up when the integration tests have failed
* Create some kind of "wait for stuff to initialize" step: for example, Tomcat starting up.
{'fraction_non_alphanumeric': 0.05956848030018762, 'fraction_numerical': 0.0023452157598499064, 'mean_word_length': 4.54025974025974, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '994916', 'n_tokens_mistral': 524, 'n_tokens_neox': 485, 'n_words': 298}