summaryrefslogtreecommitdiff
path: root/vendor/github.com/containers/buildah/add.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/containers/buildah/add.go')
-rw-r--r--vendor/github.com/containers/buildah/add.go14
1 files changed, 11 insertions, 3 deletions
diff --git a/vendor/github.com/containers/buildah/add.go b/vendor/github.com/containers/buildah/add.go
index 1c1f116da..bbfdda9c1 100644
--- a/vendor/github.com/containers/buildah/add.go
+++ b/vendor/github.com/containers/buildah/add.go
@@ -151,18 +151,26 @@ func (b *Builder) Add(destination string, extract bool, options AddAndCopyOption
}()
contextDir := options.ContextDir
- if contextDir == "" {
+ currentDir := options.ContextDir
+ if options.ContextDir == "" {
contextDir = string(os.PathSeparator)
+ currentDir, err = os.Getwd()
+ if err != nil {
+ return errors.Wrapf(err, "error determining current working directory")
+ }
}
// Figure out what sorts of sources we have.
var localSources, remoteSources []string
- for _, src := range sources {
+ for i, src := range sources {
if sourceIsRemote(src) {
remoteSources = append(remoteSources, src)
continue
}
- localSources = append(localSources, src)
+ if !filepath.IsAbs(src) && options.ContextDir == "" {
+ sources[i] = filepath.Join(currentDir, src)
+ }
+ localSources = append(localSources, sources[i])
}
// Check how many items our local source specs matched. Each spec