main.go 985 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package main
  2. import (
  3. "flag"
  4. "os"
  5. "github.com/langgenius/dify-plugin-daemon/internal/core/plugin_packager/decoder"
  6. "github.com/langgenius/dify-plugin-daemon/internal/core/plugin_packager/verifier"
  7. "github.com/langgenius/dify-plugin-daemon/internal/utils/log"
  8. )
  9. func main() {
  10. var (
  11. in_path string
  12. help bool
  13. )
  14. flag.StringVar(&in_path, "in", "", "input plugin file path")
  15. flag.BoolVar(&help, "help", false, "show help")
  16. flag.Parse()
  17. if help || in_path == "" {
  18. flag.PrintDefaults()
  19. os.Exit(0)
  20. }
  21. // read plugin
  22. plugin, err := os.ReadFile(in_path)
  23. if err != nil {
  24. log.Panic("failed to read plugin file %v", err)
  25. }
  26. // decode
  27. decoder, err := decoder.NewZipPluginDecoder(plugin)
  28. if err != nil {
  29. log.Panic("failed to create plugin decoder , plugin path: %s, error: %v", in_path, err)
  30. }
  31. // sign plugin
  32. err = verifier.VerifyPlugin(decoder)
  33. if err != nil {
  34. log.Panic("failed to verify plugin %v", err)
  35. }
  36. log.Info("plugin verified successfully")
  37. }