Browse Source

Add support for extra_hosts in composefile v3

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Vincent Demeester 8 years ago
parent
commit
f32869d956
1 changed files with 9 additions and 0 deletions
  1. 9 0
      cli/command/stack/deploy.go

+ 9 - 0
cli/command/stack/deploy.go

@@ -498,6 +498,7 @@ func convertService(
 				Command:         service.Entrypoint,
 				Command:         service.Entrypoint,
 				Args:            service.Command,
 				Args:            service.Command,
 				Hostname:        service.Hostname,
 				Hostname:        service.Hostname,
+				Hosts:           convertExtraHosts(service.ExtraHosts),
 				Env:             convertEnvironment(service.Environment),
 				Env:             convertEnvironment(service.Environment),
 				Labels:          getStackLabels(namespace.name, service.Labels),
 				Labels:          getStackLabels(namespace.name, service.Labels),
 				Dir:             service.WorkingDir,
 				Dir:             service.WorkingDir,
@@ -521,6 +522,14 @@ func convertService(
 	return serviceSpec, nil
 	return serviceSpec, nil
 }
 }
 
 
+func convertExtraHosts(extraHosts map[string]string) []string {
+	hosts := []string{}
+	for host, ip := range extraHosts {
+		hosts = append(hosts, fmt.Sprintf("%s %s", host, ip))
+	}
+	return hosts
+}
+
 func convertRestartPolicy(restart string, source *composetypes.RestartPolicy) (*swarm.RestartPolicy, error) {
 func convertRestartPolicy(restart string, source *composetypes.RestartPolicy) (*swarm.RestartPolicy, error) {
 	// TODO: log if restart is being ignored
 	// TODO: log if restart is being ignored
 	if source == nil {
 	if source == nil {