* Runtime: pass a guaranteed environment to bsdtar for predictable behavior without depending on the underlying host configuration.

Upstream-commit: 561ceac55d5821a00258934cf9dc215278e3ecfd
Component: engine
This commit is contained in:
Solomon Hykes
2013-05-31 22:25:48 -07:00
parent 5fd52ed23e
commit ca771dfaab
2 changed files with 4 additions and 2 deletions
+3
View File
@@ -54,6 +54,9 @@ func Tar(path string, compression Compression) (io.Reader, error) {
func Untar(archive io.Reader, path string) error {
cmd := exec.Command("bsdtar", "-f", "-", "-C", path, "-x")
cmd.Stdin = archive
// Hardcode locale environment for predictable outcome regardless of host configuration.
// (see https://github.com/dotcloud/docker/issues/355)
cmd.Env = []string{"LANG=en_US.utf-8", "LC_ALL=en_US.utf-8"}
output, err := cmd.CombinedOutput()
if err != nil {
return fmt.Errorf("%s: %s", err, output)
@@ -5,6 +5,5 @@ stop on starting rc RUNLEVEL=[016]
respawn
script
# FIXME: docker should not depend on the system having en_US.UTF-8
LC_ALL='en_US.UTF-8' /usr/bin/docker -d
/usr/bin/docker -d
end script