22
33import com .github .dockerjava .api .exception .DockerException ;
44import com .github .dockerjava .api .model .ContainerSpec ;
5+ import com .github .dockerjava .api .model .EndpointSpec ;
56import com .github .dockerjava .api .model .Network ;
67import com .github .dockerjava .api .model .NetworkAttachmentConfig ;
8+ import com .github .dockerjava .api .model .PortConfig ;
9+ import com .github .dockerjava .api .model .PortConfigProtocol ;
710import com .github .dockerjava .api .model .Service ;
811import com .github .dockerjava .api .model .ServiceModeConfig ;
912import com .github .dockerjava .api .model .ServiceReplicatedModeOptions ;
1013import com .github .dockerjava .api .model .ServiceSpec ;
1114import com .github .dockerjava .api .model .SwarmSpec ;
1215import com .github .dockerjava .api .model .TaskSpec ;
16+ import com .google .common .collect .ImmutableMap ;
1317import com .google .common .collect .Lists ;
1418import org .junit .Test ;
1519import org .slf4j .Logger ;
@@ -26,7 +30,7 @@ public class CreateServiceCmdExecIT extends SwarmCmdIT {
2630
2731 public static final Logger LOG = LoggerFactory .getLogger (CreateServiceCmdExecIT .class );
2832 private static final String SERVICE_NAME = "theservice" ;
29-
33+
3034 @ Test
3135 public void testCreateService () throws DockerException {
3236 dockerRule .getClient ().initializeSwarmCmd (new SwarmSpec ())
@@ -62,7 +66,6 @@ public void testCreateServiceWithNetworks() {
6266 .withIpam (new Network .Ipam ()
6367 .withDriver ("default" ))
6468 .exec ().getId ();
65-
6669 ServiceSpec spec = new ServiceSpec ()
6770 .withName (SERVICE_NAME )
6871 .withTaskTemplate (new TaskSpec ()
@@ -74,10 +77,16 @@ public void testCreateServiceWithNetworks() {
7477 .withTarget (networkId )
7578 .withAliases (Lists .<String >newArrayList ("alias1" , "alias2" ))
7679 ))
80+ .withLabels (ImmutableMap .of ("com.docker.java.usage" ,"SwarmServiceIT" ))
7781 .withMode (new ServiceModeConfig ().withReplicated (
7882 new ServiceReplicatedModeOptions ()
7983 .withReplicas (1 )
80- ));
84+ )).withEndpointSpec (new EndpointSpec ()
85+ .withPorts (Lists .<PortConfig >newArrayList (new PortConfig ()
86+ .withPublishMode (PortConfig .PublishMode .host )
87+ .withPublishedPort (22 )
88+ .withProtocol (PortConfigProtocol .TCP )
89+ )));
8190
8291 dockerRule .getClient ().createServiceCmd (spec ).exec ();
8392
0 commit comments