diff options
author | baude <bbaude@redhat.com> | 2019-08-06 19:06:54 -0500 |
---|---|---|
committer | baude <bbaude@redhat.com> | 2019-08-08 20:05:08 -0500 |
commit | b31130a79d51ad68e9d332eafd712abf7266e22c (patch) | |
tree | a29a15944ededee93b2e958ac1cc0a47485b2a9e /cmd/podman/main_remote_supported.go | |
parent | 4349f42d66d91fa48cde6aa6ed499eaa41d3e2b5 (diff) | |
download | podman-b31130a79d51ad68e9d332eafd712abf7266e22c.tar.gz podman-b31130a79d51ad68e9d332eafd712abf7266e22c.tar.bz2 podman-b31130a79d51ad68e9d332eafd712abf7266e22c.zip |
enable windows remote client
rework an error path so that users can run the windows remote client.
also, create the basedir path for the podman-remote.conf file if it does
not exist already.
Signed-off-by: baude <bbaude@redhat.com>
Diffstat (limited to 'cmd/podman/main_remote_supported.go')
-rw-r--r-- | cmd/podman/main_remote_supported.go | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/cmd/podman/main_remote_supported.go b/cmd/podman/main_remote_supported.go new file mode 100644 index 000000000..bb567c273 --- /dev/null +++ b/cmd/podman/main_remote_supported.go @@ -0,0 +1,57 @@ +// +build remoteclient +// +build linux darwin + +package main + +import ( + "fmt" + "os" + "path/filepath" + + "github.com/containers/libpod/pkg/util" + "github.com/pkg/errors" + "github.com/sirupsen/logrus" +) + +func setSyslog() error { + var err error + cfgHomeDir := os.Getenv("XDG_CONFIG_HOME") + if cfgHomeDir == "" { + if cfgHomeDir, err = util.GetRootlessConfigHomeDir(); err != nil { + return err + } + if err = os.Setenv("XDG_CONFIG_HOME", cfgHomeDir); err != nil { + return errors.Wrapf(err, "cannot set XDG_CONFIG_HOME") + } + } + path := filepath.Join(cfgHomeDir, "containers") + + // Log to file if not using syslog + + if _, err := os.Stat(path); os.IsNotExist(err) { + if err := os.MkdirAll(path, 0750); err != nil { + fmt.Fprintf(os.Stderr, "%v", err) + return err + } + } + + // Update path to include file name + path = filepath.Join(path, "podman.log") + + // Create the log file if doesn't exist. And append to it if it already exists. + file, err := os.OpenFile(path, os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0640) + if err != nil { + // Cannot open log file. Logging to stderr + fmt.Fprintf(os.Stderr, "%v", err) + return err + } else { + formatter := new(logrus.TextFormatter) + formatter.FullTimestamp = true + logrus.SetFormatter(formatter) + logrus.SetOutput(file) + } + + // Note this message is only logged if --log-level >= Info! + logrus.Infof("Logging level set to %s", logrus.GetLevel().String()) + return nil +} |