fix: empty out the aliases on recreation (#1699)

* fix: empty out the aliases on recreation

* test alias purging
This commit is contained in:
Simon Aronsson 2023-07-28 15:20:22 +02:00 committed by GitHub
parent a5d7f23d2e
commit bba9b2b100
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 35 additions and 1 deletions

View file

@ -1,6 +1,7 @@
package container
import (
"github.com/docker/docker/api/types/network"
"time"
"github.com/containrrr/watchtower/internal/util"
@ -284,6 +285,24 @@ var _ = Describe("the client", func() {
})
})
})
Describe(`GetNetworkConfig`, func() {
When(`providing a container with network aliases`, func() {
It(`should purge the aliases`, func() {
aliases := []string{"One", "Two"}
client := dockerClient{
api: docker,
ClientOptions: ClientOptions{PullImages: false, IncludeRestarting: false},
}
container := MockContainer(WithImageName("docker.io/prefix/imagename:latest"))
endpoints := map[string]*network.EndpointSettings{
`test`: {Aliases: aliases},
}
container.containerInfo.NetworkSettings = &types.NetworkSettings{Networks: endpoints}
Expect(container.ContainerInfo().NetworkSettings.Networks[`test`].Aliases).To(Equal(aliases))
Expect(client.GetNetworkConfig(container).EndpointsConfig[`test`].Aliases).To(BeEmpty())
})
})
})
})
// Capture logrus output in buffer