Quadlet - support additional systemd unit relationship keys

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
This commit is contained in:
Ygal Blum 2025-04-17 14:51:24 -04:00
parent 51c4df1316
commit 6ac0a28564
2 changed files with 14 additions and 6 deletions

View File

@ -213,15 +213,21 @@ var (
validPortRange = regexp.Delayed(`\d+(-\d+)?(/udp|/tcp)?$`) validPortRange = regexp.Delayed(`\d+(-\d+)?(/udp|/tcp)?$`)
unitDependencyKeys = []string{ unitDependencyKeys = []string{
"Wants", "After",
"Before",
"BindsTo",
"Conflicts",
"OnFailure",
"OnSuccess",
"PartOf",
"PropagatesReloadTo",
"PropagatesStopTo",
"ReloadPropagatedFrom",
"Requires", "Requires",
"Requisite", "Requisite",
"BindsTo", "StopPropagatedFrom",
"PartOf",
"Upholds", "Upholds",
"Conflicts", "Wants",
"Before",
"After",
} }
// Supported keys in "Container" group // Supported keys in "Container" group

View File

@ -1,9 +1,11 @@
## assert-key-is "Unit" "Requires" "basic-build.service basic.service basic-image.service basic.service basic-network.service basic-pod.service basic-volume.service" ## assert-key-is "Unit" "Requires" "basic-build.service basic.service basic-image.service basic.service basic-network.service basic-pod.service basic-volume.service"
## assert-key-is-regex "Unit" "After" "network-online.target|podman-user-wait-network-online.service" "basic-build.service basic.service basic-image.service basic.service basic-network.service basic-pod.service basic-volume.service" ## assert-key-is-regex "Unit" "After" "network-online.target|podman-user-wait-network-online.service" "basic-build.service basic.service basic-image.service basic.service basic-network.service basic-pod.service basic-volume.service"
## assert-key-is "Unit" "PropagatesStopTo" "basic.service"
[Unit] [Unit]
After=basic.build basic.container basic.image basic.kube basic.network basic.pod basic.volume After=basic.build basic.container basic.image basic.kube basic.network basic.pod basic.volume
Requires=basic.build basic.container basic.image basic.kube basic.network basic.pod basic.volume Requires=basic.build basic.container basic.image basic.kube basic.network basic.pod basic.volume
PropagatesStopTo=basic.container
[Container] [Container]
Image=localhost/imagename Image=localhost/imagename