From cd9d4f376d9d04abc6df88997f9b2af64af4bb7d Mon Sep 17 00:00:00 2001
From: "dependabot-preview[bot]"
 <27856297+dependabot-preview[bot]@users.noreply.github.com>
Date: Wed, 1 Jul 2020 09:54:06 +0000
Subject: [PATCH] Bump github.com/containers/common from 0.14.3 to 0.15.1

Bumps [github.com/containers/common](https://github.com/containers/common) from 0.14.3 to 0.15.1.
- [Release notes](https://github.com/containers/common/releases)
- [Commits](https://github.com/containers/common/compare/v0.14.3...v0.15.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
---
 go.mod                                        |  2 +-
 go.sum                                        |  4 +--
 .../containers/common/pkg/config/config.go    | 34 +++++++++++--------
 .../common/pkg/config/config_local.go         | 12 +++++++
 .../common/pkg/config/config_remote.go        |  4 +++
 .../common/pkg/config/containers.conf         | 25 ++++++++++++--
 .../containers/common/pkg/config/default.go   |  6 ++++
 .../containers/common/version/version.go      |  2 +-
 vendor/modules.txt                            |  2 +-
 9 files changed, 69 insertions(+), 22 deletions(-)

diff --git a/go.mod b/go.mod
index 64981efc15..fde43a1db0 100644
--- a/go.mod
+++ b/go.mod
@@ -11,7 +11,7 @@ require (
 	github.com/containernetworking/cni v0.7.2-0.20200304161608-4fae32b84921
 	github.com/containernetworking/plugins v0.8.6
 	github.com/containers/buildah v1.15.0
-	github.com/containers/common v0.14.3
+	github.com/containers/common v0.15.1
 	github.com/containers/conmon v2.0.18+incompatible
 	github.com/containers/image/v5 v5.5.1
 	github.com/containers/psgo v1.5.1
diff --git a/go.sum b/go.sum
index e069825da6..28fbffcf6a 100644
--- a/go.sum
+++ b/go.sum
@@ -70,8 +70,8 @@ github.com/containers/buildah v1.15.0 h1:p9cYJwcQ5Fnv0iBeHAFwHR0K+kcv7LbyAjUtc+H
 github.com/containers/buildah v1.15.0/go.mod h1:j0AY2kWpmaOPPV5GKDJY9dMtekk5WMmMhcB+z0OW+vc=
 github.com/containers/common v0.14.0 h1:hiZFDPf6ajKiDmojN5f5X3gboKPO73NLrYb0RXfrQiA=
 github.com/containers/common v0.14.0/go.mod h1:9olhlE+WhYof1npnMJdyRMX14/yIUint6zyHzcyRVAg=
-github.com/containers/common v0.14.3 h1:LNsRPkap5Q/EqPyhiLKRZg8u629U8CEeoB49ilG6ZR4=
-github.com/containers/common v0.14.3/go.mod h1:9olhlE+WhYof1npnMJdyRMX14/yIUint6zyHzcyRVAg=
+github.com/containers/common v0.15.1 h1:ycIJf7ugHf0f2ag9uYFijQLbcrPu1KnOqdARgs2XbRU=
+github.com/containers/common v0.15.1/go.mod h1:zJ/BLqK6INqFOCxN/gh9ae1qqWD/ghk2T0jAYqz/Xq4=
 github.com/containers/conmon v2.0.18+incompatible h1:rjwjNnE756NuXcdE/uUmj4kDbrykslPuBMHI31wh43E=
 github.com/containers/conmon v2.0.18+incompatible/go.mod h1:hgwZ2mtuDrppv78a/cOBNiCm6O0UMWGx1mu7P00nu5I=
 github.com/containers/image/v5 v5.4.4/go.mod h1:g7cxNXitiLi6pEr9/L9n/0wfazRuhDKXU15kV86N8h8=
diff --git a/vendor/github.com/containers/common/pkg/config/config.go b/vendor/github.com/containers/common/pkg/config/config.go
index d604647399..c652a66f2f 100644
--- a/vendor/github.com/containers/common/pkg/config/config.go
+++ b/vendor/github.com/containers/common/pkg/config/config.go
@@ -165,6 +165,9 @@ type ContainersConfig struct {
 	// ShmSize holds the size of /dev/shm.
 	ShmSize string `toml:"shm_size,omitempty"`
 
+	//TZ sets the timezone inside the container
+	TZ string `toml:"tz,omitempty"`
+
 	// UTSNS indicates how to create a UTS namespace for the container
 	UTSNS string `toml:"utsns,omitempty"`
 
@@ -207,6 +210,9 @@ type EngineConfig struct {
 	// memory.
 	EnablePortReservation bool `toml:"enable_port_reservation,omitempty"`
 
+	// Environment variables to be used when running the container engine (e.g., Podman, Buildah). For example "http_proxy=internal.proxy.company.com"
+	Env []string `toml:"env,omitempty"`
+
 	// EventsLogFilePath is where the events log is stored.
 	EventsLogFilePath string `toml:"events_logfile_path,omitempty"`
 
@@ -416,11 +422,10 @@ func NewConfig(userConfigPath string) (*Config, error) {
 		// Merge changes in later configs with the previous configs.
 		// Each config file that specified fields, will override the
 		// previous fields.
-		config, err := readConfigFromFile(path, config)
-		if err != nil {
+		if err = readConfigFromFile(path, config); err != nil {
 			return nil, errors.Wrapf(err, "error reading system config %q", path)
 		}
-		logrus.Debugf("Merged system config %q: %v", path, config)
+		logrus.Debugf("Merged system config %q: %+v", path, config)
 	}
 
 	// If the caller specified a config path to use, then we read it to
@@ -429,11 +434,10 @@ func NewConfig(userConfigPath string) (*Config, error) {
 		var err error
 		// readConfigFromFile reads in container config in the specified
 		// file and then merge changes with the current default.
-		config, err = readConfigFromFile(userConfigPath, config)
-		if err != nil {
+		if err = readConfigFromFile(userConfigPath, config); err != nil {
 			return nil, errors.Wrapf(err, "error reading user config %q", userConfigPath)
 		}
-		logrus.Debugf("Merged user config %q: %v", userConfigPath, config)
+		logrus.Debugf("Merged user config %q: %+v", userConfigPath, config)
 	}
 	config.addCAPPrefix()
 
@@ -448,13 +452,12 @@ func NewConfig(userConfigPath string) (*Config, error) {
 // unmarshal its content into a Config. The config param specifies the previous
 // default config. If the path, only specifies a few fields in the Toml file
 // the defaults from the config parameter will be used for all other fields.
-func readConfigFromFile(path string, config *Config) (*Config, error) {
+func readConfigFromFile(path string, config *Config) error {
 	logrus.Debugf("Reading configuration file %q", path)
-	_, err := toml.DecodeFile(path, config)
-	if err != nil {
-		return nil, fmt.Errorf("unable to decode configuration %v: %v", path, err)
+	if _, err := toml.DecodeFile(path, config); err != nil {
+		return errors.Wrapf(err, "unable to decode configuration %v", path)
 	}
-	return config, err
+	return nil
 }
 
 // Returns the list of configuration files, if they exist in order of hierarchy.
@@ -465,7 +468,7 @@ func systemConfigs() ([]string, error) {
 	path := os.Getenv("CONTAINERS_CONF")
 	if path != "" {
 		if _, err := os.Stat(path); err != nil {
-			return nil, errors.Wrap(err, "failed to stat of %s from CONTAINERS_CONF environment variable")
+			return nil, errors.Wrapf(err, "failed to stat of %s from CONTAINERS_CONF environment variable", path)
 		}
 		return append(configs, path), nil
 	}
@@ -575,6 +578,10 @@ func (c *ContainersConfig) Validate() error {
 		return err
 	}
 
+	if err := c.validateTZ(); err != nil {
+		return err
+	}
+
 	if c.LogSizeMax >= 0 && c.LogSizeMax < OCIBufSize {
 		return fmt.Errorf("log size max should be negative or >= %d", OCIBufSize)
 	}
@@ -892,8 +899,7 @@ func ReadCustomConfig() (*Config, error) {
 
 	newConfig := &Config{}
 	if _, err := os.Stat(path); err == nil {
-		newConfig, err = readConfigFromFile(path, newConfig)
-		if err != nil {
+		if err = readConfigFromFile(path, newConfig); err != nil {
 			return nil, err
 		}
 	} else {
diff --git a/vendor/github.com/containers/common/pkg/config/config_local.go b/vendor/github.com/containers/common/pkg/config/config_local.go
index 8f4daa3d7c..a6ab33c507 100644
--- a/vendor/github.com/containers/common/pkg/config/config_local.go
+++ b/vendor/github.com/containers/common/pkg/config/config_local.go
@@ -76,6 +76,18 @@ func (c *ContainersConfig) validateUlimits() error {
 	return nil
 }
 
+func (c *ContainersConfig) validateTZ() error {
+	if c.TZ == "local" {
+		return nil
+	}
+	zonePath := filepath.Join("/usr/share/zoneinfo", c.TZ)
+	_, err := os.Stat(zonePath)
+	if err != nil {
+		return fmt.Errorf("Unrecognized timezone %s", zonePath)
+	}
+	return nil
+}
+
 func isRemote() bool {
 	return false
 }
diff --git a/vendor/github.com/containers/common/pkg/config/config_remote.go b/vendor/github.com/containers/common/pkg/config/config_remote.go
index d012dbd2f3..61dd159ad1 100644
--- a/vendor/github.com/containers/common/pkg/config/config_remote.go
+++ b/vendor/github.com/containers/common/pkg/config/config_remote.go
@@ -23,3 +23,7 @@ func (c *ContainersConfig) validateDevices() error {
 func (c *ContainersConfig) validateUlimits() error {
 	return nil
 }
+
+func (c *ContainersConfig) validateTZ() error {
+	return nil
+}
diff --git a/vendor/github.com/containers/common/pkg/config/containers.conf b/vendor/github.com/containers/common/pkg/config/containers.conf
index 389479fa58..80afbb9bc4 100644
--- a/vendor/github.com/containers/common/pkg/config/containers.conf
+++ b/vendor/github.com/containers/common/pkg/config/containers.conf
@@ -205,6 +205,11 @@
 #
 # shm_size = "65536k"
 
+# Set timezone in container. Takes IANA timezones as well as "local",
+# which sets the timezone in the container to match the host machine.
+#
+# tz = ""
+
 # Default way to to create a UTS namespace for the container
 # Options are:
 # `private`        Create private UTS Namespace for the container.
@@ -279,6 +284,12 @@
 #
 # enable_port_reservation = true
 
+# Environment variables to be used when running the container engine (e.g., Podman, Buildah).
+# For example "http_proxy=internal.proxy.company.com".
+# Note these environment variables will not be used within the container.
+# Set the env section under [containers] table, if you want to set environment variables for the container.
+# env = []
+
 # Selects which logging mechanism to use for container engine events.
 # Valid values are `journald`, `file` and `none`.
 #
@@ -329,6 +340,14 @@
 # Whether to pull new image before running a container
 # pull_policy = "missing"
 
+# Default Remote URI to access the Podman service.
+# Examples:
+#  rootless "unix://run/user/$UID/podman/podman.sock" (Default)
+#  rootfull "unix://run/podman/podman.sock.(Default)
+#  remote rootless ssh://engineering.lab.company.com/run/user/1000/podman/podman.sock
+#  remote rootfull ssh://root@10.10.1.136:22/run/podman/podman.sock
+# remote_uri= ""
+
 # Directory for persistent engine files (database, etc)
 # By default, this will be configured relative to where the containers/storage
 # stores containers
@@ -364,6 +383,9 @@
 #
 # runtime_supports_kvm = ["kata"]
 
+# Number of seconds to wait for container to exit before sending kill signal.
+# stop_timeout = 10
+
 # Paths to look for a valid OCI runtime (runc, runv, kata, etc)
 [engine.runtimes]
 # runc = [
@@ -397,9 +419,6 @@
 #            "/usr/bin/kata-fc",
 # ]
 
-# Number of seconds to wait for container to exit before sending kill signal.
-#stop_timeout = 10
-
 # The [engine.runtimes] table MUST be the last entry in this file.
 # (Unless another table is added)
 # TOML does not provide a way to end a table other than a further table being
diff --git a/vendor/github.com/containers/common/pkg/config/default.go b/vendor/github.com/containers/common/pkg/config/default.go
index fe523cbf52..60811637fb 100644
--- a/vendor/github.com/containers/common/pkg/config/default.go
+++ b/vendor/github.com/containers/common/pkg/config/default.go
@@ -191,6 +191,7 @@ func DefaultConfig() (*Config, error) {
 			PidNS:          "private",
 			SeccompProfile: SeccompDefaultPath,
 			ShmSize:        DefaultShmSize,
+			TZ:             "",
 			UTSNS:          "private",
 			UserNS:         "host",
 			UserNSSize:     DefaultUserNSSize,
@@ -498,3 +499,8 @@ func (c *Config) PidsLimit() int64 {
 func (c *Config) DetachKeys() string {
 	return c.Engine.DetachKeys
 }
+
+// Tz returns the timezone in the container
+func (c *Config) TZ() string {
+	return c.Containers.TZ
+}
diff --git a/vendor/github.com/containers/common/version/version.go b/vendor/github.com/containers/common/version/version.go
index 38a45dfb24..bbbca741c4 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.14.3"
+const Version = "0.15.1"
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 497381b521..567d243783 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -84,7 +84,7 @@ github.com/containers/buildah/pkg/secrets
 github.com/containers/buildah/pkg/supplemented
 github.com/containers/buildah/pkg/umask
 github.com/containers/buildah/util
-# github.com/containers/common v0.14.3
+# github.com/containers/common v0.15.1
 github.com/containers/common/pkg/apparmor
 github.com/containers/common/pkg/auth
 github.com/containers/common/pkg/capabilities