summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2018-11-07 11:24:57 -0800
committerGitHub <noreply@github.com>2018-11-07 11:24:57 -0800
commite9f8aed407f3e05f47e3eb40b23aa7c2f57e0a60 (patch)
treea59158e189a28ca06bb263f200ac71d9d4cb1e67
parent1370c311f57673d6e3bfc529bc9819d472cfcecb (diff)
parentae68bec75cf59e8a530dbc55f320f7bb0be9a62b (diff)
downloadpodman-e9f8aed407f3e05f47e3eb40b23aa7c2f57e0a60.tar.gz
podman-e9f8aed407f3e05f47e3eb40b23aa7c2f57e0a60.tar.bz2
podman-e9f8aed407f3e05f47e3eb40b23aa7c2f57e0a60.zip
Merge pull request #1764 from rhatdan/nopasswd
Don't fail if /etc/passwd or /etc/group does not exists
-rw-r--r--libpod/container_internal.go4
-rw-r--r--pkg/lookup/lookup.go8
2 files changed, 7 insertions, 5 deletions
diff --git a/libpod/container_internal.go b/libpod/container_internal.go
index 6843759a6..d2f48d661 100644
--- a/libpod/container_internal.go
+++ b/libpod/container_internal.go
@@ -5,7 +5,6 @@ import (
"context"
"encoding/json"
"fmt"
- "github.com/opencontainers/runc/libcontainer/user"
"io"
"io/ioutil"
"os"
@@ -27,6 +26,7 @@ import (
"github.com/containers/storage/pkg/archive"
"github.com/containers/storage/pkg/chrootarchive"
"github.com/containers/storage/pkg/mount"
+ "github.com/opencontainers/runc/libcontainer/user"
spec "github.com/opencontainers/runtime-spec/specs-go"
"github.com/opencontainers/runtime-tools/generate"
"github.com/opencontainers/selinux/go-selinux/label"
@@ -1139,7 +1139,7 @@ func (c *Container) generatePasswd() (string, error) {
}
originPasswdFile := filepath.Join(c.state.Mountpoint, "/etc/passwd")
orig, err := ioutil.ReadFile(originPasswdFile)
- if err != nil {
+ if err != nil && !os.IsNotExist(err) {
return "", errors.Wrapf(err, "unable to read passwd file %s", originPasswdFile)
}
diff --git a/pkg/lookup/lookup.go b/pkg/lookup/lookup.go
index b27e2a724..a9d975b4b 100644
--- a/pkg/lookup/lookup.go
+++ b/pkg/lookup/lookup.go
@@ -1,10 +1,12 @@
package lookup
import (
+ "os"
+ "strconv"
+
"github.com/cyphar/filepath-securejoin"
"github.com/opencontainers/runc/libcontainer/user"
"github.com/sirupsen/logrus"
- "strconv"
)
const (
@@ -116,7 +118,7 @@ func GetUser(containerMount, userIDorName string) (*user.User, error) {
}
return u.Uid == uid
})
- if err != nil {
+ if err != nil && !os.IsNotExist(err) {
return nil, err
}
if len(users) > 0 {
@@ -146,7 +148,7 @@ func GetGroup(containerMount, groupIDorName string) (*user.Group, error) {
}
return g.Gid == gid
})
- if err != nil {
+ if err != nil && !os.IsNotExist(err) {
return nil, err
}
if len(groups) > 0 {