Skip to content

Commit a817265

Browse files
committed
Merge upstream & InvocationBuilder buf changes
2 parents 59724bd + a760dd5 commit a817265

180 files changed

Lines changed: 7587 additions & 1052 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.travis.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,4 @@ jdk:
44
before_install:
55
- pip install --user codecov
66
after_success:
7-
- codecov
8-
- echo "<settings><servers><server><id>ossrh</id><username>\${env.OSSRH_USER}</username><password>\${env.OSSRH_PASS}</password></server></servers></settings>" > ~/settings.xml
9-
- mvn deploy -DskipITs --settings ~/settings.xml
7+
- ./travis-after-success.sh

CHANGELOG.md

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,34 @@ Change Log
55
---
66
Notes
77

8-
* The upcoming release will contain multiple API breaking changes therefore the major version switch. It will support a subset of v.1.21 of the docker remote API. It also includes an experimental netty based implementation of `DockerCmdExecFactory` that probably will replace the current jersey/httpclient based one in a later release.
8+
* The upcoming release will contain multiple API breaking changes therefore the major version switch. It will support a subset of v.1.22 of the docker remote API. It also includes an experimental netty based implementation of `DockerCmdExecFactory` that probably will replace the current jersey/httpclient based one in a later release.
99
* The configuration has been changed to better match the docker CLI configuration options. The properties file was renamed from `docker.io.properties` to `docker-java.properties`. See README.md for details.
1010

1111
All changes
12+
13+
Included in 3.0.0-RC5
14+
15+
* [#542] (https://github.com/docker-java/docker-java/pull/542) Fix large volumes of output from "docker exec" trigger out of memory error
16+
* [#541] (https://github.com/docker-java/docker-java/pull/541) ImageInspectResponse.GraphDriver.Data is more complex structure
17+
* [#534] (https://github.com/docker-java/docker-java/pull/534) Fix create volume command doesn't assign passed in volume driverOpts to field
18+
* [#533] (https://github.com/docker-java/docker-java/pull/533) Added shmsize build option
19+
20+
Included in 3.0.0-RC4
21+
* [#528] (https://github.com/docker-java/docker-java/pull/528) Fix DOCKER_TLS_VERIFY cannot be 'false' or empty
22+
* [#527] (https://github.com/docker-java/docker-java/pull/527) Fix `mirrors` field is list and not a single string #527
23+
* [#510] (https://github.com/docker-java/docker-java/pull/510) Add CgroupParent option for create cmd
24+
* [#509] (https://github.com/docker-java/docker-java/pull/509) Implement container rename api
25+
* [#501] (https://github.com/docker-java/docker-java/pull/501) Fix execution of copy file/archive command skips 0xFF bytes
26+
* [#500] (https://github.com/docker-java/docker-java/pull/500) Add aux to ResponseItem
27+
* [#498] (https://github.com/docker-java/docker-java/issues/498) Update image inspect response
28+
29+
30+
Included in 3.0.0-RC3
31+
* [#488] (https://github.com/docker-java/docker-java/pull/488) Support remote API 1.22 subset
32+
33+
Included in 3.0.0-RC2
34+
* [#486] (https://github.com/docker-java/docker-java/pull/486) Fix NegativeArraySizeException in awaitCompletion()
35+
* [#472] (https://github.com/docker-java/docker-java/pull/472) Exec start command: detect end of STDIN stream
1236
* [#466] (https://github.com/docker-java/docker-java/pull/466) Fix exec start stdin encoding
1337

1438
Included in 3.0.0-RC1
@@ -31,6 +55,23 @@ Included in 3.0.0-RC1
3155
* [#347] (https://github.com/docker-java/docker-java/pull/347) Implementation of copy archive to/from container commands
3256
* [#313] (https://github.com/docker-java/docker-java/pull/313) Refactor primitive type fields to be of object type in JSON objects
3357

58+
v2.2.3
59+
---
60+
* [#487] (https://github.com/docker-java/docker-java/pull/487) Fix NegativeArraySizeException in awaitCompletion()
61+
62+
v2.2.2
63+
---
64+
* [#478] (https://github.com/docker-java/docker-java/pull/478) Remove debug println
65+
66+
v2.2.1
67+
---
68+
* [#474] (https://github.com/docker-java/docker-java/pull/474) Fix periodic pull failure (2.x)
69+
70+
v2.2.0
71+
---
72+
* [#457] (https://github.com/docker-java/docker-java/pull/457) Input configuration should not be altered as it breaks unix socket support
73+
* [#430] (https://github.com/docker-java/docker-java/pull/430) Fix ExecStartCmd failure (backported from 3.0.0)
74+
3475
v2.1.4
3576
---
3677

README.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44

55
Java API client for [Docker](http://docs.docker.io/ "Docker")
66

7-
Supports a subset of the Docker Remote API [v1.19](https://github.com/docker/docker/blob/master/docs/reference/api/docker_remote_api_v1.19.md), Docker Server version 1.7.x
8-
97
<b>The current implementation is based on Jersey 2.x and therefore classpath incompatible with older Jersey 1.x dependent libraries!</b>
108

119
Developer forum for [docker-java](https://groups.google.com/forum/?#!forum/docker-java-dev "docker-java")
@@ -16,7 +14,6 @@ Developer forum for [docker-java](https://groups.google.com/forum/?#!forum/docke
1614

1715
* Java 1.7
1816
* Maven 3.0.5
19-
* Docker 1.7.x
2017

2118
If you need SSL, then you'll need to put your `*.pem` file into `~/.docker/`, if you're using boot2docker, do this:
2219

@@ -36,9 +33,10 @@ listening on TCP port. To allow Docker server to use TCP add the following line
3633

3734
DOCKER_OPTS="-H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock"
3835

39-
However you can force docker-java to use UNIX socket communication by configuring the following url:
36+
However you can force docker-java to use UNIX socket communication by configure the following (see [Configuration](.#Configuration) for details):
4037

41-
unix:///var/run/docker.sock
38+
DOCKER_HOST=unix:///var/run/docker.sock
39+
DOCKER_TLS_VERIFY=0
4240

4341
More details about setting up Docker server can be found in official documentation: http://docs.docker.io/en/latest/use/basics/
4442

@@ -60,22 +58,26 @@ Run build without integration tests:
6058
## Docker-Java maven dependencies
6159

6260
### Latest release version
61+
Supports a subset of the Docker Remote API [v1.19](https://github.com/docker/docker/blob/master/docs/reference/api/docker_remote_api_v1.19.md), Docker Server version 1.7.x
6362

6463
<dependency>
6564
<groupId>com.github.docker-java</groupId>
6665
<artifactId>docker-java</artifactId>
67-
<version>2.2.0</version>
66+
<version>2.2.3</version>
6867
</dependency>
6968

7069
### Latest release candidate
70+
Supports a subset of the Docker Remote API [v1.22](https://github.com/docker/docker/blob/master/docs/reference/api/docker_remote_api_v1.22.md), Docker Server version 1.10.x
7171

7272
<dependency>
7373
<groupId>com.github.docker-java</groupId>
7474
<artifactId>docker-java</artifactId>
75-
<version>3.0.0-RC1</version>
75+
<version>3.0.0-RC5</version>
7676
</dependency>
7777

7878
### Latest development version
79+
Supports a subset of the Docker Remote API [v1.22](https://github.com/docker/docker/blob/master/docs/reference/api/docker_remote_api_v1.22.md), Docker Server version 1.10.x
80+
7981
You can find the latest development version including javadoc and source files on [Sonatypes OSS repository](https://oss.sonatype.org/content/groups/public/com/github/docker-java/docker-java/).
8082

8183
<dependency>

docs/devel.adoc

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
### Code Design
2+
* Model is based on Objects and not primitives that allows nullify requests and have null values for data
3+
that wasn't provided by docker daemon.
4+
* For null safeness findbugs annotations are used.
5+
** Every method that may return `null` (and we are unsure in any fields as docker daemon may change something)
6+
should be annotated with `@CheckForNull` return qualifier from `javax.annotation` package.
7+
** Methods that can't return `null` must be annotated with `@Nonnull`.
8+
** The same for Arguments.
9+
** `@Nullable` must be used only for changing inherited (other typed) qualifier.
10+
* Setters in builder style must be prefixed with `withXX`.
11+
* All classes should provide `toString()` `equals()` and `hashCode()` defined methods.
12+
* Javadocs
13+
** Provide full information on field:
14+
*** For models define API version with `@since {@link RemoteApiVersion#VERSION_1_X}`.
15+
** getters/setters should refernce to field `@see #$field`.
16+
17+
### Coding style
18+
* TBD, some initial styling already enforced with checkstyle.
19+
IDEA/checkstyle file analogues will be provided soon.
20+
21+
### Testing
22+
* Unit tests for serder (serialization-deserialization).
23+
* Integration tests for commands.
24+
* If model object has builders, then fill it with data and compare by `equals()` with expected response
25+
from docker daemon. If failed, then some fields mappings are wrong.

pom.xml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<groupId>com.github.docker-java</groupId>
1111
<artifactId>docker-java</artifactId>
1212
<packaging>jar</packaging>
13-
<version>3.0.0-IZ</version>
13+
<version>3.0.0-IZ-5</version>
1414

1515
<name>docker-java</name>
1616
<url>https://github.com/docker-java/docker-java</url>
@@ -48,7 +48,7 @@
4848
<jdk.target>1.7</jdk.target>
4949

5050
<jersey.version>2.11</jersey.version>
51-
<jackson-jaxrs.version>2.6.4</jackson-jaxrs.version>
51+
<jackson-jaxrs.version>2.6.6</jackson-jaxrs.version>
5252
<httpclient.version>4.3.1</httpclient.version>
5353
<commons-compress.version>1.5</commons-compress.version>
5454
<commons-codec.version>1.8</commons-codec.version>
@@ -63,17 +63,18 @@
6363
<!-- test dependencies -->
6464
<logback.version>1.1.0</logback.version>
6565
<testng.version>6.1.1</testng.version>
66-
<netty.version>4.1.0.CR2</netty.version>
66+
<netty.version>4.1.0.CR3</netty.version>
6767
<hamcrest.library.version>1.3</hamcrest.library.version>
6868
<hamcrest.jpa-matchers>1.6</hamcrest.jpa-matchers>
6969
<lambdaj.version>2.3.3</lambdaj.version>
70+
<mockito.version>1.10.19</mockito.version>
7071

7172

7273
<maven-jar-plugin.version>2.2</maven-jar-plugin.version>
7374
<maven-compiler-plugin.version>2.3.1</maven-compiler-plugin.version>
7475
<maven-release-plugin.version>2.3.1</maven-release-plugin.version>
75-
<maven-surefire-plugin.version>2.17</maven-surefire-plugin.version>
76-
<maven-failsafe-plugin.version>2.17</maven-failsafe-plugin.version>
76+
<maven-surefire-plugin.version>2.19.1</maven-surefire-plugin.version>
77+
<maven-failsafe-plugin.version>2.19.1</maven-failsafe-plugin.version>
7778
<maven-antrun-plugin.version>1.7</maven-antrun-plugin.version>
7879
</properties>
7980

@@ -195,6 +196,13 @@
195196
<scope>test</scope>
196197
</dependency>
197198

199+
<dependency>
200+
<groupId>org.mockito</groupId>
201+
<artifactId>mockito-core</artifactId>
202+
<version>${mockito.version}</version>
203+
<scope>test</scope>
204+
</dependency>
205+
198206
<dependency>
199207
<groupId>com.google.code.findbugs</groupId>
200208
<artifactId>annotations</artifactId>

0 commit comments

Comments
 (0)