mirror of
https://github.com/containers/podman.git
synced 2025-08-06 11:32:07 +08:00
Merge pull request #11289 from Luap99/net-alias-id
Fix network aliases with network id
This commit is contained in:
@ -246,6 +246,20 @@ func (r *Runtime) setupContainer(ctx context.Context, ctr *Container) (_ *Contai
|
|||||||
ctr.config.Networks = netNames
|
ctr.config.Networks = netNames
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// https://github.com/containers/podman/issues/11285
|
||||||
|
// normalize the networks aliases to use network names and never ids
|
||||||
|
if len(ctr.config.NetworkAliases) > 0 {
|
||||||
|
netAliases := make(map[string][]string, len(ctr.config.NetworkAliases))
|
||||||
|
for nameOrID, aliases := range ctr.config.NetworkAliases {
|
||||||
|
netName, err := network.NormalizeName(r.config, nameOrID)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
netAliases[netName] = aliases
|
||||||
|
}
|
||||||
|
ctr.config.NetworkAliases = netAliases
|
||||||
|
}
|
||||||
|
|
||||||
// Inhibit shutdown until creation succeeds
|
// Inhibit shutdown until creation succeeds
|
||||||
shutdown.Inhibit()
|
shutdown.Inhibit()
|
||||||
defer shutdown.Uninhibit()
|
defer shutdown.Uninhibit()
|
||||||
|
@ -236,8 +236,6 @@ var _ = Describe("Podman network connect and disconnect", func() {
|
|||||||
})
|
})
|
||||||
|
|
||||||
It("podman network connect and run with network ID", func() {
|
It("podman network connect and run with network ID", func() {
|
||||||
SkipIfRemote("remote flakes to much I will fix this in another PR")
|
|
||||||
SkipIfRootless("network connect and disconnect are only rootful")
|
|
||||||
netName := "ID" + stringid.GenerateNonCryptoID()
|
netName := "ID" + stringid.GenerateNonCryptoID()
|
||||||
session := podmanTest.Podman([]string{"network", "create", netName})
|
session := podmanTest.Podman([]string{"network", "create", netName})
|
||||||
session.WaitWithDefaultTimeout()
|
session.WaitWithDefaultTimeout()
|
||||||
@ -249,7 +247,7 @@ var _ = Describe("Podman network connect and disconnect", func() {
|
|||||||
Expect(session).Should(Exit(0))
|
Expect(session).Should(Exit(0))
|
||||||
netID := session.OutputToString()
|
netID := session.OutputToString()
|
||||||
|
|
||||||
ctr := podmanTest.Podman([]string{"run", "-dt", "--name", "test", "--network", netID, ALPINE, "top"})
|
ctr := podmanTest.Podman([]string{"run", "-dt", "--name", "test", "--network", netID, "--network-alias", "somealias", ALPINE, "top"})
|
||||||
ctr.WaitWithDefaultTimeout()
|
ctr.WaitWithDefaultTimeout()
|
||||||
Expect(ctr).Should(Exit(0))
|
Expect(ctr).Should(Exit(0))
|
||||||
|
|
||||||
@ -269,7 +267,7 @@ var _ = Describe("Podman network connect and disconnect", func() {
|
|||||||
Expect(session).Should(Exit(0))
|
Expect(session).Should(Exit(0))
|
||||||
newNetID := session.OutputToString()
|
newNetID := session.OutputToString()
|
||||||
|
|
||||||
connect := podmanTest.Podman([]string{"network", "connect", newNetID, "test"})
|
connect := podmanTest.Podman([]string{"network", "connect", "--alias", "secondalias", newNetID, "test"})
|
||||||
connect.WaitWithDefaultTimeout()
|
connect.WaitWithDefaultTimeout()
|
||||||
Expect(connect).Should(Exit(0))
|
Expect(connect).Should(Exit(0))
|
||||||
|
|
||||||
@ -324,8 +322,6 @@ var _ = Describe("Podman network connect and disconnect", func() {
|
|||||||
})
|
})
|
||||||
|
|
||||||
It("podman network disconnect and run with network ID", func() {
|
It("podman network disconnect and run with network ID", func() {
|
||||||
SkipIfRemote("remote flakes to much I will fix this in another PR")
|
|
||||||
SkipIfRootless("network connect and disconnect are only rootful")
|
|
||||||
netName := "aliasTest" + stringid.GenerateNonCryptoID()
|
netName := "aliasTest" + stringid.GenerateNonCryptoID()
|
||||||
session := podmanTest.Podman([]string{"network", "create", netName})
|
session := podmanTest.Podman([]string{"network", "create", netName})
|
||||||
session.WaitWithDefaultTimeout()
|
session.WaitWithDefaultTimeout()
|
||||||
|
@ -764,7 +764,6 @@ var _ = Describe("Podman run networking", func() {
|
|||||||
})
|
})
|
||||||
|
|
||||||
It("podman run check dnsname adds dns search domain", func() {
|
It("podman run check dnsname adds dns search domain", func() {
|
||||||
Skip("needs dnsname#57")
|
|
||||||
net := "dnsname" + stringid.GenerateNonCryptoID()
|
net := "dnsname" + stringid.GenerateNonCryptoID()
|
||||||
session := podmanTest.Podman([]string{"network", "create", net})
|
session := podmanTest.Podman([]string{"network", "create", net})
|
||||||
session.WaitWithDefaultTimeout()
|
session.WaitWithDefaultTimeout()
|
||||||
|
Reference in New Issue
Block a user