Releases: Tapad/sbt-docker-compose
Bug Fixes
- Properly remove named volumes when calling dockerComposeStop
- Support the '$' character in the default environment variable substitution value
Bug Fixes
- Clarified logging text to include "Docker for Windows" as well as "Docker for Mac"
- Fixed issue where the container id and port information was being cached if a container restarts while the compose instance is still active. This information will now be retrieved dynamically so that dockerComposeInstances will always output the correct information.
New Features
- New
suppressColorFormatting
setting to turn off color codes from output. This defaults to respect thesbt.log.noformat
setting so when sbt launched with:
sbt -no-colors
Color output will now be suppressed.
- Volume access specifiers are now supported in the Docker Compose file. For example:
volumes:
- ~/data/event_distribution/rabbit:/var/lib/rabbitmq:rw
- Default environment variable values are now supported in the Docker Compose file. For example:
${VARIABLE:-default}
Docker Compose Custom Network Removal Support
This release has a few new features / bug fixes:
-
'dockerComposeStop' will now properly remove any custom internal networks defined in the compose file.
-
A new setting 'testExecutionExtraEnvironment' has been added which allows extra parameters to be passed to 'ScalaTest' via the 'ConfigMap'.
-
'dockerComposeUp' will now properly detect containers that have started and stopped before the Plugin has a chance to detect it in a running state.
Docker for Windows Fixes
Updates to plugin and examples to support Docker for Windows.
Support for Docker for Mac
Adding initial support for Docker for Mac.
When a Docker for Mac environment is detected "localhost" will be used at the hostname to connect to instead of using an IP address.
Support to change Test Scope
You can now change the default sbt scope of 'dockerComposeTest' from 'Test' to other scopes such as 'IntegrationTest'.
// 1) Package the tests that exist in the IntegrationTest scope
testCasesPackageTask := (sbt.Keys.packageBin in IntegrationTest).value
// 2) Specify the path to the IntegrationTest jar produced in Step 1
testCasesJar := artifactPath.in(IntegrationTest, packageBin).value.getAbsolutePath
Docker 1.13.0 Support
Docker release 1.13.0 changed they way quotes are handled in the command: ps --filter
This plug-in release enables compatibility for both the previous Docker implementation as well as how it works in Docker 1.13.0.
Add Test Resources on Classpath
Test resources are now on the classpath by default when executing dockerComposeTest.
Support for Test Report Generation
A new settingKey
testExecutionArgs
was added which allows for ScalaTest runner arguments to be provided when executing dockerComposeTest
.
For example you can now set testExecutionArgs
as follows in build.sbt
to have html test pass reports created:
testExecutionArgs := "-h target/htmldir"