mirror of
https://gitcode.com/JianFeeeee/HomeAgent.git
synced 2026-09-21 01:18:08 +00:00
25 lines
568 B
Go
25 lines
568 B
Go
package plugin
|
||
|
||
import (
|
||
"fmt"
|
||
"os"
|
||
"path/filepath"
|
||
|
||
sdk "gitcode.com/JianFeeeee/HomeAgent/internal/sdk"
|
||
)
|
||
|
||
// tryLoadLua 从插件目录加载 main.lua(Lua 插件)。
|
||
// 返回 nil,nil 表示目录中没有 main.lua。
|
||
func tryLoadLua(dir, name string, config map[string]interface{}) (sdk.Plugin, error) {
|
||
luaPath := filepath.Join(dir, luaEntry)
|
||
if _, err := os.Stat(luaPath); os.IsNotExist(err) {
|
||
return nil, nil
|
||
}
|
||
|
||
plg, err := newLuaPlugin(luaPath, name)
|
||
if err != nil {
|
||
return nil, fmt.Errorf("lua plugin %s: %w", name, err)
|
||
}
|
||
return plg, nil
|
||
}
|