From 9ec8a60eae8987f06d1971634c438586534d2987 Mon Sep 17 00:00:00 2001
From: zhangguanzhang <zhangguanzhang@qq.com>
Date: Mon, 31 Aug 2020 22:12:35 +0800
Subject: handle play kube with pod.spec.hostAliases

Signed-off-by: zhangguanzhang <zhangguanzhang@qq.com>
---
 pkg/domain/infra/abi/play.go | 10 ++++++++++
 1 file changed, 10 insertions(+)

(limited to 'pkg/domain')

diff --git a/pkg/domain/infra/abi/play.go b/pkg/domain/infra/abi/play.go
index 729cd143c..31ad51672 100644
--- a/pkg/domain/infra/abi/play.go
+++ b/pkg/domain/infra/abi/play.go
@@ -144,6 +144,16 @@ func (ic *ContainerEngine) playKubePod(ctx context.Context, podName string, podY
 		podOptions = append(podOptions, libpod.WithPodHostNetwork())
 	}
 
+	if podYAML.Spec.HostAliases != nil {
+		hosts := make([]string, 0, len(podYAML.Spec.HostAliases))
+		for _, hostAlias := range podYAML.Spec.HostAliases {
+			for _, host := range hostAlias.Hostnames {
+				hosts = append(hosts, host+":"+hostAlias.IP)
+			}
+		}
+		podOptions = append(podOptions, libpod.WithPodHosts(hosts))
+	}
+
 	nsOptions, err := generate.GetNamespaceOptions(strings.Split(createconfig.DefaultKernelNamespaces, ","))
 	if err != nil {
 		return nil, err
-- 
cgit v1.2.3-54-g00ecf