From c4fc365c657038e8929f17ce49c8db2434d92a12 Mon Sep 17 00:00:00 2001 From: Chris Bednarski Date: Wed, 10 Jun 2015 13:33:50 -0700 Subject: [PATCH] Updated to reflect changes to template code --- plugin/post-processor-compress/main.go | 2 +- post-processor/compress/post-processor.go | 26 +++++++++++------------ 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/plugin/post-processor-compress/main.go b/plugin/post-processor-compress/main.go index 3acc85228..15bf6f223 100644 --- a/plugin/post-processor-compress/main.go +++ b/plugin/post-processor-compress/main.go @@ -10,6 +10,6 @@ func main() { if err != nil { panic(err) } - server.RegisterPostProcessor(new(compress.PostProcessor)) + server.RegisterPostProcessor(new(compress.CompressPostProcessor)) server.Serve() } diff --git a/post-processor/compress/post-processor.go b/post-processor/compress/post-processor.go index f62bea858..9751a24a8 100644 --- a/post-processor/compress/post-processor.go +++ b/post-processor/compress/post-processor.go @@ -16,7 +16,9 @@ import ( bgzf "github.com/biogo/hts/bgzf" pgzip "github.com/klauspost/pgzip" "github.com/mitchellh/packer/common" + "github.com/mitchellh/packer/helper/config" "github.com/mitchellh/packer/packer" + "github.com/mitchellh/packer/template/interpolate" lz4 "github.com/pierrec/lz4" "gopkg.in/yaml.v2" ) @@ -40,7 +42,7 @@ type Config struct { NumCPU int `mapstructure:"numcpu"` Format string `mapstructure:"format"` KeepInputArtifact bool `mapstructure:"keep_input_artifact"` - tpl *packer.ConfigTemplate + ctx *interpolate.Context } type CompressPostProcessor struct { @@ -49,24 +51,22 @@ type CompressPostProcessor struct { func (p *CompressPostProcessor) Configure(raws ...interface{}) error { p.cfg.Compression = -1 - _, err := common.DecodeConfig(&p.cfg, raws...) - if err != nil { - return err - } + err := config.Decode(&p.cfg, &config.DecodeOpts{ + Interpolate: true, + InterpolateFilter: &interpolate.RenderFilter{ + Exclude: []string{ + // TODO figure out if something needs to go here. + }, + }, + }, raws...) errs := new(packer.MultiError) - p.cfg.tpl, err = packer.NewConfigTemplate() - if err != nil { - return err - } - p.cfg.tpl.UserVars = p.cfg.PackerUserVars - if p.cfg.OutputPath == "" { p.cfg.OutputPath = "packer_{{.BuildName}}_{{.Provider}}" } - if err = p.cfg.tpl.Validate(p.cfg.OutputPath); err != nil { + if err = interpolate.Validate(p.cfg.OutputPath, p.cfg.ctx); err != nil { errs = packer.MultiErrorAppend( errs, fmt.Errorf("Error parsing target template: %s", err)) } @@ -94,7 +94,7 @@ func (p *CompressPostProcessor) Configure(raws ...interface{}) error { errs, fmt.Errorf("%s must be set", key)) } - *ptr, err = p.cfg.tpl.Process(*ptr, nil) + *ptr, err = interpolate.Render(p.cfg.OutputPath, p.cfg.ctx) if err != nil { errs = packer.MultiErrorAppend( errs, fmt.Errorf("Error processing %s: %s", key, err))