Files
2025-02-06 18:16:49 +08:00

41 lines
951 B
Go

package plugin
import (
"os"
"github.com/langgenius/dify-plugin-daemon/internal/utils/log"
"github.com/langgenius/dify-plugin-daemon/pkg/plugin_packager/decoder"
"github.com/langgenius/dify-plugin-daemon/pkg/plugin_packager/packager"
)
var (
MaxPluginPackageSize = int64(52428800) // 50MB
)
func PackagePlugin(inputPath string, outputPath string) {
decoder, err := decoder.NewFSPluginDecoder(inputPath)
if err != nil {
log.Error("failed to create plugin decoder , plugin path: %s, error: %v", inputPath, err)
os.Exit(1)
return
}
packager := packager.NewPackager(decoder)
zipFile, err := packager.Pack(MaxPluginPackageSize)
if err != nil {
log.Error("failed to package plugin %v", err)
os.Exit(1)
return
}
err = os.WriteFile(outputPath, zipFile, 0644)
if err != nil {
log.Error("failed to write package file %v", err)
os.Exit(1)
return
}
log.Info("plugin packaged successfully, output path: %s", outputPath)
}