Skip to content

Commit

Permalink
Merge pull request #8756 from Luap99/fix-8748
Browse files Browse the repository at this point in the history
Always add the default gateway to the cni config file
  • Loading branch information
openshift-merge-robot authored Dec 16, 2020
2 parents e75dc3d + edf0e91 commit 915ae6d
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 2 deletions.
4 changes: 4 additions & 0 deletions libpod/network/netconflist.go
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,10 @@ func NewIPAMLocalHostRange(subnet *net.IPNet, ipRange *net.IPNet, gw net.IP) ([]
}
if gw != nil {
hostRange.Gateway = gw.String()
} else {
// Add first ip in subnet as gateway. It is not required
// by cni but should be included because of network inspect.
hostRange.Gateway = CalcGatewayIP(subnet).String()
}
ranges = append(ranges, hostRange)
return ranges, nil
Expand Down
6 changes: 4 additions & 2 deletions libpod/network/netconflist_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,8 @@ func TestNewIPAMLocalHostRange(t *testing.T) {
subnet: &net.IPNet{IP: net.IPv4(192, 168, 0, 0), Mask: net.IPv4Mask(255, 255, 255, 0)},
want: []IPAMLocalHostRangeConf{
{
Subnet: "192.168.0.0/24",
Subnet: "192.168.0.0/24",
Gateway: "192.168.0.1",
},
},
},
Expand All @@ -74,7 +75,8 @@ func TestNewIPAMLocalHostRange(t *testing.T) {
subnet: &net.IPNet{IP: net.ParseIP("2001:DB8::"), Mask: net.IPMask(net.ParseIP("ffff:ffff:ffff::"))},
want: []IPAMLocalHostRangeConf{
{
Subnet: "2001:db8::/48",
Subnet: "2001:db8::/48",
Gateway: "2001:db8::1",
},
},
},
Expand Down
3 changes: 3 additions & 0 deletions test/e2e/network_create_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@ var _ = Describe("Podman network create", func() {
Expect(bridgePlugin.IPAM.Routes[0].Dest).To(Equal("0.0.0.0/0"))
Expect(bridgePlugin.IsGW).To(BeTrue())
Expect(bridgePlugin.IPMasq).To(BeTrue())
Expect(bridgePlugin.IPAM.Ranges[0][0].Gateway).ToNot(BeEmpty())
Expect(portMapPlugin.Capabilities["portMappings"]).To(BeTrue())

})
Expand Down Expand Up @@ -153,6 +154,8 @@ var _ = Describe("Podman network create", func() {
// JSON the bridge info
bridgePlugin, err := genericPluginsToBridge(result["plugins"], "bridge")
Expect(err).To(BeNil())
// check that gateway is added to config
Expect(bridgePlugin.IPAM.Ranges[0][0].Gateway).To(Equal("10.11.12.1"))

// Once a container executes a new network, the nic will be created. We should clean those up
// best we can
Expand Down

0 comments on commit 915ae6d

Please sign in to comment.