罗泽轩
1db42368c0
fix(basic-auth): split schema to adapt different occasions ( #2331 )
2020-10-04 14:39:20 +08:00
YuanSheng Wang
c5dcced1cf
bugfix: when service works with upstream that contains a domain name, the merged configuration should not always changing. ( #2322 )
2020-10-04 13:12:28 +08:00
YuanSheng Wang
05840ca9e2
test: wait for more time and check the error log, old way is unstable. ( #2341 )
2020-09-30 17:05:46 +08:00
Shuyang Wu
e0ee327c08
bugfix: use etcd:watchcancel to reduce connections in etcdv3 ( #2299 )
2020-09-28 18:05:47 +08:00
Joey
ebe4f6620a
feat: Add labels for upstream object ( #2279 )
2020-09-28 11:20:09 +08:00
nic-chen
c375bd0cac
feat: replace timestamp with date and time in GMT format in plugin hmac-auth
( #2301 )
2020-09-28 09:10:26 +08:00
Firstsawyou
b1770d4ca7
feat: support to fetch route_id
and service_id
via ctx.var
( #2326 )
2020-09-27 22:29:59 +08:00
罗泽轩
70bd9802c5
bugfix: avoid overwriting Vary header in cors plugin ( #2271 )
2020-09-27 16:43:09 +08:00
YuanSheng Wang
65db7a4837
bugfix(lrucache): store the original value in a new table, and use ver
to store the cached version. ( #2321 )
2020-09-27 11:38:05 +08:00
guyang
ce6dc643dd
bugfix: return right response code when http_to_https
enabled in redirect plugin. ( #2311 )
2020-09-27 09:35:28 +08:00
Wen Ming
13b0968340
Revert "feat(http-logger): support for specified the log formats via admin API ( #2294 )" ( #2307 )
...
This reverts commit 89f89f3004
.
2020-09-24 23:50:22 +08:00
YuanSheng Wang
89f89f3004
feat(http-logger): support for specified the log formats via admin API ( #2294 )
2020-09-24 20:45:50 +08:00
YuanSheng Wang
3f9685f823
feat(http-logger): support to concat multiple log with separator. ( #2286 )
2020-09-24 10:58:44 +08:00
Vinci Xu
7beafd345a
fix: increase wait to avoid fail ( #2290 )
2020-09-23 22:48:34 +08:00
nic-chen
1b24f36639
feat: support storing metadata for plugins ( #2268 )
...
fix #2263
2020-09-23 21:02:56 +08:00
Alex Zhang
36d3b82ec4
bugfix: supported the encryption/decryption for multi priv keys ( #2179 )
...
Co-authored-by: Wen Ming <moonbingbing@gmail.com>
2020-09-22 20:37:14 +08:00
Firstsawyou
a651a29e20
feature: allow empty service
object, it does not contain any upstream
and plugin
( #2259 )
2020-09-21 16:52:18 +08:00
罗泽轩
8493a607ce
test: also lint the test helpers ( #2252 )
...
Close #2215
2020-09-19 19:07:39 +08:00
Firstsawyou
e94a5b3f58
feature: consumer
provides access to a collection of service
( #2241 )
...
* test: add more test cases.
Co-authored-by: Yuansheng Wang <membphis@gmail.com>
2020-09-19 18:21:21 +08:00
Vinci Xu
89f4389ba7
fix[key-auth]: skip consumer when config has no key ( #2120 )
2020-09-18 21:49:01 +08:00
nic-chen
0a4bc95e3d
feat: hmac-auth
add signed headers to calculate signature ( #2239 )
...
Co-authored-by: YuanSheng Wang <membphis@gmail.com>
2020-09-18 20:25:41 +08:00
YuanSheng Wang
03d818e175
test: before creating and deleting routes in batches, clear all routes first ( #2253 )
...
* test: set larger timeout.
2020-09-18 18:43:02 +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
Zhang Qiang
d05071868d
fix: return ok in kafka-logger ( #2222 )
2020-09-17 15:17:51 +08:00
YuanSheng Wang
68b1f9cc57
bugfix: clear all cached object when got delete
action, and removing ( #2168 )
...
stale boolean data in table `self.values` with a safer way.
2020-09-17 09:30:44 +08:00
nic-chen
84ce7ba781
feat: add AK/SK(HMAC) auth plugin. ( #2192 )
2020-09-16 14:27:56 +08:00
Shuyang Wu
4722198548
feature: support etcd v3 by mocking v2 API ( #2036 )
2020-09-16 10:19:04 +08:00
YuanSheng Wang
12a0b13145
bugfix: use the route's has_domain
if it contains any upstream object. ( #2211 )
2020-09-15 12:12:09 +08:00
nic-chen
087f87a7e4
bugfix: grpc-transcode plugin converts http/json parameters abnormally ( #2139 )
...
* fix bug
* optimiz
* update grpc_server_example
* add test cases
* fix: test case
* fix: test case
* return val directly
* fix: test case respond body compare text
* fix test case error
Co-authored-by: Wen Ming <moonbingbing@gmail.com>
2020-09-10 18:02:16 +08:00
罗泽轩
37817e4198
chore: add string utility for simplicity and correctness ( #2181 )
...
* chore: add string utility for simplicity and correctness
* localize error
* correct the misuse string.find
Co-authored-by: YuanSheng Wang <membphis@gmail.com>
2020-09-10 16:49:20 +08:00
Alex Zhang
1556cd0d7e
improve: cache parsed certs and pkeys to LRU cache ( #2163 )
2020-09-10 15:35:55 +08:00
maosy
47d39e7b0e
bugfix: serverless plugin not work in header_filter phase ( #2148 )
2020-09-09 16:12:32 +08:00
gy
a8621fb5a1
bugfix: updated the value of remaining when count
changes in limit-count plugin. ( #2121 )
2020-09-06 21:52:13 +08:00
gy
d4216831e3
fix: log-rotate.t is unstable ( #2164 )
...
fix #2138
2020-09-06 12:10:42 +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
redynasc
98bb5933d6
feature: implement ewma
balancer for upstream node ( #2001 )
...
ewma is a different balancing implementation that will generate a weight for every backend IP based on the last server response time, basically it tries to dispatch more requests to the backends that reply faster, supposing that they are less loaded.
fix #1996
2020-08-29 23:14:16 +08:00
Vinci Xu
a3f865aa4b
fix: wait time is too short it will easy fail in some bad hardware environment ( #2127 )
2020-08-27 16:47:09 +08:00
YuanSheng Wang
9070a4fa95
feature: implemented plugin log-rotate
, rotate log by interval time. ( #2097 )
2020-08-26 16:40:36 +08:00
nic-chen
4f83f09eeb
fix: return response code and msg instead of exit directly in plugins. ( #2115 )
2020-08-25 09:56:45 +08:00
YuanSheng Wang
1aefe915f1
change: update plugin's schema ip-restriction with draft7
way ( #2091 )
2020-08-24 09:27:49 +08:00
Alex Zhang
2886b2169b
feature: support multiple certificates(RSA and ECC) for single domain ( #2089 )
2020-08-24 09:23:06 +08:00
YuanSheng Wang
415f9221e2
change: use draft7 of JSON Schema for limit count pulgin ( #2102 )
2020-08-24 09:17:31 +08:00
YuanSheng Wang
d974c1871a
change: use draft7 style of JSON Schema. ( #2100 )
...
fix #2083 .
2020-08-22 21:43:21 +08:00
YuanSheng Wang
cf882bda1e
feature: divide config.yaml into two files config-custom.yaml & confi… ( #2023 )
...
* feature: divide config.yaml into two files config-custom.yaml & config-default.yaml .
fix #1923
2020-08-18 20:18:55 +08:00
YuanSheng Wang
c2a7359b27
update radixtree to version 2.2 . ( #2061 )
...
fix #2058
* fixed test
2020-08-16 16:32:29 +08:00
nic-chen
7525f1fcc9
feat(prometheus): add prometheus metrics node_info
(hostname) ( #2063 )
...
* using a new metric `node_info` to store the hostname
2020-08-16 09:59:55 +08:00
Swayam Raina
6e0da454d1
feature: add apisix-version info to headers in APISIX core ( #1961 )
...
related #1877
2020-08-15 07:24:33 +08:00
Nirojan Selvanathan
240942e941
feature: implemented request-id
plugin to uniquely track requests in APISIX ( #2026 )
...
fix #2022
2020-08-12 23:09:39 +08:00
罗泽轩
149a66ad40
feat: Vary
needs to be used when Access-Control-Allow-Origin is not '*' ( #2046 )
...
See https://fetch.spec.whatwg.org/#cors-protocol-and-http-caches .
2020-08-12 09:12:58 +08:00