sync v2.3 (#1232)

* fix(be): change bodyParams to string to accept any content-type (#1202)

* fix: change bodyParams to string to accept any content-type

* fix: ci error

* fix: change bodyparam to type string in e2e test case

* fix: ci

Co-authored-by: 琚致远 <juzhiyuan@apache.org>

* fix: online debug body params support content-type x-www-form-urlencoded (#1201)

* fix: online debug body params support content-type x-www-form-urlencoded

* fix: body code mirror support different mode

* fix: use enum instead of real string

* fix: lint error

Co-authored-by: 琚致远 <juzhiyuan@apache.org>

* feat: add tips when plugin type is auth and schemaType is not consumer (#1219)

Co-authored-by: 琚致远 <juzhiyuan@apache.org>

* feat: added E2E test for plugins (#1214)

* fix(FE): delete global plugin failed (#1170)

* fix: delete global plugin failed

* fix: filter disable plugins

* fix: update online debug api protocol validation and error msg (#1166)

* fix: update validation and msg

* Update api/internal/handler/route_online_debug/route_online_debug.go

* fix: update refer to code review

Co-authored-by: 琚致远 <juzhiyuan@apache.org>

* feat(cli): Show GitHash for manager-api in branch v2.3 (backport #1162) (#1181)

* fix: correct Version and GitHash output for manager-api command (#1162)

* bug: fix Version and add GitHash for manager-api command

Signed-off-by: imjoey <majunjiev@gmail.com>

* feat: git hash support generating .githash for apache release

Signed-off-by: imjoey <majunjiev@gmail.com>

* feat: Add testcase for the new githash info

Signed-off-by: imjoey <majunjiev@gmail.com>

* feat: add test case for .githash content validation

Signed-off-by: imjoey <majunjiev@gmail.com>

* feat: Remove git command dependency for getting git hash

Signed-off-by: imjoey <majunjiev@gmail.com>

* feat: set VERSION to 2.3 in branch v2.3

Signed-off-by: imjoey <majunjiev@gmail.com>

* fix(fe): route search with status (#1205)

* fix(fe): route search with status

* fix: version and status select box allowclear

* fix: remove console

* fix: set create_time/update_time as omitempty (#1203)

Signed-off-by: imjoey <majunjiev@gmail.com>

* fix(FE): service issues (#1209)

* fix: omit checks when empty

* fix: desc search

* fix: omit checks when empty

* feat: remove desc search

* feat: add create service e2e test

* feat: update code

* feat: update code

* chore: sync json schema from Apache APISIX 2.2 (#1177)

* chore: sync json schema from Apache APISIX 2.2

* fix: remove schema of plugins that not enable by default

* fix test cases for plugin skywalking which is not enable by default

* chore: expose port for control API

* fix: control API config

* fix yaml format

* fix CI failed

* fix: log path

* fix: log path

Co-authored-by: 琚致远 <juzhiyuan@apache.org>

* fix: well handle with malformed auth token in request header (#1206) (#1210)

* fix: not panic if auth token is invalid

Signed-off-by: imjoey <majunjiev@gmail.com>

* do not record the false in log

Signed-off-by: imjoey <majunjiev@gmail.com>

Co-authored-by: Joey <majunjiev@gmail.com>

* fix: route list search query string (#1197)

* fix: route list search qurey string

* fix: well handle with malformed auth token in request header (#1206)

* fix: not panic if auth token is invalid

Signed-off-by: imjoey <majunjiev@gmail.com>

* do not record the false in log

Signed-off-by: imjoey <majunjiev@gmail.com>

* feat: add search lables e2e

* feat: add search route labels testcase

* feat: update code

* Update selector.json

* Update search-route.spec.js

Co-authored-by: Joey <majunjiev@gmail.com>
Co-authored-by: 琚致远 <juzhiyuan@apache.org>

* feat: init cypress with plugin

* style: codes format

* feat: added come testcases

* feat: use the correct api version

* feat: added tip

* feat: added tip

* feat: added test cases

* feat: added disable

* feat: added disable

* feat: added disable

* style: codes format

* feat: added ajv formats

* feat: remove useless codes

Co-authored-by: litesun <sunyi@apache.org>
Co-authored-by: liuxiran <belovedxixi@126.com>
Co-authored-by: Joey <majunjiev@gmail.com>
Co-authored-by: nic-chen <johz@163.com>
Co-authored-by: nic-chen <33000667+nic-chen@users.noreply.github.com>

* feat: add plugin icon (#1220)

* feat: add default plugin img

* feat: add plugin edit drawer tips

* feat: change icon opacity to 0.2

* feat: add plugin icon

* feat: update style

Co-authored-by: 琚致远 <juzhiyuan@apache.org>

Co-authored-by: liuxiran <belovedxixi@126.com>
Co-authored-by: litesun <sunyi@apache.org>
Co-authored-by: Joey <majunjiev@gmail.com>
Co-authored-by: nic-chen <johz@163.com>
Co-authored-by: nic-chen <33000667+nic-chen@users.noreply.github.com>
26 files changed
tree: 66287a725ad6b5ce7ab160b9f712ac4272c942d0
  1. .actions/
  2. .github/
  3. .vscode/
  4. api/
  5. docs/
  6. licenses/
  7. web/
  8. .asf.yaml
  9. .dockerignore
  10. .gitignore
  11. .markdownlint.yml
  12. .yamllint
  13. CHANGELOG.md
  14. CODE_OF_CONDUCT.md
  15. CONTRIBUTING.md
  16. Dockerfile
  17. LICENSE
  18. Makefile
  19. NOTICE
  20. README.md
README.md

Apache APISIX Dashboard (Experimental)

License Go Report Card

  • The master version should be used with Apache APISIX master version.

  • The latest released version is 2.2 and should be used with Apache APISIX 2.1. It is not recommended to use with other Apache APISIX versions.

What's Apache APISIX Dashboard

The Apache APISIX Dashboard is designed to make it as easy as possible for users to operate Apache APISIX through a frontend interface.

The Dashboard is the control plane and performs all parameter checks; Apache APISIX mixes data and control planes and will evolve to a pure data plane.

This project includes Manager API, which will gradually replace Admin API in Apache APISIX.

Note: Currently the Dashboard does not have complete coverage of Apache APISIX features, visit here to view the milestones.

architecture

Project structure

.
├── CHANGELOG.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── Dockerfile
├── LICENSE
├── Makefile
├── NOTICE
├── README.md
├── api
├── docs
├── licenses
└── web
  1. The api directory is used to store the Manager API source codes, which is used to manage etcd and provide APIs to the frontend interface.
  2. The web directory is used to store the frontend source codes.

Build then launch

Support the following ways currently.

Development

Please refer to the Development Guide.

User Guide

Please refer to the User Guide.

Contributing

Please refer to the Contribution Guide for a more detailed information.

FAQ

Please refer to the FAQ for more known issues.

License

Apache License 2.0