Loading assets/auto-deploy-app/test/templates/deployment_test.go +60 −0 Original line number Diff line number Diff line Loading @@ -422,6 +422,66 @@ func TestDeploymentTemplate(t *testing.T) { }) } // deployment hostAliases for _, tc := range []struct { CaseName string Release string Values map[string]string ExpectedHostAliases []coreV1.HostAlias }{ { CaseName: "default hostAliases", Release: "production", ExpectedHostAliases: nil, }, { CaseName: "hostAliases for two IP addresses", Release: "production", Values: map[string]string{ "hostAliases[0].ip": "1.2.3.4", "hostAliases[0].hostnames[0]": "host1.example1.com", "hostAliases[1].ip": "5.6.7.8", "hostAliases[1].hostnames[0]": "host1.example2.com", "hostAliases[1].hostnames[1]": "host2.example2.com", }, ExpectedHostAliases: []coreV1.HostAlias{ { IP: "1.2.3.4", Hostnames: []string{"host1.example1.com"}, }, { IP: "5.6.7.8", Hostnames: []string{"host1.example2.com", "host2.example2.com"}, }, }, }, } { t.Run(tc.CaseName, func(t *testing.T) { namespaceName := "minimal-ruby-app-" + strings.ToLower(random.UniqueId()) values := map[string]string{ "gitlab.app": "auto-devops-examples/minimal-ruby-app", "gitlab.env": "prod", } mergeStringMap(values, tc.Values) options := &helm.Options{ SetValues: values, KubectlOptions: k8s.NewKubectlOptions("", "", namespaceName), } output := helm.RenderTemplate(t, options, helmChartPath, tc.Release, []string{"templates/deployment.yaml"}) var deployment appsV1.Deployment helm.UnmarshalK8SYaml(t, output, &deployment) require.Equal(t, tc.ExpectedHostAliases, deployment.Spec.Template.Spec.HostAliases) }) } // Test Deployment selector for _, tc := range []struct { CaseName string Loading Loading
assets/auto-deploy-app/test/templates/deployment_test.go +60 −0 Original line number Diff line number Diff line Loading @@ -422,6 +422,66 @@ func TestDeploymentTemplate(t *testing.T) { }) } // deployment hostAliases for _, tc := range []struct { CaseName string Release string Values map[string]string ExpectedHostAliases []coreV1.HostAlias }{ { CaseName: "default hostAliases", Release: "production", ExpectedHostAliases: nil, }, { CaseName: "hostAliases for two IP addresses", Release: "production", Values: map[string]string{ "hostAliases[0].ip": "1.2.3.4", "hostAliases[0].hostnames[0]": "host1.example1.com", "hostAliases[1].ip": "5.6.7.8", "hostAliases[1].hostnames[0]": "host1.example2.com", "hostAliases[1].hostnames[1]": "host2.example2.com", }, ExpectedHostAliases: []coreV1.HostAlias{ { IP: "1.2.3.4", Hostnames: []string{"host1.example1.com"}, }, { IP: "5.6.7.8", Hostnames: []string{"host1.example2.com", "host2.example2.com"}, }, }, }, } { t.Run(tc.CaseName, func(t *testing.T) { namespaceName := "minimal-ruby-app-" + strings.ToLower(random.UniqueId()) values := map[string]string{ "gitlab.app": "auto-devops-examples/minimal-ruby-app", "gitlab.env": "prod", } mergeStringMap(values, tc.Values) options := &helm.Options{ SetValues: values, KubectlOptions: k8s.NewKubectlOptions("", "", namespaceName), } output := helm.RenderTemplate(t, options, helmChartPath, tc.Release, []string{"templates/deployment.yaml"}) var deployment appsV1.Deployment helm.UnmarshalK8SYaml(t, output, &deployment) require.Equal(t, tc.ExpectedHostAliases, deployment.Spec.Template.Spec.HostAliases) }) } // Test Deployment selector for _, tc := range []struct { CaseName string Loading