mirror of
https://github.com/containers/podman.git
synced 2025-05-23 18:17:53 +08:00
quadlet: support HostName
Add a new `HostName` field to Quadlet `.container` files. Fixes: #18486 Signed-off-by: Valentin Rothberg <vrothberg@redhat.com>
This commit is contained in:
@ -109,6 +109,7 @@ Valid options for `[Container]` are listed below:
|
|||||||
| HealthStartupSuccess=2 | --health-startup-success=2 |
|
| HealthStartupSuccess=2 | --health-startup-success=2 |
|
||||||
| HealthStartupTimeout=1m33s | --health-startup-timeout=1m33s |
|
| HealthStartupTimeout=1m33s | --health-startup-timeout=1m33s |
|
||||||
| HealthTimeout=20s | --health-timeout=20s |
|
| HealthTimeout=20s | --health-timeout=20s |
|
||||||
|
| HostName=new-host-name | --hostname="new-host-name" |
|
||||||
| Image=ubi8 | Image specification - ubi8 |
|
| Image=ubi8 | Image specification - ubi8 |
|
||||||
| IP=192.5.0.1 | --ip 192.5.0.0 |
|
| IP=192.5.0.1 | --ip 192.5.0.0 |
|
||||||
| IP6=fd46:db93:aa76:ac37::10 | --ip6 2001:db8::1 |
|
| IP6=fd46:db93:aa76:ac37::10 | --ip6 2001:db8::1 |
|
||||||
@ -276,6 +277,11 @@ Equivalent to the Podman `--health-startup-timeout` option.
|
|||||||
The maximum time allowed to complete the healthcheck before an interval is considered failed.
|
The maximum time allowed to complete the healthcheck before an interval is considered failed.
|
||||||
Equivalent to the Podman `--health-timeout` option.
|
Equivalent to the Podman `--health-timeout` option.
|
||||||
|
|
||||||
|
### `HostName=`
|
||||||
|
|
||||||
|
Sets the host name that is available inside the container.
|
||||||
|
Equivalent to the Podman `--hostname` option.
|
||||||
|
|
||||||
### `Image=`
|
### `Image=`
|
||||||
|
|
||||||
The image to run in the container. This image must be locally installed for the service to work
|
The image to run in the container. This image must be locally installed for the service to work
|
||||||
|
@ -58,6 +58,7 @@ const (
|
|||||||
KeyHealthStartupSuccess = "HealthStartupSuccess"
|
KeyHealthStartupSuccess = "HealthStartupSuccess"
|
||||||
KeyHealthStartupTimeout = "HealthStartupTimeout"
|
KeyHealthStartupTimeout = "HealthStartupTimeout"
|
||||||
KeyHealthTimeout = "HealthTimeout"
|
KeyHealthTimeout = "HealthTimeout"
|
||||||
|
KeyHostName = "HostName"
|
||||||
KeyImage = "Image"
|
KeyImage = "Image"
|
||||||
KeyIP = "IP"
|
KeyIP = "IP"
|
||||||
KeyIP6 = "IP6"
|
KeyIP6 = "IP6"
|
||||||
@ -129,6 +130,7 @@ var (
|
|||||||
KeyHealthStartupSuccess: true,
|
KeyHealthStartupSuccess: true,
|
||||||
KeyHealthStartupTimeout: true,
|
KeyHealthStartupTimeout: true,
|
||||||
KeyHealthTimeout: true,
|
KeyHealthTimeout: true,
|
||||||
|
KeyHostName: true,
|
||||||
KeyImage: true,
|
KeyImage: true,
|
||||||
KeyIP: true,
|
KeyIP: true,
|
||||||
KeyIP6: true,
|
KeyIP6: true,
|
||||||
@ -614,6 +616,10 @@ func ConvertContainer(container *parser.UnitFile, isUser bool) (*parser.UnitFile
|
|||||||
|
|
||||||
handleHealth(container, ContainerGroup, podman)
|
handleHealth(container, ContainerGroup, podman)
|
||||||
|
|
||||||
|
if hostname, ok := container.Lookup(ContainerGroup, KeyHostName); ok {
|
||||||
|
podman.add("--hostname", hostname)
|
||||||
|
}
|
||||||
|
|
||||||
podmanArgs := container.LookupAllArgs(ContainerGroup, KeyPodmanArgs)
|
podmanArgs := container.LookupAllArgs(ContainerGroup, KeyPodmanArgs)
|
||||||
podman.add(podmanArgs...)
|
podman.add(podmanArgs...)
|
||||||
|
|
||||||
|
4
test/e2e/quadlet/hostname.container
Normal file
4
test/e2e/quadlet/hostname.container
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
[Container]
|
||||||
|
Image=localhost/imagename
|
||||||
|
## assert-podman-args "--hostname" "\"quadlet-host\""
|
||||||
|
HostName="quadlet-host"
|
@ -575,6 +575,7 @@ var _ = Describe("quadlet system generator", func() {
|
|||||||
Entry("logdriver.container", "logdriver.container"),
|
Entry("logdriver.container", "logdriver.container"),
|
||||||
Entry("mount.container", "mount.container"),
|
Entry("mount.container", "mount.container"),
|
||||||
Entry("health.container", "health.container"),
|
Entry("health.container", "health.container"),
|
||||||
|
Entry("hostname.container", "hostname.container"),
|
||||||
|
|
||||||
Entry("basic.volume", "basic.volume"),
|
Entry("basic.volume", "basic.volume"),
|
||||||
Entry("label.volume", "label.volume"),
|
Entry("label.volume", "label.volume"),
|
||||||
|
Reference in New Issue
Block a user