Skip to content

Commit 33d7317

Browse files
Refactor stsSetupHostAliases for conditional host aliases
1 parent 06cb9f4 commit 33d7317

File tree

1 file changed

+19
-9
lines changed

1 file changed

+19
-9
lines changed

pkg/model/common/creator/stateful-set-application.go

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -119,21 +119,31 @@ func (c *Creator) stsEnsureAppContainerProbesSpecified(statefulSet *apps.Statefu
119119

120120
// stsSetupHostAliases
121121
func (c *Creator) stsSetupHostAliases(statefulSet *apps.StatefulSet, host *api.Host) {
122+
var aliases []core.HostAlias
123+
122124
// Ensure pod created by this StatefulSet has alias 127.0.0.1
123-
statefulSet.Spec.Template.Spec.HostAliases = []core.HostAlias{
124-
{
125-
IP: "127.0.0.1",
125+
// Only add if there's a valid hostname
126+
podHostname := c.nm.Name(interfaces.NamePodHostname, host)
127+
if podHostname != "" {
128+
aliases = append(aliases, core. HostAlias{
129+
IP: "127.0.0.1",
126130
Hostnames: []string{
127-
c.nm.Name(interfaces.NamePodHostname, host),
131+
podHostname,
128132
},
129-
},
133+
})
130134
}
135+
131136
// Add hostAliases from PodTemplate if any
132137
if podTemplate, ok := host.GetPodTemplate(); ok {
133-
statefulSet.Spec.Template.Spec.HostAliases = append(
134-
statefulSet.Spec.Template.Spec.HostAliases,
135-
podTemplate.Spec.HostAliases...,
136-
)
138+
aliases = append(aliases, podTemplate. Spec.HostAliases...)
139+
}
140+
141+
// Only set hostAliases if we have any; otherwise leave it nil (unset)
142+
if len(aliases) > 0 {
143+
statefulSet.Spec.Template.Spec.HostAliases = aliases
144+
} else {
145+
// Explicitly unset to comply with Gatekeeper policy
146+
statefulSet.Spec.Template.Spec.HostAliases = nil
137147
}
138148
}
139149

0 commit comments

Comments
 (0)