github.com/aclaygray/packer@v1.3.2/post-processor/checksum/artifact.go (about) 1 package checksum 2 3 import ( 4 "fmt" 5 "os" 6 "strings" 7 ) 8 9 const BuilderId = "packer.post-processor.checksum" 10 11 type Artifact struct { 12 files []string 13 } 14 15 func NewArtifact(files []string) *Artifact { 16 return &Artifact{files: files} 17 } 18 19 func (a *Artifact) BuilderId() string { 20 return BuilderId 21 } 22 23 func (a *Artifact) Files() []string { 24 return a.files 25 } 26 27 func (a *Artifact) Id() string { 28 return "" 29 } 30 31 func (a *Artifact) String() string { 32 files := strings.Join(a.files, ", ") 33 return fmt.Sprintf("Created artifact from files: %s", files) 34 } 35 36 func (a *Artifact) State(name string) interface{} { 37 return nil 38 } 39 40 func (a *Artifact) Destroy() error { 41 for _, f := range a.files { 42 err := os.RemoveAll(f) 43 if err != nil { 44 return err 45 } 46 } 47 return nil 48 }