Commit c15bb284 authored by Matthew Hooker's avatar Matthew Hooker

bugfixes, wip

parent 1104ad3e
......@@ -3,11 +3,13 @@ package chroot
import (
"fmt"
"os/exec"
"log"
)
func copySingle(dest string, src string, copyCommand string) error {
cpCommand := fmt.Sprintf("%s %s %s", copyCommand, src, dest)
localCmd := exec.Command("/bin/sh", "-c", cpCommand)
log.Println(localCmd.Args)
if err := localCmd.Run(); err != nil {
return err
}
......
......@@ -14,15 +14,14 @@ type StepChrootProvision struct {
func (s *StepChrootProvision) Run(state multistep.StateBag) multistep.StepAction {
hook := state.Get("hook").(packer.Hook)
mountPath := state.Get("mount_path").(string)
chrootCommand := state.Get("chroot_command").(string)
copyCommand := state.Get("copy_command").(string)
config := state.Get("config").(*Config)
ui := state.Get("ui").(packer.Ui)
// Create our communicator
comm := &Communicator{
Chroot: mountPath,
ChrootCommand: chrootCommand,
CopyCommand: copyCommand,
ChrootCommand: config.ChrootCommand,
CopyCommand: config.CopyCommand,
}
// Provision
......
......@@ -5,7 +5,6 @@ import (
"github.com/mitchellh/multistep"
"github.com/mitchellh/packer/packer"
"log"
"os"
"path/filepath"
)
......@@ -31,7 +30,7 @@ func (s *StepCopyFiles) Run(state multistep.StateBag) multistep.StepAction {
chrootPath := filepath.Join(mountPath, path)
log.Printf("Copying '%s' to '%s'", path, chrootPath)
if err := copySingle(chrootPath, path, config.ChrootCommand); err != nil {
if err := copySingle(chrootPath, path, config.CopyCommand); err != nil {
err := fmt.Errorf("Error copying file: %s", err)
state.Put("error", err)
ui.Error(err.Error())
......@@ -57,7 +56,7 @@ func (s *StepCopyFiles) CleanupFunc(multistep.StateBag) error {
if s.files != nil {
for _, file := range s.files {
log.Printf("Removing: %s", file)
if err := os.Remove(file); err != nil {
if err := copySingle(file, "", "rm"); err != nil {
return err
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment