summaryrefslogtreecommitdiff
path: root/vendor
diff options
context:
space:
mode:
authorDaniel J Walsh <dwalsh@redhat.com>2021-09-15 10:41:52 -0400
committerDaniel J Walsh <dwalsh@redhat.com>2021-09-15 10:43:51 -0400
commit3e77f960f65687dcb1d571ebe70278028c6de441 (patch)
treece531988c837f88aee6e4548bf5a59662665a3c1 /vendor
parent81f41ca0d2a0acd9896bb60b1096baa236725dec (diff)
downloadpodman-3e77f960f65687dcb1d571ebe70278028c6de441.tar.gz
podman-3e77f960f65687dcb1d571ebe70278028c6de441.tar.bz2
podman-3e77f960f65687dcb1d571ebe70278028c6de441.zip
Set default storage from containers.conf for temporary images
Fixes: https://github.com/containers/podman/issues/11107 Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
Diffstat (limited to 'vendor')
-rw-r--r--vendor/github.com/containers/common/pkg/config/config.go28
-rw-r--r--vendor/github.com/containers/common/pkg/config/containers.conf18
-rw-r--r--vendor/github.com/containers/common/pkg/config/default.go11
-rw-r--r--vendor/github.com/containers/common/version/version.go2
-rw-r--r--vendor/modules.txt2
5 files changed, 53 insertions, 8 deletions
diff --git a/vendor/github.com/containers/common/pkg/config/config.go b/vendor/github.com/containers/common/pkg/config/config.go
index 3a6ce8780..b982aa552 100644
--- a/vendor/github.com/containers/common/pkg/config/config.go
+++ b/vendor/github.com/containers/common/pkg/config/config.go
@@ -234,6 +234,9 @@ type EngineConfig struct {
// EventsLogger determines where events should be logged.
EventsLogger string `toml:"events_logger,omitempty"`
+ // graphRoot internal stores the location of the graphroot
+ graphRoot string
+
// HelperBinariesDir is a list of directories which are used to search for
// helper binaries.
HelperBinariesDir []string `toml:"helper_binaries_dir"`
@@ -384,6 +387,12 @@ type EngineConfig struct {
// before sending kill signal.
StopTimeout uint `toml:"stop_timeout,omitempty"`
+ // ImageCopyTmpDir is the default location for storing temporary
+ // container image content, Can be overridden with the TMPDIR
+ // environment variable. If you specify "storage", then the
+ // location of the container/storage tmp directory will be used.
+ ImageCopyTmpDir string `toml:"image_copy_tmp_dir,omitempty"`
+
// TmpDir is the path to a temporary directory to store per-boot container
// files. Must be stored in a tmpfs.
TmpDir string `toml:"tmp_dir,omitempty"`
@@ -1148,3 +1157,22 @@ func (c *Config) FindHelperBinary(name string, searchPATH bool) (string, error)
}
return "", errors.Errorf("could not find %q in one of %v", name, c.Engine.HelperBinariesDir)
}
+
+// ImageCopyTmpDir default directory to store tempory image files during copy
+func (c *Config) ImageCopyTmpDir() (string, error) {
+ if path, found := os.LookupEnv("TMPDIR"); found {
+ return path, nil
+ }
+ switch c.Engine.ImageCopyTmpDir {
+ case "":
+ return "", nil
+ case "storage":
+ return filepath.Join(c.Engine.graphRoot, "tmp"), nil
+ default:
+ if filepath.IsAbs(c.Engine.ImageCopyTmpDir) {
+ return c.Engine.ImageCopyTmpDir, nil
+ }
+ }
+
+ return "", errors.Errorf("invalid image_copy_tmp_dir value %q (relative paths are not accepted)", c.Engine.ImageCopyTmpDir)
+}
diff --git a/vendor/github.com/containers/common/pkg/config/containers.conf b/vendor/github.com/containers/common/pkg/config/containers.conf
index fc61ed709..dc38f8ec6 100644
--- a/vendor/github.com/containers/common/pkg/config/containers.conf
+++ b/vendor/github.com/containers/common/pkg/config/containers.conf
@@ -451,15 +451,20 @@ default_sysctls = [
# List of the OCI runtimes that support --format=json. When json is supported
# engine will use it for reporting nicer errors.
#
-#runtime_supports_json = ["crun", "runc", "kata", "runsc"]
+#runtime_supports_json = ["crun", "runc", "kata", "runsc", "krun"]
# List of the OCI runtimes that supports running containers with KVM Separation.
#
-#runtime_supports_kvm = ["kata"]
+#runtime_supports_kvm = ["kata", "krun"]
# List of the OCI runtimes that supports running containers without cgroups.
#
-#runtime_supports_nocgroups = ["crun"]
+#runtime_supports_nocgroups = ["crun", "krun"]
+
+# Default location for storing temporary container image content. Can be overridden with the TMPDIR environment
+# variable. If you specify "storage", then the location of the
+# container/storage tmp directory will be used.
+# image_copy_tmp_dir="/var/tmp"
# Directory for persistent engine files (database, etc)
# By default, this will be configured relative to where the containers/storage
@@ -498,7 +503,7 @@ default_sysctls = [
#
#volume_path = "/var/lib/containers/storage/volumes"
-# Paths to look for a valid OCI runtime (crun, runc, kata, runsc, etc)
+# Paths to look for a valid OCI runtime (crun, runc, kata, runsc, krun, etc)
[engine.runtimes]
#crun = [
# "/usr/bin/crun",
@@ -541,6 +546,11 @@ default_sysctls = [
# "/run/current-system/sw/bin/runsc",
#]
+#krun = [
+# "/usr/bin/krun",
+# "/usr/local/bin/krun",
+#]
+
[engine.volume_plugins]
#testplugin = "/run/podman/plugins/test.sock"
diff --git a/vendor/github.com/containers/common/pkg/config/default.go b/vendor/github.com/containers/common/pkg/config/default.go
index db5ba6936..5ce73bd2a 100644
--- a/vendor/github.com/containers/common/pkg/config/default.go
+++ b/vendor/github.com/containers/common/pkg/config/default.go
@@ -244,6 +244,8 @@ func defaultConfigFromMemory() (*EngineConfig, error) {
logrus.Warnf("Storage configuration is unset - using hardcoded default graph root %q", _defaultGraphRoot)
storeOpts.GraphRoot = _defaultGraphRoot
}
+ c.graphRoot = storeOpts.GraphRoot
+ c.ImageCopyTmpDir = "/var/tmp"
c.StaticDir = filepath.Join(storeOpts.GraphRoot, "libpod")
c.VolumePath = filepath.Join(storeOpts.GraphRoot, "volumes")
@@ -297,6 +299,10 @@ func defaultConfigFromMemory() (*EngineConfig, error) {
"/sbin/runsc",
"/run/current-system/sw/bin/runsc",
},
+ "krun": {
+ "/usr/bin/krun",
+ "/usr/local/bin/krun",
+ },
}
// Needs to be called after populating c.OCIRuntimes
c.OCIRuntime = c.findRuntime()
@@ -320,9 +326,10 @@ func defaultConfigFromMemory() (*EngineConfig, error) {
"runc",
"kata",
"runsc",
+ "krun",
}
- c.RuntimeSupportsNoCgroups = []string{"crun"}
- c.RuntimeSupportsKVM = []string{"kata", "kata-runtime", "kata-qemu", "kata-fc"}
+ c.RuntimeSupportsNoCgroups = []string{"crun", "krun"}
+ c.RuntimeSupportsKVM = []string{"kata", "kata-runtime", "kata-qemu", "kata-fc", "krun"}
c.InitPath = DefaultInitPath
c.NoPivotRoot = false
diff --git a/vendor/github.com/containers/common/version/version.go b/vendor/github.com/containers/common/version/version.go
index f248f0c7a..ba4dda5e6 100644
--- a/vendor/github.com/containers/common/version/version.go
+++ b/vendor/github.com/containers/common/version/version.go
@@ -1,4 +1,4 @@
package version
// Version is the version of the build.
-const Version = "0.44.0"
+const Version = "0.44.1-dev"
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 925ecca22..00f3dd743 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -99,7 +99,7 @@ github.com/containers/buildah/pkg/rusage
github.com/containers/buildah/pkg/sshagent
github.com/containers/buildah/pkg/util
github.com/containers/buildah/util
-# github.com/containers/common v0.44.0
+# github.com/containers/common v0.44.1-0.20210914173811-fcaa2e0de285
github.com/containers/common/libimage
github.com/containers/common/libimage/manifests
github.com/containers/common/pkg/apparmor