|
@@ -16,10 +16,19 @@ import (
|
|
|
type GenericBundlePackager struct {
|
|
|
bundle *bundle_entities.Bundle
|
|
|
assets map[string]*bytes.Buffer
|
|
|
+
|
|
|
+ extraFiles map[string]*bytes.Buffer
|
|
|
}
|
|
|
|
|
|
-func NewGenericBundlePackager(bundle *bundle_entities.Bundle) *GenericBundlePackager {
|
|
|
- return &GenericBundlePackager{bundle: bundle, assets: make(map[string]*bytes.Buffer)}
|
|
|
+func NewGenericBundlePackager(
|
|
|
+ bundle *bundle_entities.Bundle,
|
|
|
+ extraFiles map[string]*bytes.Buffer,
|
|
|
+) *GenericBundlePackager {
|
|
|
+ return &GenericBundlePackager{
|
|
|
+ bundle: bundle,
|
|
|
+ assets: make(map[string]*bytes.Buffer),
|
|
|
+ extraFiles: extraFiles,
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
func (p *GenericBundlePackager) Export() ([]byte, error) {
|
|
@@ -53,6 +62,19 @@ func (p *GenericBundlePackager) Export() ([]byte, error) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // write the extra files
|
|
|
+ for name, file := range p.extraFiles {
|
|
|
+ extraFile, err := zipWriter.Create(name)
|
|
|
+ if err != nil {
|
|
|
+ return nil, err
|
|
|
+ }
|
|
|
+
|
|
|
+ _, err = extraFile.Write(file.Bytes())
|
|
|
+ if err != nil {
|
|
|
+ return nil, err
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
// close the zip writer to flush the buffer
|
|
|
zipWriter.Close()
|
|
|
|