mirror of
https://github.com/containers/podman.git
synced 2025-12-02 02:58:03 +08:00
Merge pull request #16688 from ygalblum/quadlet_network_file
Quadlet: add network support
This commit is contained in:
7
test/e2e/quadlet/basic.network
Normal file
7
test/e2e/quadlet/basic.network
Normal file
@@ -0,0 +1,7 @@
|
||||
## assert-key-is Unit RequiresMountsFor "%t/containers"
|
||||
## assert-key-is Service Type oneshot
|
||||
## assert-key-is Service RemainAfterExit yes
|
||||
## assert-key-is-regex Service ExecStart ".*/podman network create --ignore systemd-basic"
|
||||
## assert-key-is Service SyslogIdentifier "%N"
|
||||
|
||||
[Network]
|
||||
5
test/e2e/quadlet/disable-dns.network
Normal file
5
test/e2e/quadlet/disable-dns.network
Normal file
@@ -0,0 +1,5 @@
|
||||
## assert-podman-final-args systemd-disable-dns
|
||||
## assert-podman-args "--disable-dns"
|
||||
|
||||
[Network]
|
||||
DisableDNS=yes
|
||||
5
test/e2e/quadlet/driver.network
Normal file
5
test/e2e/quadlet/driver.network
Normal file
@@ -0,0 +1,5 @@
|
||||
## assert-podman-final-args systemd-driver
|
||||
## assert-podman-args "--driver=macvlan"
|
||||
|
||||
[Network]
|
||||
Driver=macvlan
|
||||
7
test/e2e/quadlet/gateway.less-subnet.network
Normal file
7
test/e2e/quadlet/gateway.less-subnet.network
Normal file
@@ -0,0 +1,7 @@
|
||||
## assert-failed
|
||||
## assert-stderr-contains "cannot set more gateways than subnets"
|
||||
|
||||
[Network]
|
||||
Subnet=192.168.1.0/24
|
||||
Gateway=192.168.1.1
|
||||
Gateway=192.168.2.1
|
||||
6
test/e2e/quadlet/gateway.network
Normal file
6
test/e2e/quadlet/gateway.network
Normal file
@@ -0,0 +1,6 @@
|
||||
## assert-podman-final-args systemd-gateway
|
||||
## assert-podman-args "--subnet=192.168.1.0/24" "--gateway=192.168.1.1"
|
||||
|
||||
[Network]
|
||||
Subnet=192.168.1.0/24
|
||||
Gateway=192.168.1.1
|
||||
5
test/e2e/quadlet/gateway.no-subnet.network
Normal file
5
test/e2e/quadlet/gateway.no-subnet.network
Normal file
@@ -0,0 +1,5 @@
|
||||
## assert-failed
|
||||
## assert-stderr-contains "cannot set gateway or range without subnet"
|
||||
|
||||
[Network]
|
||||
Gateway=192.168.1.1
|
||||
5
test/e2e/quadlet/internal.network
Normal file
5
test/e2e/quadlet/internal.network
Normal file
@@ -0,0 +1,5 @@
|
||||
## assert-podman-final-args systemd-internal
|
||||
## assert-podman-args "--internal"
|
||||
|
||||
[Network]
|
||||
Internal=yes
|
||||
5
test/e2e/quadlet/ipam-driver.network
Normal file
5
test/e2e/quadlet/ipam-driver.network
Normal file
@@ -0,0 +1,5 @@
|
||||
## assert-podman-final-args systemd-ipam-driver
|
||||
## assert-podman-args "--ipam-driver=dhcp"
|
||||
|
||||
[Network]
|
||||
IPAMDriver=dhcp
|
||||
5
test/e2e/quadlet/ipv6.network
Normal file
5
test/e2e/quadlet/ipv6.network
Normal file
@@ -0,0 +1,5 @@
|
||||
## assert-podman-final-args systemd-ipv6
|
||||
## assert-podman-args "--ipv6"
|
||||
|
||||
[Network]
|
||||
IPv6=yes
|
||||
11
test/e2e/quadlet/label.network
Normal file
11
test/e2e/quadlet/label.network
Normal file
@@ -0,0 +1,11 @@
|
||||
## assert-podman-final-args systemd-label
|
||||
## assert-podman-args "--label" "org.foo.Arg0=arg0"
|
||||
## assert-podman-args "--label" "org.foo.Arg1=arg1"
|
||||
## assert-podman-args "--label" "org.foo.Arg2=arg 2"
|
||||
## assert-podman-args "--label" "org.foo.Arg3=arg3"
|
||||
|
||||
[Network]
|
||||
Label=org.foo.Arg1=arg1 "org.foo.Arg2=arg 2" \
|
||||
org.foo.Arg3=arg3
|
||||
|
||||
Label=org.foo.Arg0=arg0
|
||||
5
test/e2e/quadlet/network.kube
Normal file
5
test/e2e/quadlet/network.kube
Normal file
@@ -0,0 +1,5 @@
|
||||
## assert-podman-args "--network=basic"
|
||||
|
||||
[Kube]
|
||||
Yaml=deployment.yml
|
||||
Network=basic
|
||||
7
test/e2e/quadlet/network.quadlet.container
Normal file
7
test/e2e/quadlet/network.quadlet.container
Normal file
@@ -0,0 +1,7 @@
|
||||
## assert-podman-args "--network=systemd-basic"
|
||||
## assert-key-is "Unit" "Requires" "systemd-basic-network.service"
|
||||
## assert-key-is "Unit" "After" "systemd-basic-network.service"
|
||||
|
||||
[Container]
|
||||
Image=localhost/imagename
|
||||
Network=basic.network
|
||||
8
test/e2e/quadlet/network.quadlet.kube
Normal file
8
test/e2e/quadlet/network.quadlet.kube
Normal file
@@ -0,0 +1,8 @@
|
||||
## assert-podman-args "--network=systemd-basic"
|
||||
## assert-key-is "Unit" "Requires" "systemd-basic-network.service"
|
||||
## assert-key-is "Unit" "After" "systemd-basic-network.service"
|
||||
|
||||
|
||||
[Kube]
|
||||
Yaml=deployment.yml
|
||||
Network=basic.network
|
||||
7
test/e2e/quadlet/options.multiple.network
Normal file
7
test/e2e/quadlet/options.multiple.network
Normal file
@@ -0,0 +1,7 @@
|
||||
## assert-podman-final-args systemd-options.multiple
|
||||
## assert-podman-args "--opt" "mtu=1504"
|
||||
## assert-podman-args "--opt" "isolate=true"
|
||||
|
||||
[Network]
|
||||
Options=mtu=1504
|
||||
Options=isolate=true
|
||||
5
test/e2e/quadlet/options.network
Normal file
5
test/e2e/quadlet/options.network
Normal file
@@ -0,0 +1,5 @@
|
||||
## assert-podman-final-args systemd-options
|
||||
## assert-podman-args "--opt" "mtu=1504"
|
||||
|
||||
[Network]
|
||||
Options=mtu=1504
|
||||
7
test/e2e/quadlet/range.less-subnet.network
Normal file
7
test/e2e/quadlet/range.less-subnet.network
Normal file
@@ -0,0 +1,7 @@
|
||||
## assert-failed
|
||||
## assert-stderr-contains "cannot set more ranges than subnets"
|
||||
|
||||
[Network]
|
||||
Subnet=192.168.1.0/24
|
||||
IPRange=192.168.1.0/32
|
||||
IPRange=192.168.1.127/32
|
||||
6
test/e2e/quadlet/range.network
Normal file
6
test/e2e/quadlet/range.network
Normal file
@@ -0,0 +1,6 @@
|
||||
## assert-podman-final-args systemd-range
|
||||
## assert-podman-args "--subnet=192.168.1.0/24" "--ip-range=192.168.1.0/32"
|
||||
|
||||
[Network]
|
||||
Subnet=192.168.1.0/24
|
||||
IPRange=192.168.1.0/32
|
||||
5
test/e2e/quadlet/range.no-subnet.network
Normal file
5
test/e2e/quadlet/range.no-subnet.network
Normal file
@@ -0,0 +1,5 @@
|
||||
## assert-failed
|
||||
## assert-stderr-contains "cannot set gateway or range without subnet"
|
||||
|
||||
[Network]
|
||||
IPRange=192.168.1.0/32
|
||||
11
test/e2e/quadlet/subnet-trio.multiple.network
Normal file
11
test/e2e/quadlet/subnet-trio.multiple.network
Normal file
@@ -0,0 +1,11 @@
|
||||
## assert-podman-final-args systemd-subnet-trio.multiple
|
||||
## assert-podman-args "--subnet=192.168.1.0/24" "--gateway=192.168.1.1" "--ip-range=192.168.1.0/32"
|
||||
## assert-podman-args "--subnet=192.168.2.0/24" "--gateway=192.168.2.1" "--ip-range=192.168.2.0/32"
|
||||
|
||||
[Network]
|
||||
Subnet=192.168.1.0/24
|
||||
Subnet=192.168.2.0/24
|
||||
Gateway=192.168.1.1
|
||||
Gateway=192.168.2.1
|
||||
IPRange=192.168.1.0/32
|
||||
IPRange=192.168.2.0/32
|
||||
7
test/e2e/quadlet/subnet-trio.network
Normal file
7
test/e2e/quadlet/subnet-trio.network
Normal file
@@ -0,0 +1,7 @@
|
||||
## assert-podman-final-args systemd-subnet-trio
|
||||
## assert-podman-args "--subnet=192.168.1.0/24" "--gateway=192.168.1.1" "--ip-range=192.168.1.0/32"
|
||||
|
||||
[Network]
|
||||
Subnet=192.168.1.0/24
|
||||
Gateway=192.168.1.1
|
||||
IPRange=192.168.1.0/32
|
||||
7
test/e2e/quadlet/subnets.network
Normal file
7
test/e2e/quadlet/subnets.network
Normal file
@@ -0,0 +1,7 @@
|
||||
## assert-podman-final-args systemd-subnets
|
||||
## assert-podman-args "--subnet=192.168.0.0/24"
|
||||
## assert-podman-args "--subnet=192.168.1.0/24"
|
||||
|
||||
[Network]
|
||||
Subnet=192.168.0.0/24
|
||||
Subnet=192.168.1.0/24
|
||||
@@ -30,8 +30,11 @@ func loadQuadletTestcase(path string) *quadletTestcase {
|
||||
base := filepath.Base(path)
|
||||
ext := filepath.Ext(base)
|
||||
service := base[:len(base)-len(ext)]
|
||||
if ext == ".volume" {
|
||||
switch ext {
|
||||
case ".volume":
|
||||
service += "-volume"
|
||||
case ".network":
|
||||
service += "-network"
|
||||
}
|
||||
service += ".service"
|
||||
|
||||
@@ -360,6 +363,7 @@ var _ = Describe("quadlet system generator", func() {
|
||||
Entry("label.container", "label.container"),
|
||||
Entry("name.container", "name.container"),
|
||||
Entry("network.container", "network.container"),
|
||||
Entry("network.quadlet.container", "network.quadlet.container"),
|
||||
Entry("noimage.container", "noimage.container"),
|
||||
Entry("notify.container", "notify.container"),
|
||||
Entry("other-sections.container", "other-sections.container"),
|
||||
@@ -388,6 +392,27 @@ var _ = Describe("quadlet system generator", func() {
|
||||
Entry("Kube - User Remap Manual", "remap-manual.kube"),
|
||||
Entry("Kube - User Remap Auto", "remap-auto.kube"),
|
||||
Entry("Kube - User Remap Auto with IDs", "remap-auto2.kube"),
|
||||
Entry("Kube - Network", "network.kube"),
|
||||
Entry("Kube - Quadlet Network", "network.quadlet.kube"),
|
||||
|
||||
Entry("Network - Basic", "basic.network"),
|
||||
Entry("Network - Label", "label.network"),
|
||||
Entry("Network - Disable DNS", "disable-dns.network"),
|
||||
Entry("Network - Driver", "driver.network"),
|
||||
Entry("Network - Subnets", "subnets.network"),
|
||||
Entry("Network - Gateway", "gateway.network"),
|
||||
Entry("Network - Gateway without Subnet", "gateway.no-subnet.network"),
|
||||
Entry("Network - Gateway not enough Subnet", "gateway.less-subnet.network"),
|
||||
Entry("Network - Range", "range.network"),
|
||||
Entry("Network - Range without Subnet", "range.no-subnet.network"),
|
||||
Entry("Network - Range not enough Subnet", "range.less-subnet.network"),
|
||||
Entry("Network - subnet, gateway and range", "subnet-trio.network"),
|
||||
Entry("Network - multiple subnet, gateway and range", "subnet-trio.multiple.network"),
|
||||
Entry("Network - Internal network", "internal.network"),
|
||||
Entry("Network - IPAM Driver", "ipam-driver.network"),
|
||||
Entry("Network - IPv6", "ipv6.network"),
|
||||
Entry("Network - Options", "options.network"),
|
||||
Entry("Network - Multiple Options", "options.multiple.network"),
|
||||
)
|
||||
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user