byzer-lang
byzer-lang copied to clipboard
内网无法支持网络安装插件
当前在 Byzer lang 的引擎中可以通过网络和离线的方式进行安装插件, 官方文档见 插件安装
但这里有三个问题:
- 插件库的地址是 hard code 的, 见如下代码: PluginUtils line 39
object PluginUtils extends Logging with WowLog {
val TABLE_ETRecord = "__mlsql__.etRecord"
val TABLE_DSRecord = "__mlsql__.dsRecord"
val TABLE_APPRecord = "__mlsql__.appRecord"
val TABLE_PLUGINS = "__mlsql__.plugins"
val TABLE_FILES = "__mlsql__.files"
val PLUGIN_STORE_URL = "http://store.mlsql.tech/run"
这里应该将此参数抽象成配置项进行处理,允许用户自行配置插件库地址
-
目前插件库的指向为
http://store.mlsql.tech/run
, 需要一个 byzer.org 的插件库地址,默认项为byzer org 的插件库地址,mlsql.tech
的作为备用地址 -
在手册文档上给出如何自建插件库地址的说明
目前已知可以可以通过 !plugin proxy
设置新地址, 设置的新地址会持久化到 delta lake里, 这个行为目前比较混乱,需要整理 !plugin proxy
的行为,并和上述 issue enhancement 合并,如果有必要,需要将 !plugin proxy
功能隐藏, 需要提个完整的 BIP 方案