Commit Graph

57 Commits

Author SHA1 Message Date
YuanSheng Wang
a4634da49e
feature: used json schema to check the configuration of limit-count plugin. (#116)
* feature: used json schema to check the configuration of
	`limit-count` plugin.
* travis: if there was any errors, exist directly.
2019-06-17 15:05:19 +08:00
YuanSheng Wang
3ca005eb7a
feature: checked the upstream id in route or service. (#114)
* feature: checked the upstream id in route or service.
2019-06-17 11:45:04 +08:00
Yuansheng
33e78fd43b feature: used schema to check the upstream configuration.
Fix #102 .
2019-06-17 09:57:05 +08:00
Yuansheng
1921ea8ba5 feature: use schema check for service configuration.
Fix #111.
2019-06-17 09:08:16 +08:00
Yuansheng
5a966152ba test: missing no_shuffle() in node/sanity.t test case and added
more step information.
2019-06-16 12:33:13 +08:00
YuanSheng Wang
31cfc145bd
test: grep all of the error log and check it. (#109)
* travis: init the etcd server at first.
* test: grep all of the error log and check it.
2019-06-16 09:36:22 +08:00
YuanSheng Wang
fee7ec58ef
optmize: reused a Lua table of plugins. feature: supported to check the Lua source by command make check. (#108)
* optmize: reused a Lua table of plugins.
* feature: supported to check the Lua source by command `make check`.
* bug: reinitialize the prometheus variable each time.
2019-06-16 07:32:25 +08:00
YuanSheng Wang
dae069d51a
bugfix: returned 404 response if the service is not existing. (#107)
* bugfix: returned 404 response if the service is not existing.
2019-06-15 22:34:26 +08:00
YuanSheng Wang
16f5f27c90
feature: used schema to check the upstream configuration in etcd. (#105)
* feature: used schema to check the upstream configuration in etcd.
* change: used Lua table to avoid concat JSON string by manual for schema.
* optimize: changed a smaller wait time, faster way to know if there has new data coming.
2019-06-15 11:49:58 +08:00
YuanSheng Wang
32110aeba0
feature: returned 502 if there is no any valid upstream. (#100)
* feature: returned 502 if there is no any valid upstream.
2019-06-15 08:32:51 +08:00
Yuansheng
180cca723b feature: the minimum is 1 if the route id is integer. 2019-06-15 08:32:28 +08:00
Yuansheng
7a60149b6d feature: checked the id of route. 2019-06-15 07:17:34 +08:00
Yuansheng
a07894e7ac bugfix: checked the service id if it is valid. 2019-06-14 22:55:57 +08:00
Yuansheng
5db79419db test: added more test cases about the schema of route. 2019-06-14 22:05:53 +08:00
Yuansheng
66b3408204 makefile: create temporary dir for core file of apisix.
test: removed the sleep step, it is invalid.
2019-06-14 17:28:16 +08:00
YuanSheng Wang
f560316803
test: check the service config with json schema after fetched it form etcd. (#96)
* test: check the service config with `json schema` after fetched it form etcd.
* test: sleep one more seconds waiting for the etcd sync.
2019-06-14 17:08:44 +08:00
WenMing
ba576985b1
bugfix: added the plugin load. (#95)
* bugfix: added the plugin load.

* test: added test cases for limit count.

* test: added Lua sleep at the end of init_worker.

left enough time for read data from etcd, otherwise worker maybe deal with request before get data from etcd.

* test: added no_shuffle();
2019-06-14 16:11:14 +08:00
YuanSheng Wang
f270c6ff63
feature: used schema to check the etcd data if it is valid. (#91)
* feature: used schema to check the etcd data if it is valid.
2019-06-14 10:46:42 +08:00
YuanSheng Wang
2ebc2cee69
test: added a fully test case for gateway node. (#90)
* test: added a fully test case for gateway node.
2019-06-14 10:27:45 +08:00
Yuansheng
9ee285661f test: renamed test cases. 2019-06-14 08:08:59 +08:00
WenMing
1602268833
bugfix: only accept client IP as key now. (#85) 2019-06-13 19:11:15 +08:00
WenMing
c6e69cbcc9
feature: changed plugin_config to plugins. (#84) 2019-06-13 17:25:39 +08:00
Yuansheng
10a0fb03f7 test: moved the different test file to different folder. 2019-06-13 16:16:50 +08:00
WenMing
fd8618e731 feature: added schema check for plugins. 2019-06-13 14:39:35 +08:00
YuanSheng Wang
8cfd7d4180
feature: implemented routes API for admin user, allowed user to manage route. (#79)
* feature: supported to generate admin API basic configurations when the admin API is enabled.
* feature: supported to manage route API for admin user, it contains: PUT, GET, DELETE and POST.
* feature: used json schema to check if the request configuration is valid.
2019-06-13 12:01:36 +08:00
YuanSheng Wang
17fecb3e53
feature: supported to cache non-table Lua object by lrucache library. (#80)
* feature: supported to cache non-table Lua object by `lrucache` library.
* bug: used a table to avoid one bug of `rapidjson`, fix it later.
2019-06-12 10:34:45 +08:00
Yuansheng
c86e778925 test: checked the error log if it contains error level log. 2019-06-12 06:13:39 +08:00
YuanSheng Wang
463e5601b3
optimize: used lru way to cache the validator object for schema. (#77)
* optimize: used `lru` way to cache the validator object for schema.

Fix #76.
2019-06-11 23:47:00 +08:00
YuanSheng Wang
0bac20f4d4
feature: implemented plugin limit-conn. (#75)
* feature: implemented plugin `limit-conn`.
* luarocks: updated the library `lua-resty-ngxvar` version to 0.3.
2019-06-11 17:31:40 +08:00
YuanSheng Wang
45e28199a9
feature: supported consistent hash for dynamic load balancing. (#69)
* feature: supported consistent hash for dynamic load balancing.
2019-06-11 12:20:57 +08:00
Yuansheng
a66c393536 bugfix: supported for the json library encoding cdata type. 2019-06-11 11:16:03 +08:00
WenMing
1737fb702e
feature: added rapidjson for schema validation. (#67) 2019-06-10 23:41:43 +08:00
YuanSheng Wang
10e63c637e
optimize: returns a fetch function when creating a new lrucache object, which can be used directly to get cached data. (#66)
* optimize: returns a fetch function when creating a new `lrucache`
object, which can be used directly to get cached data.
* test: added test case for `core.lrucache` library.
2019-06-10 20:40:39 +08:00
Yuansheng
0ab3e53cb9 test: added test case about core.id and core.utils library. 2019-06-10 17:25:49 +08:00
Yuansheng
884120f180 test: added test case for core/timer library. 2019-06-10 17:25:49 +08:00
Yuansheng
c9d0879194 test: checked the error log.
plugin prometheus: renamed the share dict name to `prometheus-metrics`.
2019-06-10 17:25:49 +08:00
Yuansheng
ea5353a3e3 test: added tests for core/json library. 2019-06-10 17:25:49 +08:00
Yuansheng Wang
b62b22a5ce bugfix: removed rewrite phase. 2019-06-06 10:49:29 +08:00
Yuansheng Wang
20e2b486bd test: updated the test case. 2019-05-28 09:51:38 +08:00
Yuansheng Wang
0d64f7d1c3 change: used response which is a fully name. 2019-05-23 14:42:42 +08:00
Yuansheng Wang
ebd046dbdf change: fetched all of the config from apisix.core.config. 2019-05-22 09:19:25 +08:00
Yuansheng Wang
2a3b1c87e9 change: renamed plugin file, made it simple. 2019-05-21 23:24:19 +08:00
YuanSheng Wang
95712403c0
feature: supported balancer phase. (#16) 2019-05-17 15:58:15 +08:00
Yuansheng Wang
d605a01b2a change: rename the project to apisix.
Fixed #14.
2019-05-13 14:31:26 +08:00
YuanSheng Wang
e7aeab2e9f
feature: fetched the routes from etcd and update the routes automatic. (#11) 2019-05-11 10:14:46 +08:00
Yuansheng Wang
f24508655b change: removed option prefix of etcd config. 2019-05-08 14:09:46 +08:00
Yuansheng Wang
5f76d73a9c change: make apimeta as a global variable and it include most libraries. 2019-05-08 11:30:16 +08:00
YuanSheng Wang
2927a60c89
feature: supported to load the plugin and passed a simple example. (#7) 2019-05-08 10:38:45 +08:00
Yuansheng Wang
618201c7ce change: renamed the plugin's base file to base_plugin. 2019-05-07 16:06:01 +08:00
Yuansheng Wang
0b302a2d47 change: used '###-##-###' as the name style of plugin. 2019-05-07 15:58:44 +08:00