FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Fix `mirrors` field is list and not a single string by KostyaSha · Pull Request #527 · docker-java/docker-java · GitHub

Repository navigation

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension .java  (2) .json  (1) All 2 file types selected
Viewed files
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Unified
Split
Hide whitespace
Diff view
Unified
Split
Hide whitespace
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ public int hashCode() {
@JsonIgnoreProperties(ignoreUnknown = true)
public static final class IndexConfig {
@JsonProperty("Mirrors")
private String mirrors;
private List<String> mirrors;

@JsonProperty("Name")
private String name;
Expand All @@ -111,14 +111,14 @@ public static final class IndexConfig {
* @see #mirrors
*/
@CheckForNull
public String getMirrors() {
public List<String> getMirrors() {
return mirrors;
}

/**
* @see #mirrors
*/
public IndexConfig withMirrors(String mirrors) {
public IndexConfig withMirrors(List<String> mirrors) {
this.mirrors = mirrors;
return this;
}
Expand Down
158 changes: 158 additions & 0 deletions src/test/java/com/github/dockerjava/api/model/InfoTest.java
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import org.testng.annotations.Test;

import java.io.IOException;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
Expand Down Expand Up @@ -169,4 +170,161 @@ public void serder1Json() throws IOException {

assertThat(info, is(withInfo));
}

@Test
public void serder2Json() throws IOException {
final ObjectMapper mapper = new ObjectMapper();
final JavaType type = mapper.getTypeFactory().constructType(Info.class);

final Info info = testRoundTrip(VERSION_1_22,
"info/2.json",
type
);

final List<List<String>> driverStatus = asList(
asList("Pool Name", "docker-253:2-17567992-pool"),
asList("Pool Blocksize", "65.54 kB"),
asList("Base Device Size", "107.4 GB"),
asList("Backing Filesystem", "ext4"),
asList("Data file", "/dev/loop0"),
asList("Metadata file", "/dev/loop1"),
asList("Data Space Used", "3.89 GB"),
asList("Data Space Total", "107.4 GB"),
asList("Data Space Available", "103.5 GB"),
asList("Metadata Space Used", "5.46 MB"),
asList("Metadata Space Total", "2.147 GB"),
asList("Metadata Space Available", "2.142 GB"),
asList("Udev Sync Supported", "true"),
asList("Deferred Removal Enabled", "false"),
asList("Deferred Deletion Enabled", "false"),
asList("Deferred Deleted Device Count", "0"),
asList("Data loop file", "/var/lib/docker/devicemapper/devicemapper/data"),
asList("Metadata loop file", "/var/lib/docker/devicemapper/devicemapper/metadata"),
asList("Library Version", "1.02.107-RHEL7 (2015-12-01)")
);

final Map<String, List<String>> plugins = new LinkedHashMap<>();
plugins.put("Volume", singletonList("local"));
plugins.put("Network", asList("null", "host", "bridge"));
plugins.put("Authorization", null);

assertThat(info, notNullValue());
assertThat(info.getArchitecture(), equalTo("x86_64"));
assertThat(info.getContainersStopped(), is(2));
assertThat(info.getContainersPaused(), is(0));
assertThat(info.getContainersRunning(), is(0));
assertThat(info.getCpuCfsPeriod(), is(true));

// not available in this dump
assertThat(info.getCpuCfsQuota(), is(true));
assertThat(info.getDiscoveryBackend(), nullValue());
assertThat(info.getOomScoreAdj(), nullValue());

assertThat(info.getDriverStatuses(), notNullValue());
assertThat(info.getDriverStatuses(), hasSize(19));
assertThat(info.getDriverStatuses(), equalTo(driverStatus));

assertThat(info.getNGoroutines(), is(30));

assertThat(info.getSystemStatus(), CoreMatchers.nullValue());

assertThat(info.getPlugins(), equalTo(plugins));
assertThat(info.getPlugins(), hasEntry("Volume", singletonList("local")));
assertThat(info.getPlugins(), hasEntry("Authorization", null));

assertThat(info.getExperimentalBuild(), is(false));

assertThat(info.getHttpProxy(), isEmptyString());
assertThat(info.getHttpsProxy(), isEmptyString());
assertThat(info.getNoProxy(), isEmptyString());
assertThat(info.getOomKillDisable(), is(true));
assertThat(info.getOsType(), equalTo("linux"));

final InfoRegistryConfig registryConfig = info.getRegistryConfig();
assertThat(registryConfig, notNullValue());
final List<String> cidRs = registryConfig.getInsecureRegistryCIDRs();
assertThat(cidRs, notNullValue());
assertThat(cidRs, contains("127.0.0.0/8"));

final Map<String, IndexConfig> indexConfigs = registryConfig.getIndexConfigs();
assertThat(indexConfigs, notNullValue());
final IndexConfig indexConfig = new IndexConfig().withMirrors(null).withName("docker.io")
.withSecure(true).withOfficial(true);
assertThat(indexConfigs, hasEntry("docker.io", indexConfig));
final IndexConfig indexConfig2 = new IndexConfig().withMirrors(Collections.<String>emptyList()).withName("somehost:80")
.withSecure(false).withOfficial(false);
assertThat(indexConfigs, hasEntry("somehost:80", indexConfig2));
assertThat(registryConfig.getMirrors(), nullValue());

assertThat(info.getSystemTime(), is("2016-03-20T17:32:06.598846244+01:00"));
assertThat(info.getServerVersion(), is("1.10.2"));

assertThat(info.getCpuSet(), is(true));
assertThat(info.getCpuShares(), is(true));
assertThat(info.getIPv4Forwarding(), is(true));
assertThat(info.getBridgeNfIptables(), is(false));
assertThat(info.getBridgeNfIp6tables(), is(false));
assertThat(info.getDebug(), is(false));
assertThat(info.getNFd(), is(13));
assertThat(info.getOomKillDisable(), is(true));
assertThat(info.getLoggingDriver(), is("json-file"));
assertThat(info.getOperatingSystem(), is("Red Hat Enterprise Linux Workstation 7.2 (Maipo)"));
assertThat(info.getClusterStore(), is(""));


final Info withInfo = new Info().withArchitecture("x86_64")
.withContainers(2)
.withContainersRunning(0)
.withContainersPaused(0)
.withContainersStopped(2)
.withImages(55)
.withId("H52J:52LG:YP4W:EHKY:SRK5:RYG6:ETWR:7AR3:MTFJ:PC6C:4YF2:NTN2")
.withDriver("devicemapper")
.withDriverStatuses(driverStatus)
.withSystemStatus(null)
.withPlugins(plugins)
.withMemoryLimit(true)
.withSwapLimit(true)
.withCpuCfsPeriod(true)
.withCpuCfsQuota(true)
.withCpuShares(true)
.withCpuSet(true)
.withIPv4Forwarding(true)
.withBridgeNfIptables(false)
.withBridgeNfIp6tables(false)
.withDebug(false)
.withNFd(13)
.withOomKillDisable(true)
.withNGoroutines(30)
.withSystemTime("2016-03-20T17:32:06.598846244+01:00")
.withExecutionDriver("native-0.2")
.withLoggingDriver("json-file")
.withNEventsListener(0)
.withKernelVersion("3.10.0-327.10.1.el7.x86_64")
.withOperatingSystem("Red Hat Enterprise Linux Workstation 7.2 (Maipo)")
.withOsType("linux")
.withIndexServerAddress("https://index.docker.io/v1/")
.withRegistryConfig(registryConfig)
.withInitSha1("672d65f3cf8816fbda421afeed7e52c0ca17d5e7")
.withInitPath("/usr/libexec/docker/dockerinit")
.withNCPU(8)
.withMemTotal(33350918144L)
.withDockerRootDir("/var/lib/docker")
.withHttpProxy("")
.withHttpsProxy("")
.withNoProxy("")
.withName("somename")
.withLabels(null)
.withExperimentalBuild(false)
.withServerVersion("1.10.2")
.withClusterStore("")
.withClusterAdvertise("")
//shredinger-fields
.withDiscoveryBackend(null)
.withOomScoreAdj(null)
.withSockets(null)
;

assertThat(info, is(withInfo));
}
}
165 changes: 165 additions & 0 deletions src/test/resources/samples/1.22/info/2.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
{
"ID":"H52J:52LG:YP4W:EHKY:SRK5:RYG6:ETWR:7AR3:MTFJ:PC6C:4YF2:NTN2",
"Containers":2,
"ContainersRunning":0,
"ContainersPaused":0,
"ContainersStopped":2,
"Images":55,
"Driver":"devicemapper",
"DriverStatus":[
[
"Pool Name",
"docker-253:2-17567992-pool"
],
[
"Pool Blocksize",
"65.54 kB"
],
[
"Base Device Size",
"107.4 GB"
],
[
"Backing Filesystem",
"ext4"
],
[
"Data file",
"/dev/loop0"
],
[
"Metadata file",
"/dev/loop1"
],
[
"Data Space Used",
"3.89 GB"
],
[
"Data Space Total",
"107.4 GB"
],
[
"Data Space Available",
"103.5 GB"
],
[
"Metadata Space Used",
"5.46 MB"
],
[
"Metadata Space Total",
"2.147 GB"
],
[
"Metadata Space Available",
"2.142 GB"
],
[
"Udev Sync Supported",
"true"
],
[
"Deferred Removal Enabled",
"false"
],
[
"Deferred Deletion Enabled",
"false"
],
[
"Deferred Deleted Device Count",
"0"
],
[
"Data loop file",
"/var/lib/docker/devicemapper/devicemapper/data"
],
[
"Metadata loop file",
"/var/lib/docker/devicemapper/devicemapper/metadata"
],
[
"Library Version",
"1.02.107-RHEL7 (2015-12-01)"
]
],
"SystemStatus":null,
"Plugins":{
"Volume":[
"local"
],
"Network":[
"null",
"host",
"bridge"
],
"Authorization":null
},
"MemoryLimit":true,
"SwapLimit":true,
"CpuCfsPeriod":true,
"CpuCfsQuota":true,
"CPUShares":true,
"CPUSet":true,
"IPv4Forwarding":true,
"BridgeNfIptables":false,
"BridgeNfIp6tables":false,
"Debug":false,
"NFd":13,
"OomKillDisable":true,
"NGoroutines":30,
"SystemTime":"2016-03-20T17:32:06.598846244+01:00",
"ExecutionDriver":"native-0.2",
"LoggingDriver":"json-file",
"NEventsListener":0,
"KernelVersion":"3.10.0-327.10.1.el7.x86_64",
"PkgVersion":"docker-1.10.2-6.git0f5ac89.el7.x86_64",
"OperatingSystem":"Red Hat Enterprise Linux Workstation 7.2 (Maipo)",
"OSType":"linux",
"Architecture":"x86_64",
"IndexServerAddress":"https://index.docker.io/v1/",
"IndexServerName":"docker.io",
"RegistryConfig":{
"InsecureRegistryCIDRs":[
"127.0.0.0/8"
],
"IndexConfigs":{
"docker.io":{
"Name":"docker.io",
"Mirrors":null,
"Secure":true,
"Official":true
},
"somehost:80":{
"Name":"somehost:80",
"Mirrors":[

],
"Secure":false,
"Official":false
}
},
"Mirrors":null
},
"InitSha1":"672d65f3cf8816fbda421afeed7e52c0ca17d5e7",
"InitPath":"/usr/libexec/docker/dockerinit",
"NCPU":8,
"MemTotal":33350918144,
"DockerRootDir":"/var/lib/docker",
"HttpProxy":"",
"HttpsProxy":"",
"NoProxy":"",
"Name":"somename",
"Labels":null,
"ExperimentalBuild":false,
"ServerVersion":"1.10.2",
"ClusterStore":"",
"ClusterAdvertise":"",
"Registries":[
{
"Name":"docker.io",
"Secure":true
}
]
}

Back | FazBrowse Home | New Git URL