diff --git a/builder/vmware/iso/step_create_vmx_test.go b/builder/vmware/iso/step_create_vmx_test.go index ca599df66..7b3a55f88 100644 --- a/builder/vmware/iso/step_create_vmx_test.go +++ b/builder/vmware/iso/step_create_vmx_test.go @@ -145,7 +145,7 @@ func setupVMwareBuild(t *testing.T, builderConfig map[string]string, provisioner return &packersdk.DispatchHook{}, nil }, ProvisionerStore: packer.MapOfProvisioner{ - "shell": func() (packer.Provisioner, error) { return &shell.Provisioner{}, nil }, + "shell": func() (packersdk.Provisioner, error) { return &shell.Provisioner{}, nil }, }, PostProcessorStore: packer.MapOfPostProcessor{ "something": func() (packer.PostProcessor, error) { return &packer.MockPostProcessor{}, nil }, diff --git a/command/build_parallel_test.go b/command/build_parallel_test.go index dd45a59d9..00b43258f 100644 --- a/command/build_parallel_test.go +++ b/command/build_parallel_test.go @@ -74,7 +74,7 @@ func testMetaParallel(t *testing.T, builder *ParallelTestBuilder, locked *Locked "lock": func() (packersdk.Builder, error) { return locked, nil }, }, ProvisionerStore: packer.MapOfProvisioner{ - "sleep": func() (packer.Provisioner, error) { return &sleep.Provisioner{}, nil }, + "sleep": func() (packersdk.Provisioner, error) { return &sleep.Provisioner{}, nil }, }, }, }, diff --git a/command/build_test.go b/command/build_test.go index 01c656ed8..1605606fd 100644 --- a/command/build_test.go +++ b/command/build_test.go @@ -841,9 +841,9 @@ func testCoreConfigBuilder(t *testing.T) *packer.CoreConfig { "null": func() (packersdk.Builder, error) { return &null.Builder{}, nil }, }, ProvisionerStore: packer.MapOfProvisioner{ - "shell-local": func() (packer.Provisioner, error) { return &shell_local.Provisioner{}, nil }, - "shell": func() (packer.Provisioner, error) { return &shell.Provisioner{}, nil }, - "file": func() (packer.Provisioner, error) { return &filep.Provisioner{}, nil }, + "shell-local": func() (packersdk.Provisioner, error) { return &shell_local.Provisioner{}, nil }, + "shell": func() (packersdk.Provisioner, error) { return &shell.Provisioner{}, nil }, + "file": func() (packersdk.Provisioner, error) { return &filep.Provisioner{}, nil }, }, PostProcessorStore: packer.MapOfPostProcessor{ "shell-local": func() (packer.PostProcessor, error) { return &shell_local_pp.PostProcessor{}, nil }, diff --git a/command/build_timeout_test.go b/command/build_timeout_test.go index 49c69c083..59b4c2b3f 100644 --- a/command/build_timeout_test.go +++ b/command/build_timeout_test.go @@ -20,8 +20,8 @@ func testCoreConfigSleepBuilder(t *testing.T) *packer.CoreConfig { "file": func() (packersdk.Builder, error) { return &file.Builder{}, nil }, }, ProvisionerStore: packer.MapOfProvisioner{ - "sleep": func() (packer.Provisioner, error) { return &sleep.Provisioner{}, nil }, - "shell-local": func() (packer.Provisioner, error) { return &shell_local.Provisioner{}, nil }, + "sleep": func() (packersdk.Provisioner, error) { return &sleep.Provisioner{}, nil }, + "shell-local": func() (packersdk.Provisioner, error) { return &shell_local.Provisioner{}, nil }, }, } return &packer.CoreConfig{ diff --git a/command/exec_test.go b/command/exec_test.go index 6d5305fe0..a91caf7ee 100644 --- a/command/exec_test.go +++ b/command/exec_test.go @@ -124,9 +124,9 @@ func getBareComponentFinder() packer.ComponentFinder { "amazon-ebs": func() (packersdk.Builder, error) { return &ebs.Builder{}, nil }, }, ProvisionerStore: packer.MapOfProvisioner{ - "shell-local": func() (packer.Provisioner, error) { return &shell_local.Provisioner{}, nil }, - "shell": func() (packer.Provisioner, error) { return &shell.Provisioner{}, nil }, - "file": func() (packer.Provisioner, error) { return &filep.Provisioner{}, nil }, + "shell-local": func() (packersdk.Provisioner, error) { return &shell_local.Provisioner{}, nil }, + "shell": func() (packersdk.Provisioner, error) { return &shell.Provisioner{}, nil }, + "file": func() (packersdk.Provisioner, error) { return &filep.Provisioner{}, nil }, }, PostProcessorStore: packer.MapOfPostProcessor{ "shell-local": func() (packer.PostProcessor, error) { return &shell_local_pp.PostProcessor{}, nil }, diff --git a/command/plugin.go b/command/plugin.go index 25f328db0..737e27367 100644 --- a/command/plugin.go +++ b/command/plugin.go @@ -167,7 +167,7 @@ var Builders = map[string]packersdk.Builder{ "yandex": new(yandexbuilder.Builder), } -var Provisioners = map[string]packer.Provisioner{ +var Provisioners = map[string]packersdk.Provisioner{ "ansible": new(ansibleprovisioner.Provisioner), "ansible-local": new(ansiblelocalprovisioner.Provisioner), "azure-dtlartifact": new(azuredtlartifactprovisioner.Provisioner), diff --git a/hcl2template/common_test.go b/hcl2template/common_test.go index 17aa9c34b..6ddac96c8 100644 --- a/hcl2template/common_test.go +++ b/hcl2template/common_test.go @@ -26,8 +26,8 @@ func getBasicParser() *Parser { "null": func() (packersdk.Builder, error) { return &null.Builder{}, nil }, }, ProvisionersSchemas: packer.MapOfProvisioner{ - "shell": func() (packer.Provisioner, error) { return &MockProvisioner{}, nil }, - "file": func() (packer.Provisioner, error) { return &MockProvisioner{}, nil }, + "shell": func() (packersdk.Provisioner, error) { return &MockProvisioner{}, nil }, + "file": func() (packersdk.Provisioner, error) { return &MockProvisioner{}, nil }, }, PostProcessorsSchemas: packer.MapOfPostProcessor{ "amazon-import": func() (packer.PostProcessor, error) { return &MockPostProcessor{}, nil }, diff --git a/hcl2template/internal/mock.go b/hcl2template/internal/mock.go index 4a6fc091f..167154eaf 100644 --- a/hcl2template/internal/mock.go +++ b/hcl2template/internal/mock.go @@ -90,7 +90,7 @@ type MockProvisioner struct { Config MockConfig } -var _ packer.Provisioner = new(MockProvisioner) +var _ packersdk.Provisioner = new(MockProvisioner) func (b *MockProvisioner) ConfigSpec() hcldec.ObjectSpec { return b.Config.FlatMapstructure().HCL2Spec() diff --git a/hcl2template/types.build.provisioners.go b/hcl2template/types.build.provisioners.go index a50156782..da3253ba7 100644 --- a/hcl2template/types.build.provisioners.go +++ b/hcl2template/types.build.provisioners.go @@ -7,7 +7,7 @@ import ( "github.com/hashicorp/hcl/v2" "github.com/hashicorp/hcl/v2/gohcl" hcl2shim "github.com/hashicorp/packer/hcl2template/shim" - "github.com/hashicorp/packer/packer" + packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" "github.com/zclconf/go-cty/cty" ) @@ -148,7 +148,7 @@ func (p *Parser) decodeProvisioner(block *hcl.Block, cfg *PackerConfig) (*Provis return provisioner, diags } -func (cfg *PackerConfig) startProvisioner(source SourceBlock, pb *ProvisionerBlock, ectx *hcl.EvalContext) (packer.Provisioner, hcl.Diagnostics) { +func (cfg *PackerConfig) startProvisioner(source SourceBlock, pb *ProvisionerBlock, ectx *hcl.EvalContext) (packersdk.Provisioner, hcl.Diagnostics) { var diags hcl.Diagnostics provisioner, err := cfg.provisionersSchemas.Start(pb.PType) diff --git a/hcl2template/types.hcl_provisioner.go b/hcl2template/types.hcl_provisioner.go index d7cfcbd80..c52fb31be 100644 --- a/hcl2template/types.hcl_provisioner.go +++ b/hcl2template/types.hcl_provisioner.go @@ -6,7 +6,6 @@ import ( "github.com/hashicorp/hcl/v2" "github.com/hashicorp/hcl/v2/hcldec" - "github.com/hashicorp/packer/packer" packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" "github.com/zclconf/go-cty/cty" ) @@ -16,7 +15,7 @@ import ( // calling Provision: with contextual variables. // This permits using "${build.ID}" values for example. type HCL2Provisioner struct { - Provisioner packer.Provisioner + Provisioner packersdk.Provisioner provisionerBlock *ProvisionerBlock evalContext *hcl.EvalContext builderVariables map[string]string diff --git a/helper/tests/core.go b/helper/tests/core.go index 92b10b288..87b19d0b5 100644 --- a/helper/tests/core.go +++ b/helper/tests/core.go @@ -29,8 +29,8 @@ func testCoreConfigBuilder(t *testing.T) *packer.CoreConfig { "amazon-ebs": func() (packersdk.Builder, error) { return &amazonebsbuilder.Builder{}, nil }, }, ProvisionerStore: packer.MapOfProvisioner{ - "shell": func() (packer.Provisioner, error) { return &shell.Provisioner{}, nil }, - "file": func() (packer.Provisioner, error) { return &fileprovisioner.Provisioner{}, nil }, + "shell": func() (packersdk.Provisioner, error) { return &shell.Provisioner{}, nil }, + "file": func() (packersdk.Provisioner, error) { return &fileprovisioner.Provisioner{}, nil }, }, PostProcessorStore: packer.MapOfPostProcessor{}, } diff --git a/packer-plugin-sdk/packer/provisioner.go b/packer-plugin-sdk/packer/provisioner.go new file mode 100644 index 000000000..1f70e70a9 --- /dev/null +++ b/packer-plugin-sdk/packer/provisioner.go @@ -0,0 +1,20 @@ +package packer + +import "context" + +// A provisioner is responsible for installing and configuring software +// on a machine prior to building the actual image. +type Provisioner interface { + HCL2Speccer + + // Prepare is called with a set of configurations to setup the + // internal state of the provisioner. The multiple configurations + // should be merged in some sane way. + Prepare(...interface{}) error + + // Provision is called to actually provision the machine. A context is + // given for cancellation, a UI is given to communicate with the user, and + // a communicator is given that is guaranteed to be connected to some + // machine so that provisioning can be done. + Provision(context.Context, Ui, Communicator, map[string]interface{}) error +} diff --git a/packer/plugin/client.go b/packer/plugin/client.go index b8c01b57b..c6564ad45 100644 --- a/packer/plugin/client.go +++ b/packer/plugin/client.go @@ -164,7 +164,7 @@ func (c *Client) PostProcessor() (packer.PostProcessor, error) { // Returns a provisioner implementation that is communicating over this // client. If the client hasn't been started, this will start it. -func (c *Client) Provisioner() (packer.Provisioner, error) { +func (c *Client) Provisioner() (packersdk.Provisioner, error) { client, err := c.packrpcClient() if err != nil { return nil, err diff --git a/packer/plugin/provisioner.go b/packer/plugin/provisioner.go index 9d502b9ff..00b5e88e4 100644 --- a/packer/plugin/provisioner.go +++ b/packer/plugin/provisioner.go @@ -5,12 +5,11 @@ import ( "log" "github.com/hashicorp/hcl/v2/hcldec" - "github.com/hashicorp/packer/packer" packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) type cmdProvisioner struct { - p packer.Provisioner + p packersdk.Provisioner client *Client } diff --git a/packer/rpc/client.go b/packer/rpc/client.go index 6d79567aa..49752a384 100644 --- a/packer/rpc/client.go +++ b/packer/rpc/client.go @@ -129,7 +129,7 @@ func (c *Client) PostProcessor() packer.PostProcessor { } } -func (c *Client) Provisioner() packer.Provisioner { +func (c *Client) Provisioner() packersdk.Provisioner { return &provisioner{ commonClient: commonClient{ endpoint: DefaultProvisionerEndpoint, diff --git a/packer/rpc/provisioner.go b/packer/rpc/provisioner.go index 8337cf6db..391e968cf 100644 --- a/packer/rpc/provisioner.go +++ b/packer/rpc/provisioner.go @@ -4,24 +4,23 @@ import ( "context" "log" - "github.com/hashicorp/packer/packer" packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) -// An implementation of packer.Provisioner where the provisioner is actually +// An implementation of packersdk.Provisioner where the provisioner is actually // executed over an RPC connection. type provisioner struct { commonClient } -// ProvisionerServer wraps a packer.Provisioner implementation and makes it +// ProvisionerServer wraps a packersdk.Provisioner implementation and makes it // exportable as part of a Golang RPC server. type ProvisionerServer struct { context context.Context contextCancel func() commonServer - p packer.Provisioner + p packersdk.Provisioner } type ProvisionerPrepareArgs struct { diff --git a/packer/rpc/provisioner_test.go b/packer/rpc/provisioner_test.go index 5b3d8844a..be77943d9 100644 --- a/packer/rpc/provisioner_test.go +++ b/packer/rpc/provisioner_test.go @@ -50,5 +50,5 @@ func TestProvisionerRPC(t *testing.T) { } func TestProvisioner_Implements(t *testing.T) { - var _ packer.Provisioner = new(provisioner) + var _ packersdk.Provisioner = new(provisioner) } diff --git a/packer/rpc/server.go b/packer/rpc/server.go index 94ffb96b6..0cc7bd43e 100644 --- a/packer/rpc/server.go +++ b/packer/rpc/server.go @@ -113,7 +113,7 @@ func (s *Server) RegisterPostProcessor(p packer.PostProcessor) error { }) } -func (s *Server) RegisterProvisioner(p packer.Provisioner) error { +func (s *Server) RegisterProvisioner(p packersdk.Provisioner) error { return s.server.RegisterName(DefaultProvisionerEndpoint, &ProvisionerServer{ commonServer: commonServer{ selfConfigurable: p, diff --git a/provisioner/ansible-local/provisioner_test.go b/provisioner/ansible-local/provisioner_test.go index 225854f87..19d7f87e4 100644 --- a/provisioner/ansible-local/provisioner_test.go +++ b/provisioner/ansible-local/provisioner_test.go @@ -21,7 +21,7 @@ import ( func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/ansible/provisioner_test.go b/provisioner/ansible/provisioner_test.go index 83f4d6960..aa939d80f 100644 --- a/provisioner/ansible/provisioner_test.go +++ b/provisioner/ansible/provisioner_test.go @@ -14,7 +14,6 @@ import ( "strings" "testing" - "github.com/hashicorp/packer/packer" "github.com/hashicorp/packer/packer-plugin-sdk/multistep/commonsteps" packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" confighelper "github.com/hashicorp/packer/packer-plugin-sdk/template/config" @@ -43,7 +42,7 @@ func testConfig(t *testing.T) map[string]interface{} { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/chef-client/provisioner_test.go b/provisioner/chef-client/provisioner_test.go index 40aca6988..80349fa5a 100644 --- a/provisioner/chef-client/provisioner_test.go +++ b/provisioner/chef-client/provisioner_test.go @@ -7,7 +7,6 @@ import ( "strings" "testing" - "github.com/hashicorp/packer/packer" packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) @@ -20,7 +19,7 @@ func testConfig() map[string]interface{} { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/chef-solo/provisioner_test.go b/provisioner/chef-solo/provisioner_test.go index 6df4c378c..9a378efc0 100644 --- a/provisioner/chef-solo/provisioner_test.go +++ b/provisioner/chef-solo/provisioner_test.go @@ -6,6 +6,7 @@ import ( "testing" "github.com/hashicorp/packer/packer" + packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) func testConfig() map[string]interface{} { @@ -15,7 +16,7 @@ func testConfig() map[string]interface{} { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/converge/provisioner_test.go b/provisioner/converge/provisioner_test.go index ee38905a5..8b2c4bf29 100644 --- a/provisioner/converge/provisioner_test.go +++ b/provisioner/converge/provisioner_test.go @@ -3,7 +3,7 @@ package converge import ( "testing" - "github.com/hashicorp/packer/packer" + packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) func testConfig() map[string]interface{} { @@ -21,7 +21,7 @@ func testConfig() map[string]interface{} { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatal("must be a Provisioner") } } diff --git a/provisioner/file/provisioner_test.go b/provisioner/file/provisioner_test.go index e0c5166ad..510dabfc7 100644 --- a/provisioner/file/provisioner_test.go +++ b/provisioner/file/provisioner_test.go @@ -23,7 +23,7 @@ func testConfig() map[string]interface{} { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a provisioner") } } diff --git a/provisioner/inspec/provisioner_test.go b/provisioner/inspec/provisioner_test.go index f814768a9..3725a7ba2 100644 --- a/provisioner/inspec/provisioner_test.go +++ b/provisioner/inspec/provisioner_test.go @@ -10,7 +10,7 @@ import ( "strings" "testing" - "github.com/hashicorp/packer/packer" + packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) // Be sure to remove the InSpec stub file in each test with: @@ -35,7 +35,7 @@ func testConfig(t *testing.T) map[string]interface{} { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/powershell/provisioner_acc_test.go b/provisioner/powershell/provisioner_acc_test.go index 3e485a055..baad86fad 100644 --- a/provisioner/powershell/provisioner_acc_test.go +++ b/provisioner/powershell/provisioner_acc_test.go @@ -65,8 +65,8 @@ func (s *PowershellProvisionerAccTest) GetConfig() (string, error) { func (s *PowershellProvisionerAccTest) GetProvisionerStore() packer.MapOfProvisioner { return packer.MapOfProvisioner{ - TestProvisionerName: func() (packer.Provisioner, error) { return &powershell.Provisioner{}, nil }, - "windows-shell": func() (packer.Provisioner, error) { return &windowsshellprovisioner.Provisioner{}, nil }, + TestProvisionerName: func() (packersdk.Provisioner, error) { return &powershell.Provisioner{}, nil }, + "windows-shell": func() (packersdk.Provisioner, error) { return &windowsshellprovisioner.Provisioner{}, nil }, } } diff --git a/provisioner/powershell/provisioner_test.go b/provisioner/powershell/provisioner_test.go index 7fb8f355e..feb14c2f1 100644 --- a/provisioner/powershell/provisioner_test.go +++ b/provisioner/powershell/provisioner_test.go @@ -46,7 +46,7 @@ func TestProvisionerPrepare_extractScript(t *testing.T) { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/puppet-masterless/provisioner_test.go b/provisioner/puppet-masterless/provisioner_test.go index ebaee2dd3..9a522c59f 100644 --- a/provisioner/puppet-masterless/provisioner_test.go +++ b/provisioner/puppet-masterless/provisioner_test.go @@ -32,7 +32,7 @@ func testConfig() (config map[string]interface{}, tf *os.File) { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/puppet-server/provisioner_test.go b/provisioner/puppet-server/provisioner_test.go index 68e9369b6..04d9d9dde 100644 --- a/provisioner/puppet-server/provisioner_test.go +++ b/provisioner/puppet-server/provisioner_test.go @@ -5,7 +5,7 @@ import ( "os" "testing" - "github.com/hashicorp/packer/packer" + packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) func testConfig() (config map[string]interface{}, tf *os.File) { @@ -24,7 +24,7 @@ func testConfig() (config map[string]interface{}, tf *os.File) { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/salt-masterless/provisioner_test.go b/provisioner/salt-masterless/provisioner_test.go index f8f2fb7a9..dc4d404d2 100644 --- a/provisioner/salt-masterless/provisioner_test.go +++ b/provisioner/salt-masterless/provisioner_test.go @@ -6,7 +6,7 @@ import ( "strings" "testing" - "github.com/hashicorp/packer/packer" + packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) func testConfig() map[string]interface{} { @@ -18,7 +18,7 @@ func testConfig() map[string]interface{} { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/shell-local/provisioner_acc_test.go b/provisioner/shell-local/provisioner_acc_test.go index a23ceb3c5..0b2e608a1 100644 --- a/provisioner/shell-local/provisioner_acc_test.go +++ b/provisioner/shell-local/provisioner_acc_test.go @@ -42,7 +42,7 @@ func (s *ShellLocalProvisionerAccTest) GetConfig() (string, error) { func (s *ShellLocalProvisionerAccTest) GetProvisionerStore() packer.MapOfProvisioner { return packer.MapOfProvisioner{ - "shell-local": func() (packer.Provisioner, error) { return &shell.Provisioner{}, nil }, + "shell-local": func() (packersdk.Provisioner, error) { return &shell.Provisioner{}, nil }, } } diff --git a/provisioner/shell-local/provisioner_test.go b/provisioner/shell-local/provisioner_test.go index 9f4fb9d2a..f173763b3 100644 --- a/provisioner/shell-local/provisioner_test.go +++ b/provisioner/shell-local/provisioner_test.go @@ -3,11 +3,11 @@ package shell import ( "testing" - "github.com/hashicorp/packer/packer" + packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) func TestProvisioner_impl(t *testing.T) { - var _ packer.Provisioner = new(Provisioner) + var _ packersdk.Provisioner = new(Provisioner) } func TestConfigPrepare(t *testing.T) { diff --git a/provisioner/shell/provisioner_acc_test.go b/provisioner/shell/provisioner_acc_test.go index faf785a0a..5ba6ac42f 100644 --- a/provisioner/shell/provisioner_acc_test.go +++ b/provisioner/shell/provisioner_acc_test.go @@ -45,8 +45,8 @@ func (s *ShellProvisionerAccTest) GetConfig() (string, error) { func (s *ShellProvisionerAccTest) GetProvisionerStore() packer.MapOfProvisioner { return packer.MapOfProvisioner{ - "shell": func() (packer.Provisioner, error) { return &shell.Provisioner{}, nil }, - "file": func() (packer.Provisioner, error) { return &file.Provisioner{}, nil }, + "shell": func() (packersdk.Provisioner, error) { return &shell.Provisioner{}, nil }, + "file": func() (packersdk.Provisioner, error) { return &file.Provisioner{}, nil }, } } diff --git a/provisioner/shell/provisioner_test.go b/provisioner/shell/provisioner_test.go index 8f88bcc53..8068f3e65 100644 --- a/provisioner/shell/provisioner_test.go +++ b/provisioner/shell/provisioner_test.go @@ -7,8 +7,8 @@ import ( "strings" "testing" - "github.com/hashicorp/packer/packer" "github.com/hashicorp/packer/packer-plugin-sdk/multistep/commonsteps" + packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) func testConfig() map[string]interface{} { @@ -20,7 +20,7 @@ func testConfig() map[string]interface{} { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/sleep/provisioner.go b/provisioner/sleep/provisioner.go index 8c3de5dd8..1f6746c97 100644 --- a/provisioner/sleep/provisioner.go +++ b/provisioner/sleep/provisioner.go @@ -7,7 +7,6 @@ import ( "time" "github.com/hashicorp/hcl/v2/hcldec" - "github.com/hashicorp/packer/packer" packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" "github.com/hashicorp/packer/packer-plugin-sdk/template/config" ) @@ -16,7 +15,7 @@ type Provisioner struct { Duration time.Duration } -var _ packer.Provisioner = new(Provisioner) +var _ packersdk.Provisioner = new(Provisioner) func (p *Provisioner) ConfigSpec() hcldec.ObjectSpec { return p.FlatMapstructure().HCL2Spec() } diff --git a/provisioner/windows-restart/provisioner_test.go b/provisioner/windows-restart/provisioner_test.go index 6d87216c2..93397e803 100644 --- a/provisioner/windows-restart/provisioner_test.go +++ b/provisioner/windows-restart/provisioner_test.go @@ -7,7 +7,6 @@ import ( "testing" "time" - "github.com/hashicorp/packer/packer" packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) @@ -18,7 +17,7 @@ func testConfig() map[string]interface{} { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } } diff --git a/provisioner/windows-shell/provisioner_test.go b/provisioner/windows-shell/provisioner_test.go index b523721a2..961bbe76c 100644 --- a/provisioner/windows-shell/provisioner_test.go +++ b/provisioner/windows-shell/provisioner_test.go @@ -9,7 +9,6 @@ import ( "strings" "testing" - "github.com/hashicorp/packer/packer" "github.com/hashicorp/packer/packer-plugin-sdk/multistep/commonsteps" packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer" ) @@ -49,7 +48,7 @@ func TestProvisionerPrepare_extractScript(t *testing.T) { func TestProvisioner_Impl(t *testing.T) { var raw interface{} raw = &Provisioner{} - if _, ok := raw.(packer.Provisioner); !ok { + if _, ok := raw.(packersdk.Provisioner); !ok { t.Fatalf("must be a Provisioner") } }