Quadlet Network - Fix the name of the required network service

The name of the network service does not start with systemd only the
podman network name

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
This commit is contained in:
Ygal Blum
2023-01-02 14:52:44 +02:00
parent e9417a9fe4
commit a061d793df
3 changed files with 8 additions and 8 deletions

View File

@ -811,13 +811,13 @@ func addNetworks(quadletUnitFile *parser.UnitFile, groupName string, serviceUnit
networks := quadletUnitFile.LookupAll(groupName, KeyNetwork)
for _, network := range networks {
if len(network) > 0 {
networkName, options, found := strings.Cut(network, ":")
if strings.HasSuffix(networkName, ".network") {
quadletNetworkName, options, found := strings.Cut(network, ":")
if strings.HasSuffix(quadletNetworkName, ".network") {
// the podman network name is systemd-$name
networkName = replaceExtension(networkName, "", "systemd-", "")
networkName := replaceExtension(quadletNetworkName, "", "systemd-", "")
// the systemd unit name is $name-network.service
networkServiceName := replaceExtension(networkName, ".service", "", "-network")
networkServiceName := replaceExtension(quadletNetworkName, ".service", "", "-network")
serviceUnitFile.Add(UnitGroup, "Requires", networkServiceName)
serviceUnitFile.Add(UnitGroup, "After", networkServiceName)

View File

@ -1,6 +1,6 @@
## assert-podman-args "--network=systemd-basic"
## assert-key-is "Unit" "Requires" "systemd-basic-network.service"
## assert-key-is "Unit" "After" "systemd-basic-network.service"
## assert-key-is "Unit" "Requires" "basic-network.service"
## assert-key-is "Unit" "After" "basic-network.service"
[Container]
Image=localhost/imagename

View File

@ -1,6 +1,6 @@
## assert-podman-args "--network=systemd-basic"
## assert-key-is "Unit" "Requires" "systemd-basic-network.service"
## assert-key-is "Unit" "After" "systemd-basic-network.service"
## assert-key-is "Unit" "Requires" "basic-network.service"
## assert-key-is "Unit" "After" "basic-network.service"
[Kube]