Hi, community, When I was solving this issue[1], I encountered a problem:
There is a change parameter named sni in the SSL [2] , but I did not find information about this field in the admin api of APISIX [3]. [1] https://github.com/apache/apisix-dashboard/issues/2015 [2] https://github.com/apache/apisix-dashboard/pull/1999/files#diff-5fadf7c6b5b550d0a97075c3ddeaf29028204cd60da2660c6a1e1c72b4bbd0edR1438 [3] https://apisix.apache.org/docs/apisix/admin-api#request-body-parameters-4 Best Regards! Zhiyuan Ju <juzhiy...@apache.org> 于2021年7月29日周四 下午9:45写道: > Hi, Baoyuan, > > Thanks to take this issue, and don't forget to link it to > https://github.com/apache/apisix-dashboard/issues/1944 , so we could have > a > track. > > Best Regards! > @ Zhiyuan Ju <https://github.com/juzhiyuan> > > > Baoyuan <baoyuan....@gmail.com> 于2021年7月29日周四 下午6:07写道: > > > Hi, community, > > > > I can help solve this issue[1] in the 2.7.1 Milestone. > > > > [1] https://github.com/apache/apisix-dashboard/issues/2015 > > > > Best Regards! > > > > Zhiyuan Ju <juzhiy...@apache.org> 于2021年7月29日周四 下午5:59写道: > > > > > Hi, community, > > > > > > I just created the 2.7.1 Milestone and added the necessary issues > > here[1], > > > and looking forward to having contributors working on them :) > > > > > > [1] https://github.com/apache/apisix-dashboard/milestone/14 > > > > > > Best Regards! > > > @ Zhiyuan Ju <https://github.com/juzhiyuan> > > > > > > > > > Zhiyuan Ju <juzhiy...@apache.org> 于2021年7月27日周二 上午11:52写道: > > > > > > > Hi, community, > > > > > > > > After having a diff between Dashboard 2.7 and APISIX 2.7, I list all > > the > > > > differences across modules. > > > > > > > > Phase 1: Dashboard 2.7.1 with APISIX 2.7 > > > > > > > > Module Differences > > > > Other Remove Version Matcher Logics on both Web and ManagerAPI > > > > Upstream Check hash_on filed and limitation > > > > > > > > > > > > > > > > > > https://apisix.apache.org/docs/apisix/2.7/admin-api#request-body-parameters-3 > > > > Route Support uri/uris、host/hosts、remote_addr/remote_addrs > > > > Route Support all operators in the "vars" field (like APISIX does) > > > > Plugin Diff schema.json > > > > https://github.com/apache/apisix-dashboard/pull/1999/files > > > > > > > > Phase2: Dashboard 2.7.2 with APISIX 2.7 > > > > > > > > Upstream Support Service Discovery: Nacos、Eureka、Consul、DNS > > > > > > > > https://apisix.apache.org/docs/apisix/2.7/discovery/nacos > > > > Upstream Support FQDN > > > > > > > > > > > > > > > > > > https://apisix.apache.org/docs/apisix/2.7/FAQ#does-the-upstream-node-support-configuring-the-fqdn-address > > > > Stream Route Support Stream Proxy (Stream Route) > > > > > > > > - https://apisix.apache.org/docs/apisix/2.7/stream-proxy > > > > <https://apisix.apache.org/docs/apisix/2.7/stream-proxy> > > > > - https://apisix.apache.org/docs/apisix/2.7/admin-api#stream-route > > > > <https://apisix.apache.org/docs/apisix/2.7/admin-api#stream-route> > > > > SSL Support all fields in the SSL entity > > > > > > > > https://apisix.apache.org/docs/apisix/2.7/admin-api/#ssl > > > > Plugin Metadata What're the cases for Plugin Metadata > > > > > > > > https://apisix.apache.org/docs/apisix/2.7/admin-api/#plugin-metadata > > > > Phase 3: Dashboard 2.8 with APISIX 2.8 > > > > > > > > Due to APISIX 2.8 has changes that Dashboard isn't supported, I don't > > > have > > > > a detailed diff between them. Let's do the first 2 phases :) I will > > > create > > > > 2 milestones later. > > > > > > > > Any thoughts on this? > > > > > > > > > > > > Best Regards! > > > > @ Zhiyuan Ju <https://github.com/juzhiyuan> > > > > > > > > > > > > Peter Zhu <sta...@apache.org> 于2021年7月26日周一 上午10:23写道: > > > > > > > >> Agree + 1. I'm looking forward to the long-term solution. > > > >> > > > >> JunXu Chen <chenju...@apache.org> 于2021年7月26日周一 上午9:17写道: > > > >> > > > >> > Agree + 1, especially with the Long-term solution. > > > >> > > > > >> > The Manager API did not bring many features but caused many > problems > > > >> due to > > > >> > the synchronization of the JSON Schema. > > > >> > > > > >> > > > > >> > On Mon, 26 Jul 2021 at 00:44, Xiran Liu <liuxi...@apache.org> > > wrote: > > > >> > > > > >> > > Agree, and looking forward to the long term solution, we need a > > > >> unified > > > >> > > API to operate APISIX, and for dashboard, we only need some data > > > >> > conversion > > > >> > > from service. > > > >> > > > > > >> > > On 2021/07/25 09:37:58, Zhiyuan Ju <juzhiy...@apache.org> > wrote: > > > >> > > > Hi, community, > > > >> > > > > > > >> > > > After this discussion is closed, I will create 2 milestones to > > > track > > > >> > > > progress: > > > >> > > > > > > >> > > > - Keep the current functionally compatible with Apache APISIX > > 2.7 > > > -> > > > >> > > 2.7.1 > > > >> > > > - Support the functionality with Apache APISIX 2.8 -> 2.8 > > (Apache > > > >> > APISIX > > > >> > > > 2.8 is coming soon) > > > >> > > > > > > >> > > > Best Regards! > > > >> > > > @ Zhiyuan Ju <https://github.com/juzhiyuan> > > > >> > > > > > > >> > > > > > > >> > > > Zhiyuan Ju <juzhiy...@apache.org> 于2021年7月25日周日 下午3:39写道: > > > >> > > > > > > >> > > > > Hi, Shyamal, > > > >> > > > > > > > >> > > > > > Any changes to existing APIs should be visible to > Dashboard > > > team > > > >> > > > > > > > >> > > > > That's true, and due to the Dashboard is beyond the APISIX, > I > > > >> would > > > >> > > prefer > > > >> > > > > supporting the current APISIX's functionally in the > Dashboard, > > > >> then > > > >> > > > > continuing watching on the status of APISIX, then we could > > > update > > > >> it > > > >> > as > > > >> > > > > soon as possible :) > > > >> > > > > > > > >> > > > > Do there have any other questions? If no, I'm glad to lead > > this > > > >> and > > > >> > > take > > > >> > > > > action next week. > > > >> > > > > > > > >> > > > > Best Regards! > > > >> > > > > @ Zhiyuan Ju <https://github.com/juzhiyuan> > > > >> > > > > > > > >> > > > > > > > >> > > > > Shyamal Madura Chinthaka <shyamal.mad...@gmail.com> > > > 于2021年7月23日周五 > > > >> > > > > 上午4:19写道: > > > >> > > > > > > > >> > > > >> Hi Zhiyuan Ju et al, > > > >> > > > >> > > > >> > > > >> Adding my 2 cents especially on the long term solution, > > > >> > > > >> > > > >> > > > >> I believe Dashboard should rely on more stable long term > > > >> supported > > > >> > > APIs > > > >> > > > >> from APISIX. API changes should be version and old version > > > >> should be > > > >> > > > >> deprecated with support for a fair amount of time. > > > >> > > > >> Any changes to existing APIs should be visible to Dashboard > > > team > > > >> in > > > >> > > > >> advanced so that Dashboard team can adopt API changes > > > relatively > > > >> > fast > > > >> > > > >> without delaying until the APISIX release is done. > > > >> > > > >> > > > >> > > > >> However problem should be discussed beyond the dashboard > and > > > >> > possible > > > >> > > > >> compatibility issues with APISIX new changes. > > > >> > > > >> > > > >> > > > >> APISIX may have been integrated with other platforms for > > > >> automation > > > >> > > for > > > >> > > > >> things like microservice / low code development platforms > > > (which > > > >> I > > > >> > > work > > > >> > > > >> with as well) thus immediate incompatibility with any API > > could > > > >> run > > > >> > > into > > > >> > > > >> obvious issues with other kinds of integration. > > > >> > > > >> > > > >> > > > >> Much Regards, > > > >> > > > >> > > > >> > > > >> Shyamal Madura! > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> On Thu, Jul 22, 2021, 22:06 Zhiyuan Ju < > juzhiy...@apache.org > > > > > > >> > wrote: > > > >> > > > >> > > > >> > > > >> > Hi, > > > >> > > > >> > > > > >> > > > >> > After rethinking this issue, I have the following > proposal: > > > >> > > > >> > > > > >> > > > >> > In the current architecture where DP and CP are > separated, > > > each > > > >> > > party > > > >> > > > >> needs > > > >> > > > >> > to maintain JSONSchema data. Moreover, when APISIX is > > > upgraded > > > >> > (API > > > >> > > > >> field > > > >> > > > >> > additions and deletions, plugins and their field > additions > > > and > > > >> > > > >> deletions), > > > >> > > > >> > Dashboard also needs to finish adapting and releasing new > > > >> versions > > > >> > > as > > > >> > > > >> soon > > > >> > > > >> > as possible, otherwise using a mismatched Dashboard will > > > write > > > >> > data > > > >> > > in > > > >> > > > >> ETCD > > > >> > > > >> > that APISIX may not support and create new problems. > > > Therefore, > > > >> > > global > > > >> > > > >> > hinting in Dashboard is not desirable and does not solve > > the > > > >> > > fundamental > > > >> > > > >> > problem. > > > >> > > > >> > > > > >> > > > >> > To solve the problem of Dashboard and APISIX adaptation, > > the > > > >> > > following > > > >> > > > >> plan > > > >> > > > >> > is adopted, divided into 3 phases. > > > >> > > > >> > > > > >> > > > >> > **Phase 1** > > > >> > > > >> > > > > >> > > > >> > The first phase requires a quick solution to the problem > in > > > the > > > >> > > > >> following > > > >> > > > >> > way. > > > >> > > > >> > 1. Now, the latest version of Dashboard is 2.7, and the > > > latest > > > >> > > version > > > >> > > > >> of > > > >> > > > >> > APISIX is 2.7. > > > >> > > > >> > 2. Disregard the historical version matching problem and > > > >> deprecate > > > >> > > the > > > >> > > > >> > version matching logic (manually maintaining a Mapper). > > > >> > > > >> > 3. Compare Dashboard 2.7 with APISIX 2.7 and sort out > where > > > >> > > Dashboard's > > > >> > > > >> > existing features are inconsistent with APISIX (API > fields, > > > >> plugin > > > >> > > > >> schema). > > > >> > > > >> > 4. Update Dashboard to match the existing features with > > > APISIX > > > >> 2.7 > > > >> > > and > > > >> > > > >> > release version 2.7.1. > > > >> > > > >> > > > > >> > > > >> > **Phase 2** > > > >> > > > >> > > > > >> > > > >> > The second phase requires enriching Dashboard > functionality > > > to > > > >> > match > > > >> > > > >> APISIX > > > >> > > > >> > functionality. > > > >> > > > >> > > > > >> > > > >> > 1. Sort out which APISIX 2.7 features are not implemented > > in > > > >> > > Dashboard > > > >> > > > >> > 2.7.1, such as Stream Proxy, Service Discovery, etc. > > > >> > > > >> > 2. Update the Dashboard to include the existing features > of > > > >> APISIX > > > >> > > 2.7 > > > >> > > > >> and > > > >> > > > >> > release version 2.7.2. > > > >> > > > >> > > > > >> > > > >> > **Phase 3** > > > >> > > > >> > > > > >> > > > >> > Phase 3 requires the Dashboard to synchronize the APISIX > > > >> release > > > >> > > > >> schedule > > > >> > > > >> > and release APISIX with the same version number, e.g., > 2.8, > > > >> > within a > > > >> > > > >> > manageable time frame after the release of APISIX. > > > >> > > > >> > > > > >> > > > >> > 1. APISIX milestones are visible in GitHub. > > > >> > > > >> > 2. After APISIX is released, sort out what is different > > > between > > > >> > > APISIX > > > >> > > > >> and > > > >> > > > >> > the previous version, and then adapt it in Dashboard. > > > >> > > > >> > > > > >> > > > >> > **Another Phase (Long-term solution)** > > > >> > > > >> > > > > >> > > > >> > In addition, I have a long-term plan, the current > > > architecture > > > >> is > > > >> > to > > > >> > > > >> > separate DP and CP, and the ManagerAPI in CP does a lot > of > > > >> > functions > > > >> > > > >> that > > > >> > > > >> > AdminAPI duplicates, so we might as well deprecate > > ManagerAPI > > > >> and > > > >> > > turn > > > >> > > > >> > Dashboard into **a pure Web project**, directly accessing > > > >> > AdminAPI, > > > >> > > so > > > >> > > > >> that > > > >> > > > >> > when the data in the Request Body is illegal, AdminAPI > will > > > >> return > > > >> > > an > > > >> > > > >> error > > > >> > > > >> > directly. Of course, this requires a more detailed > solution > > > >> design > > > >> > > and > > > >> > > > >> is a > > > >> > > > >> > big change. > > > >> > > > >> > > > > >> > > > >> > What do you think? > > > >> > > > >> > > > > >> > > > >> > Best Regards! > > > >> > > > >> > @ Zhiyuan Ju <https://github.com/juzhiyuan> > > > >> > > > >> > > > > >> > > > >> > > > > >> > > > >> > Zhiyuan Ju <juzhiy...@apache.org> 于2021年7月14日周三 > 下午1:46写道: > > > >> > > > >> > > > > >> > > > >> > > Hi, > > > >> > > > >> > > > > > >> > > > >> > > Currently, Apache APISIX Dashboard and Apache APISIX > are > > > two > > > >> > > separate > > > >> > > > >> > > projects (hereinafter referred to as Dashboard and > > APISIX). > > > >> > > Whenever > > > >> > > > >> > APISIX > > > >> > > > >> > > changes the content (e.g., APIs, API fields, Entity > > > >> definitions, > > > >> > > > >> etc.), > > > >> > > > >> > > Dashboard needs to match the changes and publish a new > > > >> version. > > > >> > > > >> > > > > > >> > > > >> > > Because the Apache APISIX Dashboard's version number is > > not > > > >> the > > > >> > > same > > > >> > > > >> as > > > >> > > > >> > > Apache APISIX, then users get confused when using the > > > >> Dashboard, > > > >> > > so I > > > >> > > > >> > draft > > > >> > > > >> > > a proposal to support showing incompatible information > > more > > > >> > > clearer on > > > >> > > > >> > the > > > >> > > > >> > > Dashboard.[1] > > > >> > > > >> > > > > > >> > > > >> > > Due to there have some prototypes I made, so I put them > > in > > > >> the > > > >> > > GitHub > > > >> > > > >> > > issue[1], looking forward to your feedback! > > > >> > > > >> > > > > > >> > > > >> > > [1] > > > >> > > > >> > > > > > >> > > > >> > > > > >> > > > >> > > > >> > > > > > >> > > > > >> > > > > > > https://github.com/apache/apisix-dashboard/issues/1944#issuecomment-879607016 > > > >> > > > >> > > > > > >> > > > >> > > Best Regards! > > > >> > > > >> > > @ Zhiyuan Ju <https://github.com/juzhiyuan> > > > >> > > > >> > > > > > >> > > > >> > > > > >> > > > >> > > > >> > > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > > > > > > > >