diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2022-01-13 16:44:52 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-13 16:44:52 +0100 |
commit | ab7228b3c27719e447de4dffe9b3fd7f67d6f346 (patch) | |
tree | 281392e18e84d47b859554b0bd612ea5db431e98 /pkg | |
parent | e98058a3cf4f5ba4cd2d37dfdb2a0951b9aa9730 (diff) | |
parent | f257d983943d6ec2253d50a245cd4810cab45e4b (diff) | |
download | podman-ab7228b3c27719e447de4dffe9b3fd7f67d6f346.tar.gz podman-ab7228b3c27719e447de4dffe9b3fd7f67d6f346.tar.bz2 podman-ab7228b3c27719e447de4dffe9b3fd7f67d6f346.zip |
Merge pull request #12836 from cdoern/podSysCtl
Podman Pod Create --sysctl support
Diffstat (limited to 'pkg')
-rw-r--r-- | pkg/domain/entities/pods.go | 12 | ||||
-rw-r--r-- | pkg/specgen/podspecgen.go | 2 |
2 files changed, 13 insertions, 1 deletions
diff --git a/pkg/domain/entities/pods.go b/pkg/domain/entities/pods.go index 1b5a1be51..cc9476d79 100644 --- a/pkg/domain/entities/pods.go +++ b/pkg/domain/entities/pods.go @@ -139,6 +139,7 @@ type PodCreateOptions struct { Volume []string `json:"volume,omitempty"` VolumesFrom []string `json:"volumes_from,omitempty"` SecurityOpt []string `json:"security_opt,omitempty"` + Sysctl []string `json:"sysctl,omitempty"` } // PodLogsOptions describes the options to extract pod logs. @@ -240,7 +241,7 @@ type ContainerCreateOptions struct { StorageOpts []string SubUIDName string SubGIDName string - Sysctl []string + Sysctl []string `json:"sysctl,omitempty"` Systemd string Timeout uint TLSVerify commonFlag.OptionalBool @@ -360,6 +361,15 @@ func ToPodSpecGen(s specgen.PodSpecGenerator, p *PodCreateOptions) (*specgen.Pod } } s.Userns = p.Userns + sysctl := map[string]string{} + if ctl := p.Sysctl; len(ctl) > 0 { + sysctl, err = util.ValidateSysctls(ctl) + if err != nil { + return nil, err + } + } + s.Sysctl = sysctl + return &s, nil } diff --git a/pkg/specgen/podspecgen.go b/pkg/specgen/podspecgen.go index fdaa714da..31f96b933 100644 --- a/pkg/specgen/podspecgen.go +++ b/pkg/specgen/podspecgen.go @@ -74,6 +74,8 @@ type PodBasicConfig struct { Userns Namespace `json:"userns,omitempty"` // Devices contains user specified Devices to be added to the Pod Devices []string `json:"pod_devices,omitempty"` + // Sysctl sets kernel parameters for the pod + Sysctl map[string]string `json:"sysctl,omitempty"` } // PodNetworkConfig contains networking configuration for a pod. |