@spacewander  Agree, apart from the first point of network connectivity, I
did not have a good solution to the other two problems.
Do other people have any good opinions ?

Zexuan Luo <[email protected]> 于2021年3月4日周四 上午9:33写道:

> > The dashboard monitors the changes of the main branch and pushes the
> changed lua files to etcd
>
> So it means the dashboard should be able to watch the VCS of the
> development environment? But the network between dev environment and
> prod environment is either separate or unidirectional. You can push a
> change to the prod environment, but the prod environment can't run
> `git` to fetch your code.
>
>
> > apisix(DP) automatically synchronizes the custom plugin from etcd. And
> do not need to write to lua file.
>
> I doubt it is suitable for debugging if we don't store it in a file.
> And we should remember there is a key size limitation of etcd. Etcd is
> not designed as a file storage.
>
> > Of course, we do face some complex plug-in scenarios, for example,
> plug-ins
> that need to modify sharedict or those plugins which need to patch APISIX /
> OpenResty itself.
> > I suggest that this kind of plug-in is special, so you don't need to
> support it at first. Only supports single lua files.
>
> A solution which only works in the normal case is unacceptable. There
> must be a way to extend the solution to let it work with special
> cases. Take opm as an example, no one uses it because it only supports
> pure Lua libraries. If our way only supports a single Lua file, people
> will switch to re-package once they need to handle special cases. So
> why don't they use the re-package way from the beginning?
>

Reply via email to