diff --git a/packer_test/loading_test.go b/packer_test/loading_test.go index 057d9ea85..1d277580c 100644 --- a/packer_test/loading_test.go +++ b/packer_test/loading_test.go @@ -3,6 +3,7 @@ package packer_test import ( "crypto/sha256" "fmt" + "os" "path/filepath" "runtime" "strings" @@ -140,3 +141,26 @@ func (ts *PackerTestSuite) TestLoadWithSHAMismatches() { Grep(`Checksums \(\*sha256\.digest\) did not match.`, grepStderr)) }) } + +func (ts *PackerTestSuite) TestPluginPathEnvvarWithMultiplePaths() { + pluginDirOne, cleanup := ts.MakePluginDir("1.0.10") + defer cleanup() + + pluginDirTwo, cleanup := ts.MakePluginDir("1.0.9") + defer cleanup() + + pluginDirVal := fmt.Sprintf("%s%c%s", pluginDirOne, os.PathListSeparator, pluginDirTwo) + ts.Run("load plugin with two dirs - not supported anymore, should error", func() { + ts.PackerCommand().UsePluginDir(pluginDirVal). + SetArgs("plugins", "installed"). + Assert(ts.T(), MustFail(), + Grep("Multiple paths are no longer supported for PACKER_PLUGIN_PATH"), + PipeChecker{ + check: IntCompare(eq, 2), + pipers: []Pipe{ + PipeGrep(`\* PACKER_PLUGIN_PATH=`), + LineCount(), + }, + }) + }) +}