Commit Graph

52 Commits

Author SHA1 Message Date
罗泽轩
1e882e378d
feat: delete useless data in the response (#2993)
Fix #2759

Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2020-12-09 08:53:38 +08:00
罗泽轩
bbbd10e1b3
feat: validate the operator in vars (#2911)
Fix #2878
2020-12-02 15:37:07 +08:00
罗泽轩
ddfeb5de1d
fix: reject "" for route's remote_addrs (#2907)
This change imroves the IP schema validation.
2020-12-01 15:44:50 +08:00
罗泽轩
da4e12e0f7
feat: generate create/update_time automatically (#2740) 2020-11-15 17:20:51 +08:00
nic-chen
a92331c27a
feature: add managed fields in json schema for resources, such as create_time and update_time (#2444)
* feature: add managed fields in jsonschema for resources, such as create_time and update_time
2020-10-17 18:48:02 +08:00
Joey
9d0d351226
Add lables for Route/Service/Consumer/SSL (#2345)
Signed-off-by: imjoey <majunjiev@gmail.com>
2020-10-09 14:05:14 +08:00
Alex Zhang
dd6ee5e99f
improve: use optimistic locking to avoid concurrency problem in admin PATCH APIs. (#2216)
There is a potential concurrency problem in all admin PATCH APIs when
two patch requests come in simultaneously, in such case, the patched
result of the first applied request will be overridden, also the
probability is tidy, but from the perspective of software's robust,
that's not what we wanna to see.

In this commit, we use the optimistic locking to avoid this problem, for
the example aforementioned, the second PATCH request will failure, and
it's up to the user to retry this PATCH request again.

The optimistic locking mechanism in ETCD v3 APIs is showed by it's
transcation mechanism.

Signed-off-by: tokers <zchao1995@gmail.com>
2020-09-18 17:20:55 +08:00
YuanSheng Wang
4f900390f9
bugfix: independently check the "disabled" field to avoid schema ve… (#2099)
* bugfix: independently check the "disabled" field to avoid `schema` verification
  with other parameters.
2020-09-17 22:31:02 +08:00
Shuyang Wu
4722198548
feature: support etcd v3 by mocking v2 API (#2036) 2020-09-16 10:19:04 +08:00
nic-chen
502310bef6
feat: support different modes to pass host to upstream (#2132)
* test: using `httpbin.org` for test cases.
* doc: add doc
* remove golang apt repository and runtime in travis.
* download proto file
Co-authored-by: Yuansheng <membphis@gmail.com>
2020-08-30 22:43:28 +08:00
nic-chen
65df727af4
feat: script distribute and run (#1982)
Supporting distribution and execution scripts, we can implement many new features, 
such as plug-in orchestration.
2020-08-05 14:11:22 +08:00
YuanSheng Wang
e1c6d371a8
doc: update main picture of APISIX. (#1964)
* test case: formatted by `reindex`.
2020-08-02 09:35:37 +08:00
nic-chen
29b15892b7
feat: support both standard PATCH and sub path PATCH for admin api (#1930)
fix #1823
2020-07-31 09:21:08 +08:00
YuanSheng Wang
20207c8108
bugfix: read the request body from the temporary file if it was cached. (#1863) 2020-07-29 19:24:27 +08:00
YuanSheng Wang
2ccf020027
test: format by tool reindex. (#1775) 2020-07-02 22:04:24 +08:00
Shenal Silva
492fa71cbc
bugfix: added content-type for admin API responses (#1746) 2020-06-24 13:57:10 +08:00
YuanSheng Wang
f1e66ad1a3
bugfix: id can be string object, which contains ^[a-zA-Z0-9-_]+$. (#1739)
Fix #1654
2020-06-21 16:28:11 +08:00
nic-chen
b59a519197
feat: support resource name for route, service and upstream object. (#1655) 2020-06-09 08:26:33 +08:00
nic-chen
ecd684b3a0
feat(admin api): enhance PATCH method, allow to update partial data. (#1609) 2020-06-02 11:28:45 +08:00
nic-chen
a53b4707fb
feat: support saving k8s deployment info to upstream (#1502)
* feat: support save k8s deployment info to upstream
2020-04-27 10:47:17 +08:00
YuanSheng Wang
2870b79833
bugfix: missing clear table before to reuse table. (#1134)
* test: avoid to use regex for matching output.
2020-02-18 21:46:56 +08:00
YuanSheng Wang
ea7e783fca test: style, reformatted by reindex tools. (#1045) 2020-01-14 09:51:05 +08:00
Changwei Hu
9c9be959d3 feature: chash key support more flexible ways (#1022)
upstream add hash_on, chash key support more flexible ways
 routes and services admin api add upstream_conf check
2020-01-10 15:17:17 +08:00
YuanSheng Wang
f22f494362 optimize: updated the error message after updated new jsonschema. (#1011) 2020-01-02 21:56:42 +08:00
YuanSheng Wang
c74e6c2d3a feature: supported priority for route. (#998) 2019-12-29 17:11:38 +08:00
YuanSheng Wang
c7f9fdf9d7
feature: support to specify TTL for route。 (#807)
Fix #443.
2019-12-06 11:13:24 +08:00
Lien
b91d2d36c0 Fix: allow set multiple URI in one route config (#797)
* route support uris

* fix uris in router with test cases

* remove line has trailing whitespace

* remove line has trailing whitespace

* fix test case

* use new test case for  multiple uris
2019-11-04 14:00:52 +08:00
YuanSheng Wang
ad376f83f8
change: updated resty-radixtree to v1.5. (#768)
* feature: supported userdefine lua function in router `radixtree_uri`.
* feature: supported userdefine lua function in router `radixtree_host_uri`.
2019-11-01 09:49:09 +08:00
WenMing
12a2b01b71
license: add ASF header. (#743) 2019-10-31 09:27:28 +08:00
YuanSheng Wang
d06fbfa13c change: used lua-resty-jsonschema instead of lua-rapidjson. (#703) 2019-10-23 12:58:10 +08:00
YuanSheng Wang
3f700c5dc1
doc(admin api): route. (#593)
feature: supported new fields hosts, remote_addrs and vars for router.

fix: #592
2019-09-26 17:47:08 +08:00
Carlos Hwang
c0a1363e6e feature: support http method 'connect' & 'trace' (#530) 2019-09-17 16:57:51 +08:00
YuanSheng Wang
4aaaf3ee5a
feature: support dynamic stream(TCP/UDP) proxy in apisix. (#501)
* feature: support stream in apisix.
* doc: added new feature in README.
* CLI and added more doc.
2019-09-12 13:27:18 +08:00
Yuansheng
4bb40df857 change(test): name style. 2019-09-10 10:07:29 +08:00
Yuansheng
77e5b50591 feature: supported to patch whole route content. 2019-08-05 00:04:42 +08:00
Yuansheng
19e09b539f feature: supported PATCH method for admin routes API. 2019-08-05 00:04:42 +08:00
WenMing
e6bc0040c1
feature: added desc for upstream and service in schema. (#289) 2019-07-22 10:42:02 +08:00
YuanSheng Wang
56a8b152b7
schema: added more valid method. (#287)
* schema: added more valid method.
2019-07-21 22:39:07 +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 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
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
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
1921ea8ba5 feature: use schema check for service configuration.
Fix #111.
2019-06-17 09:08:16 +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 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