environment.go 929 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package local_manager
  2. import (
  3. "fmt"
  4. "os"
  5. "path"
  6. "github.com/langgenius/dify-plugin-daemon/internal/types/entities/constants"
  7. "github.com/langgenius/dify-plugin-daemon/internal/types/entities/plugin_entities"
  8. )
  9. func (r *LocalPluginRuntime) InitEnvironment() error {
  10. var err error
  11. if r.Config.Meta.Runner.Language == constants.Python {
  12. err = r.InitPythonEnvironment()
  13. } else {
  14. return fmt.Errorf("unsupported language: %s", r.Config.Meta.Runner.Language)
  15. }
  16. if err != nil {
  17. return err
  18. }
  19. // create .installed file
  20. f, err := os.Create(path.Join(r.State.WorkingPath, ".installed"))
  21. if err != nil {
  22. return err
  23. }
  24. defer f.Close()
  25. return nil
  26. }
  27. func (r *LocalPluginRuntime) Identity() (plugin_entities.PluginUniqueIdentifier, error) {
  28. checksum, err := r.Checksum()
  29. if err != nil {
  30. return "", err
  31. }
  32. return plugin_entities.NewPluginUniqueIdentifier(fmt.Sprintf("%s@%s", r.Config.Identity(), checksum))
  33. }