aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmd/podman/images/build.go2
-rw-r--r--test/e2e/build_test.go15
2 files changed, 16 insertions, 1 deletions
diff --git a/cmd/podman/images/build.go b/cmd/podman/images/build.go
index 606c18aae..6fc73eb64 100644
--- a/cmd/podman/images/build.go
+++ b/cmd/podman/images/build.go
@@ -257,6 +257,7 @@ func build(cmd *cobra.Command, args []string) error {
return errors.Wrapf(err, "error determining path to file %q", containerFiles[i])
}
contextDir = filepath.Dir(absFile)
+ containerFiles[i] = absFile
break
}
}
@@ -289,7 +290,6 @@ func build(cmd *cobra.Command, args []string) error {
if err != nil {
return err
}
-
report, err := registry.ImageEngine().Build(registry.GetContext(), containerFiles, *apiBuildOpts)
if err != nil {
diff --git a/test/e2e/build_test.go b/test/e2e/build_test.go
index d4f0a2b04..c05dc6f3f 100644
--- a/test/e2e/build_test.go
+++ b/test/e2e/build_test.go
@@ -691,4 +691,19 @@ RUN ls /dev/test1`, ALPINE)
session.WaitWithDefaultTimeout()
Expect(session).Should(Exit(0))
})
+
+ It("podman build use absolute path even if given relative", func() {
+ containerFile := fmt.Sprintf(`FROM %s`, ALPINE)
+ err = os.Mkdir("relative", 0755)
+ Expect(err).To(BeNil())
+ containerFilePath := filepath.Join("relative", "Containerfile")
+ fmt.Println(containerFilePath)
+ err = ioutil.WriteFile(containerFilePath, []byte(containerFile), 0755)
+ Expect(err).To(BeNil())
+ build := podmanTest.Podman([]string{"build", "-f", "./relative/Containerfile"})
+ build.WaitWithDefaultTimeout()
+ Expect(build).To(Exit(0))
+ err = os.RemoveAll("relative")
+ Expect(err).To(BeNil())
+ })
})