diff --git a/deploy/run_package.go b/deploy/run_package.go index c5cb325fbfb0406e26a165a7995893092e024bf1..2a081e8103810a117d001c6f56d1c4dd1d60acd5 100644 --- a/deploy/run_package.go +++ b/deploy/run_package.go @@ -64,11 +64,12 @@ func RunPackage(do *def.Packages) error { } // Ensure relative paths if we're given a different path for deploy contracts jobs + // Solidity contracts may import other solidity contracts, and the working directory + // is the directory where solc searches from. if do.Path != pwd { - for _, job := range do.Package.Jobs { - if job.Deploy != nil { - job.Deploy.Contract = filepath.Join(do.Path, job.Deploy.Contract) - } + err = os.Chdir(do.Path) + if err != nil { + return err } }