11
11
12
12
import org .apache .mesos .Protos .CommandInfo ;
13
13
import org .apache .mesos .Protos .ContainerInfo ;
14
+ import org .apache .mesos .Protos .ContainerInfo .DockerInfo ;
14
15
import org .apache .mesos .Protos .Parameter ;
15
16
import org .apache .mesos .Protos .Parameters ;
16
17
import org .apache .mesos .Protos .Volume ;
@@ -63,25 +64,25 @@ public static CommandInfo.ContainerInfo buildContainerInfo(Configuration conf) {
63
64
64
65
public static ContainerInfo buildDockerContainerInfo (Configuration conf ) {
65
66
ContainerInfo .Builder containerInfoBuilder = ContainerInfo .newBuilder ();
66
- ContainerInfo . DockerInfo .Builder dockerInfoBuilder = ContainerInfo . DockerInfo .newBuilder ();
67
+ DockerInfo .Builder dockerInfoBuilder = DockerInfo .newBuilder ();
67
68
68
69
dockerInfoBuilder .setImage (conf .get ("mapred.mesos.docker.image" ));
69
70
70
71
switch (conf .getInt ("mapred.mesos.docker.network" , 1 )) {
71
72
case 1 :
72
- dockerInfoBuilder .setNetwork (ContainerInfo . DockerInfo .Network .HOST );
73
+ dockerInfoBuilder .setNetwork (DockerInfo .Network .HOST );
73
74
case 2 :
74
- dockerInfoBuilder .setNetwork (ContainerInfo . DockerInfo .Network .BRIDGE );
75
+ dockerInfoBuilder .setNetwork (DockerInfo .Network .BRIDGE );
75
76
case 3 :
76
- dockerInfoBuilder .setNetwork (ContainerInfo . DockerInfo .Network .NONE );
77
+ dockerInfoBuilder .setNetwork (DockerInfo .Network .NONE );
77
78
}
78
79
79
80
dockerInfoBuilder .setPrivileged (conf .getBoolean ("mapred.mesos.docker.privileged" , false ));
80
81
dockerInfoBuilder .setForcePullImage (conf .getBoolean ("mapred.mesos.docker.force_pull_image" , false ));
81
82
82
83
// Parse out any additional docker CLI params
83
84
String [] params = conf .getStrings ("mapred.mesos.docker.parameters" );
84
- if (params .length > 0 ) {
85
+ if (params != null && params .length > 0 ) {
85
86
assert (params .length % 2 ) == 0 ; // Make sure we have an even number of parameters
86
87
87
88
Parameter .Builder paramBuilder = null ;
@@ -99,7 +100,7 @@ public static ContainerInfo buildDockerContainerInfo(Configuration conf) {
99
100
100
101
// Parse out any volumes that have been defined
101
102
String [] volumes = conf .getStrings ("mapred.mesos.docker.volumes" );
102
- if (volumes .length > 0 ) {
103
+ if (volumes != null && volumes .length > 0 ) {
103
104
for (int i = 0 ; i < volumes .length ; i ++) {
104
105
String [] parts = volumes [i ].split (":" );
105
106
assert parts .length > 1 ;
0 commit comments