YuanSheng Wang
5e119c4828
luarocks: added new dependency lua-resty-healthcheck
. ( #249 )
...
* luarocks: added new dependencies `lua-resty-healthcheck` and `lua-resty-worker-event`.
* feature(balancer): fetched health node from upstream nodes in balancer phase when enabled
healthcheck.
2019-07-17 23:52:15 +08:00
YuanSheng Wang
049014596b
test(APISIX.pm): added new cpath
. change: updated nginx.conf. ( #247 )
...
* test(APISIX.pm): added new `cpath`.
* change: updated nginx.conf.
2019-07-15 08:24:35 +08:00
YuanSheng Wang
7cf243cdf9
change: code style + added local cache. ( #241 )
...
* change: code style + added local cache.
* luacov: added new path `lua/apisix/http/*`.
2019-07-12 19:08:59 +08:00
WenMing
9fa04a923c
feature: supported real_ip configure in nginx.conf and added functions to get ip and remote ip. ( #236 )
...
* feature: supported real_ip configure in nginx.conf and added functions to get ip and remote ip.
* fixed code style.
2019-07-12 11:25:17 +08:00
YuanSheng Wang
ccd179a936
travis: used different compiler to run test. ( #235 )
...
* travis: specified language.
* test: added test cases for `core.table`.
2019-07-12 11:11:24 +08:00
Yuansheng
b88de3975a
test: added more test case for local config.
2019-07-12 10:40:45 +08:00
Yuansheng
9513e3d37c
change: moved service
and ssl
source file to http
folder.
2019-07-12 10:40:45 +08:00
WenMing
f62a2be238
feature: added luacov and coveralls. ( #192 )
2019-07-03 15:44:24 +08:00
YuanSheng Wang
a626bde242
bugfix plugin: used config's version as a part of key
. ( #190 )
2019-07-03 11:36:14 +08:00
YuanSheng Wang
85f420977c
change: added prefix http_
for http request. ( #179 )
2019-07-01 17:24:38 +08:00
WenMing
df7afe4f95
feature: added admin API to get plugins' list. ( #176 )
2019-07-01 13:29:21 +08:00
WenMing
92f019c7a1
feature: added admin API for plugins' schema. ( #174 )
2019-06-30 22:35:39 +08:00
Yuansheng
9309abaed7
feature: support to fetch the ssl schema.
2019-06-24 18:49:30 -04:00
Yuansheng
1bb135af60
feature: supported for using wildcard to match the SNI of client https
...
request.
2019-06-24 18:49:30 -04:00
Yuansheng
7dbcea8571
feature: supported to manage ssl item by admin API and HTTPS client request.
2019-06-24 18:49:30 -04:00
WenMing
e43cb2e195
bugfix: fixed test cases for limit conn. ( #154 )
2019-06-24 17:02:53 +08:00
WenMing
2480171c8c
test: only check part of schema. ( #153 )
2019-06-24 16:07:24 +08:00
YuanSheng Wang
72e0fe2393
feature: supported to collect nginx status and pushed it to etcd. ( #149 )
...
* feature: supported to collect nginx status and pushed it to etcd.
* the return value of the exported api is the same as the other methods in the plugin.
2019-06-22 08:24:02 +08:00
WenMing
c0c5c08644
feature: added admin API to get schema for FE. ( #148 )
...
* feature: added admin API to get schema for FE.
* added test cases.
* bugfix
2019-06-21 21:25:24 +08:00
YuanSheng Wang
ca1f5e7b0d
feature: added remote_addr
attribute to route. ( #142 )
...
* feature: added `remote_addr` attribute to route.
2019-06-21 06:39:47 +08:00
Yuansheng
678e4228a0
feature: supported for using wildcard pattern to match host.
2019-06-20 10:00:07 -04:00
Yuansheng
0f5a80441d
test: supported to run test case if the dependency files are installed
...
to `deps` folder.
2019-06-20 09:18:11 -04:00
WenMing
9ee0d2c173
test: added test cases for limit req. ( #136 )
2019-06-19 23:52:59 +08:00
WenMing
6af8957f87
feature: added admin api for consumer. ( #135 )
2019-06-19 19:14:58 +08:00
YuanSheng Wang
36338bc95b
feature: merged the configuration between route and service. ( #133 )
...
* feature: merged the configuration between route and service.
2019-06-19 15:51:28 +08:00
YuanSheng Wang
2647bdddcb
test: removed useless option. ( #132 )
2019-06-19 15:48:16 +08:00
WenMing
a76f690abb
test: added test cases for limit conn and limit count. ( #131 )
2019-06-19 13:06:03 +08:00
YuanSheng Wang
912e8b106d
feature: supported to match host of client request. ( #130 )
2019-06-19 12:41:38 +08:00
Yuansheng
c3f3ddb4d4
bugfix: checked if the service or upstream were referenced when user
...
submit a delete operation.
2019-06-18 17:06:49 +08:00
YuanSheng Wang
43cbd138e7
change: merged the similar code, and not allowed to specify id when use POST method. ( #128 )
...
* change: merged the similar code, and not allowed to specify id when use
POST method.
2019-06-18 16:15:55 +08:00
YuanSheng Wang
61f5f3af2a
bugfix: supported to LRU table to cache the JSON schema validator. ( #126 )
2019-06-18 11:23:18 +08:00
YuanSheng Wang
c02d44f8e7
feature: added test cases about round-robin load balance algorithms. ( #123 )
...
* feature: added test cases about round-robin load balance algorithms.
* feature: added test cases about consistent hash algorithms.
2019-06-17 23:17:41 +08:00
WenMing
7b54aaac16
test: added test cases for key-auth using admin API. ( #121 )
2019-06-17 22:05:02 +08:00
YuanSheng Wang
371be03810
test: added test cases for prometheus plugin. ( #122 )
...
* test: added test cases for prometheus plugin.
2019-06-17 21:08:17 +08:00
WenMing
e1d0bb08ce
bugfix: got route id from url if not found in post body. ( #120 )
2019-06-17 18:00:56 +08:00
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
YuanSheng Wang
aa45402ba5
change: added Makefile to manage apimeta server. ( #5 )
...
* change: added Makefile to manage apimeta server.
2019-05-06 18:17:29 +08:00
YuanSheng Wang
b7694e0701
feature: mini example to load plugin. ( #4 )
...
* feature: mini example to load plugin.
2019-05-06 16:02:28 +08:00
YuanSheng Wang
ee9f074864
change: renamed the basic library to 'core'. ( #3 )
2019-05-06 14:40:10 +08:00
YuanSheng Wang
1703fc62ae
change: added an example of plugin. ( #2 )
...
* change: added an example of plugin.
2019-05-06 14:36:18 +08:00
YuanSheng Wang
a18afea659
change: added doc of how to load plugin. ( #1 )
2019-05-06 10:14:39 +08:00
Yuansheng Wang
0ba6830743
feature: supported to load config from YAML config.
2019-04-11 16:53:21 +08:00
Yuansheng Wang
4f2238a40d
test: added basic test case.
2019-04-11 15:00:59 +08:00