Skip to content

Commit d87f54f

Browse files
nic-chenAyeshmantha PereraShiningRushsshniromembphis
authored
sync (#11)
* feature: implemented plugin `sys logger`. (apache#1414) * bugfix(CORS): using rewrite phase and add lru cache for multiple origin (apache#1531) * change: updated the dashboard submodule to latest version. (apache#1540) * doc: alter logger plugins documentations. (apache#1541) * bugfix: Adding function to remove stale objects from kafka logger (apache#1526) * bugfix: removed stale objects from tcp logger (apache#1543) * bugfix: removing stale objects from udp logger (apache#1544) * optimize: use buffer for plugin `syslog`. (apache#1551) * plugin: add HTTP logger for APISIX (apache#1396) * bugfix: got 500 error when using post method in grpc-transcode plugin(apache#1566) * bugfix: removed stale object in sys log. (apache#1557) * feature(prometheus): support to collect metric `overhead` (apache#1576) Fix apache#1534 . * feature: support new field `exptime` for SSL object. (apache#1575) fix apache#1571. * doc: Added FAQ about how to reload your own plugin (apache#1568) * doc: repair the white paper's url of README (apache#1582) * chore: fix function name typo in ip-restriction (apache#1586) * doc: added http logger Chinese docs (apache#1581) * feature: support discovery center (apache#1440) * doc:add chinese version for install doc (apache#1590) * bugfix: incorrect variable name `hostCount` (apache#1585) * doc: update kakfa logger plugin's cn version (apache#1594) * doc: fix the doc style for *_logger.md (apache#1605) * bugfix: raise error when none of the configured etcd can be connected (apache#1608) Close apache#1561. * test: updated style. (apache#1606) * release: released 1.3 version. (apache#1558) * bugfix(CLI): fixed garbled Chinese response in browser. (apache#1598) fix apache#1559 * change: updated prometheus to version 1.1 . (apache#1607) * doc: add asf.yaml. (apache#1612) * fix some doc style for response-rewrite* and health-check.md (apache#1611) * makefile: add default check for install command (apache#1591) * test cases: add doc and test cases for how to redirect http to https. (apache#1595) * add FAQ about redirect http To https * add test cases for serverless plugin and redirect plugin Co-authored-by: rhubard <[email protected]> * feature: add skywalking plugin. (apache#1241) * doc: removed external links and docs. (apache#1619) * doc: add coc file (apache#1589) * bugfix: change the version of skywalking to 1.0-0 (apache#1624) * bugfix(prometheus): the `overhead` should use milliseconds. apache#1615 (apache#1616) Fix apache#1615 * feature: add option to include request body in log util (apache#1545) * bugfix: fix typo of `instance_id` in skywalking plugin. (apache#1629) * doc: added the link to discovery.md (apache#1631) * change(ASF): add notifications to mailing list. (apache#1635) * change(doc): style for HttpResponse section (apache#1634) * doc(limit-count): fixed document description does not match source code. (apache#1628) close apache#1627 * bugfix(batch-requests): support cookie (apache#1599) * feat(admin api): enhance `PATCH` method, allow to update partial data. (apache#1609) * test: added test tests for skywalking. (apache#1621) * doc: add skywalking plugin instructions (apache#1636) * feature: support http_to_https in redirect plugin. (apache#1642) * test: add test case for apache#1625 to test the filed of overhead (apache#1645) * CLI: compatibility of benchmark script and apisix reload command on OSX (apache#1650) * feature: support to enable HTTPS for admin API (apache#1648) * [log] Optimize the buffer size and flush time (apache#1570) * yousali:<log>Optimize the buffer size and flush time 1. buffer=4096 is better for Writes of more than PIPE_BUF bytes may be nonatomic 2. flush=1. Since the log buffer is lowered, the flush time should also be lowered. * yousali:<fix> hi, I also made a test. ``` 4096 Requests/sec: 16079.75 8192 Requests/sec: 16389.52 16384 Requests/sec: 16395.30 32768 Requests/sec: 16459.71 ``` I think a log buffer size of 8192 or 16384 would be appropriate. On the other hand, the refresh time of 3 seconds is still relatively long, and 1 or 3 seconds doesn't particularly affect QPS. So I also agree with `buffer=16384 flush=1; ` * doc: add 'X-API-KEY' parameter for each interface of Admin API. (apache#1661) * bugfix: wildcard certificates cannot match multi-level subdomains in … (apache#810) * plugin: add consumer-restriction (apache#1437) * feat: support resource name for route, service and upstream object. (apache#1655) * [bugfix(CLI)]: check whether the user has enabled etcd v2 protocol. (apache#1665) * bugfix(CLI): generate the 'worker_cpu_affinity' config for Linux OS (apache#1658) Fix apache#1657 * test case: formatted by `reindex`. (apache#1651) * change: disable reuseport in development mode, it more easy to manage worker process. (apache#1175) * test: add test case for route with `filter_func`. (apache#1683) * doc: rename grpc-transcoding-cn.md to grpc-transcode-cn.md (apache#1694) * fix bug: Execute command 'make run' multiple times, will start multiple processes (apache#1692) Fix apache#1690 * doc(FAQ): added example for gray release. (apache#1687) * change: set default reject code for some plugins (apache#1696) plugin list: limit-count limit-conn limit-req * feature: ssl enhance (apache#1678) support enable or disable ssl by patch method support encrypted storage of the SSL private key in etcd support multi snis Fix apache#1668 * feature: support body filter plugin `echo`. (apache#1632) * doc: Update README_CN.md (apache#1705) * change: use `iterate` to scan items in etcd. (apache#1717) related issue: apache#1685 * doc: added doc of key for limit-* plugins. (apache#1714) * feature: support authorization Plugin for Keycloak Identity Server (apache#1701) * feat[batch-request]: cp all header to every request (apache#1697) * doc: updated main picture. (apache#1719) * doc: update echo-cn.md (apache#1726) * update `resty-etcd` to version 1.0 . (apache#1725) * doc: health-check-cn.md (apache#1723) * doc: add Chinese translation of authz-keycloak plugin (apache#1729) * doc: Refactoring docs to support docsify (apache#1724) * change: update `resty-radixtree` to version 1.9 . (apache#1730) * feature: support the use of independent files to implement the load a… (apache#1732) * feature: support the use of independent files to implement the load algorithm, which is convenient for expanding different algorithms in the future. * feature(echo): support header filter and access phases. (apache#1708) * bugfix: id can be string object, which contains `^[a-zA-Z0-9-_]+$`. (apache#1739) Fix apache#1654 * test: add test cases about the string id in `service` apache#1659 (apache#1750) * update `lua-resty-raditree` to ver 2.0 . (apache#1748) * refactory: collect `upstream` logic and put them in a single file. (apache#1734) feature: support dynamic upstream in plugin. here is a mini example in `access` phase of plugin: ```lua local up_conf = { type = "roundrobin", nodes = { {host = conf.upstream.ip, port = conf.upstream.port, weight = 1}, } } local ok, err = upstream.check_schema(up_conf) if not ok then return 500, err end local matched_route = ctx.matched_route upstream.set(ctx, up_conf.type .. "#route_" .. matched_route.value.id, ctx.conf_version, up_conf, matched_route) return ``` * feature: implemented plugin `uri-blocklist` . (apache#1727) first step: apache#1617 * doc: update `http-logger` plugins Chinese docs. (apache#1755) * doc: update admin-api docs (apache#1753) * doc: add oauth plugins Chinese docs. (apache#1754) * bugfix: fixed configures of nginx.conf for security reasons (apache#1759) removed working_directory and removed TLSv1 TLSv1.1 from ssl_protocols * doc: update Chinese README.md (apache#1758) * test: use longer ttl, avoid the cached item expired. (apache#1760) * doc: updated k8s doc (apache#1757) * bugfix: Fix for remote open ID connect introspection (apache#1743) fix apache#1741 * test: added test cases. (apache#1752) * bugfix: added `content-type` for admin API responses (apache#1746) * feature: support etcd auth (apache#1769) Fix apache#1713 , apache#1770 * plugin(heartbeat): use `info` log level when failed to report heartbeat. (apache#1771) * optimize: Use lru to avoid resolving IP addresses repeatedly . (apache#1772) * optimize: Use lru to avoid resolving IP addresses repeatedly . Cached the global rules to `ctx` . * optimzie: used a longer time interval for etcd and flush access log. * optimize: return upstream node directly if the count is 1 . * optimize: avoid to cache useless variable. * doc: update Chinese README.md (apache#1763) * doc: remove router `r3` . (apache#1764) * release: released 1.4-0 version (apache#1742) * bugfix(config etcd): when we reset the fetched data, `sync_times` also needs to be reset. (apache#1785) * change: remove authentication type for cors plugin (apache#1788) fix apache#1787 * rocks: fixed wrong source of 1.4. (apache#1783) * change: 'get_plugin_list' API sorts the return list base on priority (apache#1779) * test: format by tool `reindex`. (apache#1775) * bugfix: missing argument `premature` because it was called by ngx.timer . (apache#1796) * bugfix: return `404 Not Found` when the dashboard folder is empty. (apache#1799) close apache#1794 * doc: add guides for installing dependencies on fedora (apache#1800) * doc: fixed some punctuation error in the document sample shell (apache#1803) Co-authored-by: Ayeshmantha Perera <[email protected]> Co-authored-by: Vinci Xu <[email protected]> Co-authored-by: Nirojan Selvanathan <[email protected]> Co-authored-by: YuanSheng Wang <[email protected]> Co-authored-by: Yousa <[email protected]> Co-authored-by: hiproz <[email protected]> Co-authored-by: 罗泽轩 <[email protected]> Co-authored-by: Scaat Feng <[email protected]> Co-authored-by: qiujiayu <[email protected]> Co-authored-by: dengliming <[email protected]> Co-authored-by: dabue <[email protected]> Co-authored-by: Wen Ming <[email protected]> Co-authored-by: xxm404 <[email protected]> Co-authored-by: rhubard <[email protected]> Co-authored-by: Gerrard-YNWA <[email protected]> Co-authored-by: 月夜枫 <[email protected]> Co-authored-by: 仇柯人 <[email protected]> Co-authored-by: stone4774 <[email protected]> Co-authored-by: 琚致远 <[email protected]> Co-authored-by: Kev.Hu <[email protected]> Co-authored-by: QuakeWang <[email protected]> Co-authored-by: agile6v <[email protected]> Co-authored-by: Corey.Wang <[email protected]> Co-authored-by: hellmage <[email protected]> Co-authored-by: Eric Shi <[email protected]> Co-authored-by: Shenal Silva <[email protected]> Co-authored-by: jackstraw <[email protected]> Co-authored-by: morrme <[email protected]> Co-authored-by: ko han <[email protected]> Co-authored-by: Joey <[email protected]> Co-authored-by: YuanYingdong <[email protected]>
1 parent 5a871aa commit d87f54f

File tree

237 files changed

+14521
-1723
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

237 files changed

+14521
-1723
lines changed

.asf.yaml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one or more
3+
# contributor license agreements. See the NOTICE file distributed with
4+
# this work for additional information regarding copyright ownership.
5+
# The ASF licenses this file to You under the Apache License, Version 2.0
6+
# (the "License"); you may not use this file except in compliance with
7+
# the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
#
17+
18+
github:
19+
description: The Cloud-Native API Gateway
20+
homepage: https://apisix.apache.org/
21+
labels:
22+
- api-gateway
23+
- cloud-native
24+
- nginx
25+
- lua
26+
- luajit
27+
- apigateway
28+
- microservices
29+
- api
30+
- loadbalancing
31+
- reverse-proxy
32+
- api-management
33+
- apisix
34+
- serverless
35+
- iot
36+
- devops
37+
- kubernetes
38+
- docker
39+
40+
enabled_merge_buttons:
41+
squash: true
42+
merge: false
43+
rebase: false
44+
45+
notifications:
46+
47+
48+
pullrequests: [email protected]

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
dist: xenial
1+
dist: bionic
22
sudo: required
33

44
matrix:

.travis/apisix_cli_test.sh

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323

2424
set -ex
2525

26+
git checkout conf/config.yaml
27+
2628
# check whether the 'reuseport' is in nginx.conf .
2729
make init
2830

@@ -72,3 +74,78 @@ done
7274

7375
sed -i '/dns_resolver:/,+4s/^#//' conf/config.yaml
7476
echo "passed: system nameserver imported"
77+
78+
# enable enable_dev_mode
79+
sed -i 's/enable_dev_mode: false/enable_dev_mode: true/g' conf/config.yaml
80+
81+
make init
82+
83+
count=`grep -c "worker_processes 1;" conf/nginx.conf`
84+
if [ $count -ne 1 ]; then
85+
echo "failed: worker_processes is not 1 when enable enable_dev_mode"
86+
exit 1
87+
fi
88+
89+
count=`grep -c "listen 9080.*reuseport" conf/nginx.conf || true`
90+
if [ $count -ne 0 ]; then
91+
echo "failed: reuseport should be disabled when enable enable_dev_mode"
92+
exit 1
93+
fi
94+
95+
git checkout conf/config.yaml
96+
97+
# check whether the 'worker_cpu_affinity' is in nginx.conf .
98+
99+
make init
100+
101+
grep -E "worker_cpu_affinity" conf/nginx.conf > /dev/null
102+
if [ ! $? -eq 0 ]; then
103+
echo "failed: nginx.conf file is missing worker_cpu_affinity configuration"
104+
exit 1
105+
fi
106+
107+
echo "passed: nginx.conf file contains worker_cpu_affinity configuration"
108+
109+
# check admin https enabled
110+
111+
sed -i 's/\# port_admin: 9180/port_admin: 9180/' conf/config.yaml
112+
sed -i 's/\# https_admin: true/https_admin: true/' conf/config.yaml
113+
114+
make init
115+
116+
grep "listen 9180 ssl" conf/nginx.conf > /dev/null
117+
if [ ! $? -eq 0 ]; then
118+
echo "failed: failed to enabled https for admin"
119+
exit 1
120+
fi
121+
122+
make run
123+
124+
code=$(curl -k -i -m 20 -o /dev/null -s -w %{http_code} https://127.0.0.1:9180/apisix/admin/routes -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1')
125+
if [ ! $code -eq 200 ]; then
126+
echo "failed: failed to enabled https for admin"
127+
exit 1
128+
fi
129+
130+
echo "passed: admin https enabled"
131+
132+
# rollback to the default
133+
134+
make stop
135+
136+
sed -i 's/port_admin: 9180/\# port_admin: 9180/' conf/config.yaml
137+
sed -i 's/https_admin: true/\# https_admin: true/' conf/config.yaml
138+
139+
make init
140+
141+
set +ex
142+
143+
grep "listen 9180 ssl" conf/nginx.conf > /dev/null
144+
if [ ! $? -eq 1 ]; then
145+
echo "failed: failed to rollback to the default admin config"
146+
exit 1
147+
fi
148+
149+
set -ex
150+
151+
echo "passed: rollback to the default admin config"

.travis/linux_apisix_current_luarocks_runner.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,11 @@ script() {
4747
export PATH=$OPENRESTY_PREFIX/nginx/sbin:$OPENRESTY_PREFIX/luajit/bin:$OPENRESTY_PREFIX/bin:$PATH
4848
openresty -V
4949
sudo service etcd start
50+
sudo service etcd stop
51+
mkdir -p ~/etcd-data
52+
/usr/bin/etcd --listen-client-urls 'http://0.0.0.0:2379' --advertise-client-urls='http://0.0.0.0:2379' --data-dir ~/etcd-data > /dev/null 2>&1 &
53+
etcd --version
54+
sleep 5
5055

5156
sudo rm -rf /usr/local/apisix
5257

.travis/linux_apisix_master_luarocks_runner.sh

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ set -ex
2020

2121
export_or_prefix() {
2222
export OPENRESTY_PREFIX="/usr/local/openresty-debug"
23+
export APISIX_MAIN="https://raw.githubusercontent.com/apache/incubator-apisix/master/rockspec/apisix-master-0.rockspec"
2324
}
2425

2526
do_install() {
@@ -46,7 +47,11 @@ script() {
4647
export_or_prefix
4748
export PATH=$OPENRESTY_PREFIX/nginx/sbin:$OPENRESTY_PREFIX/luajit/bin:$OPENRESTY_PREFIX/bin:$PATH
4849
openresty -V
49-
sudo service etcd start
50+
sudo service etcd stop
51+
mkdir -p ~/etcd-data
52+
/usr/bin/etcd --listen-client-urls 'http://0.0.0.0:2379' --advertise-client-urls='http://0.0.0.0:2379' --data-dir ~/etcd-data > /dev/null 2>&1 &
53+
etcd --version
54+
sleep 5
5055

5156
sudo rm -rf /usr/local/apisix
5257

@@ -62,7 +67,7 @@ script() {
6267
sudo PATH=$PATH ./utils/install-apisix.sh remove > build.log 2>&1 || (cat build.log && exit 1)
6368

6469
# install APISIX by luarocks
65-
sudo luarocks install rockspec/apisix-master-0.rockspec > build.log 2>&1 || (cat build.log && exit 1)
70+
sudo luarocks install $APISIX_MAIN > build.log 2>&1 || (cat build.log && exit 1)
6671

6772
# show install files
6873
luarocks show apisix

.travis/linux_openresty_runner.sh

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,17 @@ before_install() {
3737
sudo cpanm --notest Test::Nginx >build.log 2>&1 || (cat build.log && exit 1)
3838
docker pull redis:3.0-alpine
3939
docker run --rm -itd -p 6379:6379 --name apisix_redis redis:3.0-alpine
40+
docker run --rm -itd -e HTTP_PORT=8888 -e HTTPS_PORT=9999 -p 8888:8888 -p 9999:9999 mendhak/http-https-echo
41+
# Runs Keycloak version 10.0.2 with inbuilt policies for unit tests
42+
docker run --rm -itd -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=123456 -p 8090:8080 sshniro/keycloak-apisix
4043
# spin up kafka cluster for tests (1 zookeper and 1 kafka instance)
4144
docker pull bitnami/zookeeper:3.6.0
4245
docker pull bitnami/kafka:latest
4346
docker network create kafka-net --driver bridge
4447
docker run --name zookeeper-server -d -p 2181:2181 --network kafka-net -e ALLOW_ANONYMOUS_LOGIN=yes bitnami/zookeeper:3.6.0
4548
docker run --name kafka-server1 -d --network kafka-net -e ALLOW_PLAINTEXT_LISTENER=yes -e KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper-server:2181 -e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://127.0.0.1:9092 -p 9092:9092 -e KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true bitnami/kafka:latest
49+
docker pull bitinit/eureka
50+
docker run --name eureka -d -p 8761:8761 --env ENVIRONMENT=apisix --env spring.application.name=apisix-eureka --env server.port=8761 --env eureka.instance.ip-address=127.0.0.1 --env eureka.client.registerWithEureka=true --env eureka.client.fetchRegistry=false --env eureka.client.serviceUrl.defaultZone=http://127.0.0.1:8761/eureka/ bitinit/eureka
4651
sleep 5
4752
docker exec -it kafka-server1 /opt/bitnami/kafka/bin/kafka-topics.sh --create --zookeeper zookeeper-server:2181 --replication-factor 1 --partitions 1 --topic test2
4853
}
@@ -123,7 +128,11 @@ script() {
123128
export_or_prefix
124129
export PATH=$OPENRESTY_PREFIX/nginx/sbin:$OPENRESTY_PREFIX/luajit/bin:$OPENRESTY_PREFIX/bin:$PATH
125130
openresty -V
126-
sudo service etcd start
131+
sudo service etcd stop
132+
mkdir -p ~/etcd-data
133+
/usr/bin/etcd --listen-client-urls 'http://0.0.0.0:2379' --advertise-client-urls='http://0.0.0.0:2379' --data-dir ~/etcd-data > /dev/null 2>&1 &
134+
etcd --version
135+
sleep 5
127136

128137
./build-cache/grpc_server_example &
129138

@@ -142,7 +151,7 @@ script() {
142151
sleep 1
143152

144153
make lint && make license-check || exit 1
145-
APISIX_ENABLE_LUACOV=1 prove -Itest-nginx/lib -r t
154+
APISIX_ENABLE_LUACOV=1 PERL5LIB=.:$PERL5LIB prove -Itest-nginx/lib -r t
146155
}
147156

148157
after_success() {

.travis/linux_tengine_runner.sh

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,17 @@ before_install() {
3838
sudo cpanm --notest Test::Nginx >build.log 2>&1 || (cat build.log && exit 1)
3939
docker pull redis:3.0-alpine
4040
docker run --rm -itd -p 6379:6379 --name apisix_redis redis:3.0-alpine
41+
docker run --rm -itd -e HTTP_PORT=8888 -e HTTPS_PORT=9999 -p 8888:8888 -p 9999:9999 mendhak/http-https-echo
42+
# Runs Keycloak version 10.0.2 with inbuilt policies for unit tests
43+
docker run --rm -itd -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=123456 -p 8090:8080 sshniro/keycloak-apisix
4144
# spin up kafka cluster for tests (1 zookeper and 1 kafka instance)
4245
docker pull bitnami/zookeeper:3.6.0
4346
docker pull bitnami/kafka:latest
4447
docker network create kafka-net --driver bridge
4548
docker run --name zookeeper-server -d -p 2181:2181 --network kafka-net -e ALLOW_ANONYMOUS_LOGIN=yes bitnami/zookeeper:3.6.0
4649
docker run --name kafka-server1 -d --network kafka-net -e ALLOW_PLAINTEXT_LISTENER=yes -e KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper-server:2181 -e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://127.0.0.1:9092 -p 9092:9092 -e KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true bitnami/kafka:latest
50+
docker pull bitinit/eureka
51+
docker run --name eureka -d -p 8761:8761 --env ENVIRONMENT=apisix --env spring.application.name=apisix-eureka --env server.port=8761 --env eureka.instance.ip-address=127.0.0.1 --env eureka.client.registerWithEureka=true --env eureka.client.fetchRegistry=false --env eureka.client.serviceUrl.defaultZone=http://127.0.0.1:8761/eureka/ bitinit/eureka
4752
sleep 5
4853
docker exec -it kafka-server1 /opt/bitnami/kafka/bin/kafka-topics.sh --create --zookeeper zookeeper-server:2181 --replication-factor 1 --partitions 1 --topic test2
4954
}
@@ -266,7 +271,11 @@ script() {
266271
export_or_prefix
267272
export PATH=$OPENRESTY_PREFIX/nginx/sbin:$OPENRESTY_PREFIX/luajit/bin:$OPENRESTY_PREFIX/bin:$PATH
268273
openresty -V
269-
sudo service etcd start
274+
sudo service etcd stop
275+
mkdir -p ~/etcd-data
276+
/usr/bin/etcd --listen-client-urls 'http://0.0.0.0:2379' --advertise-client-urls='http://0.0.0.0:2379' --data-dir ~/etcd-data > /dev/null 2>&1 &
277+
etcd --version
278+
sleep 5
270279

271280
./build-cache/grpc_server_example &
272281

@@ -279,7 +288,7 @@ script() {
279288
./bin/apisix stop
280289
sleep 1
281290
make lint && make license-check || exit 1
282-
APISIX_ENABLE_LUACOV=1 prove -Itest-nginx/lib -r t
291+
APISIX_ENABLE_LUACOV=1 PERL5LIB=.:$PERL5LIB prove -Itest-nginx/lib -r t
283292
}
284293

285294
after_success() {

.travis/osx_openresty_runner.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ do_install() {
4343
git clone https://github.com/iresty/test-nginx.git test-nginx
4444

4545
wget -P utils https://raw.githubusercontent.com/openresty/openresty-devel-utils/master/lj-releng
46-
chmod a+x utils/lj-releng
46+
chmod a+x utils/lj-releng
4747

4848
wget https://github.com/iresty/grpc_server_example/releases/download/20200314/grpc_server_example-darwin-amd64.tar.gz
4949
tar -xvf grpc_server_example-darwin-amd64.tar.gz

CHANGELOG.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919

2020
# Table of Contents
2121

22+
- [1.4.0](#140)
23+
- [1.3.0](#130)
2224
- [1.2.0](#120)
2325
- [1.1.0](#110)
2426
- [1.0.0](#100)
@@ -27,6 +29,37 @@
2729
- [0.7.0](#070)
2830
- [0.6.0](#060)
2931

32+
## 1.4.0
33+
34+
### Core
35+
- Admin API: Support unique names for routes [1655](https://github.com/apache/incubator-apisix/pull/1655)
36+
- Optimization of log buffer size and flush time [1570](https://github.com/apache/incubator-apisix/pull/1570)
37+
38+
### New plugins
39+
- :sunrise: **Apache Skywalking plugin** [1241](https://github.com/apache/incubator-apisix/pull/1241)
40+
- :sunrise: **Keycloak Identity Server Plugin** [1701](https://github.com/apache/incubator-apisix/pull/1701)
41+
- :sunrise: **Echo Plugin** [1632](https://github.com/apache/incubator-apisix/pull/1632)
42+
- :sunrise: **Consume Restriction Plugin** [1437](https://github.com/apache/incubator-apisix/pull/1437)
43+
44+
### Improvements
45+
- Batch Request : Copy all headers to every request [1697](https://github.com/apache/incubator-apisix/pull/1697)
46+
- SSL private key encryption [1678](https://github.com/apache/incubator-apisix/pull/1678)
47+
- Improvement of docs for multiple plugins
48+
49+
50+
## 1.3.0
51+
52+
The 1.3 version is mainly for security update.
53+
54+
### Security
55+
- reject invalid header[#1462](https://github.com/apache/incubator-apisix/pull/1462) and uri safe encode[#1461](https://github.com/apache/incubator-apisix/pull/1461)
56+
- only allow 127.0.0.1 access admin API and dashboard by default. [#1458](https://github.com/apache/incubator-apisix/pull/1458)
57+
58+
### Plugin
59+
- :sunrise: **add batch request plugin**. [#1388](https://github.com/apache/incubator-apisix/pull/1388)
60+
- implemented plugin `sys logger`. [#1414](https://github.com/apache/incubator-apisix/pull/1414)
61+
62+
3063
## 1.2.0
3164

3265
The 1.2 version brings many new features, including core and plugins.

CHANGELOG_CN.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919

2020
# Table of Contents
2121

22+
- [1.4.0](#140)
23+
- [1.3.0](#130)
2224
- [1.2.0](#120)
2325
- [1.1.0](#110)
2426
- [1.0.0](#100)
@@ -27,6 +29,36 @@
2729
- [0.7.0](#070)
2830
- [0.6.0](#060)
2931

32+
## 1.4.0
33+
34+
### Core
35+
- Admin API: 路由支持唯一 name 字段 [1655](https://github.com/apache/incubator-apisix/pull/1655)
36+
- 优化 log 缓冲区大小和刷新时间 [1570](https://github.com/apache/incubator-apisix/pull/1570)
37+
38+
### New plugins
39+
- :sunrise: **Apache Skywalking plugin** [1241](https://github.com/apache/incubator-apisix/pull/1241)
40+
- :sunrise: **Keycloak Identity Server Plugin** [1701](https://github.com/apache/incubator-apisix/pull/1701)
41+
- :sunrise: **Echo Plugin** [1632](https://github.com/apache/incubator-apisix/pull/1632)
42+
- :sunrise: **Consume Restriction Plugin** [1437](https://github.com/apache/incubator-apisix/pull/1437)
43+
44+
### Improvements
45+
- Batch Request : 对每个请求拷贝头 [1697](https://github.com/apache/incubator-apisix/pull/1697)
46+
- SSL 私钥加密 [1678](https://github.com/apache/incubator-apisix/pull/1678)
47+
- 众多插件文档改善
48+
49+
## 1.3.0
50+
51+
1.3 版本主要带来安全更新。
52+
53+
## Security
54+
- 拒绝无效的 header [#1462](https://github.com/apache/incubator-apisix/pull/1462) 并对 uri 进行安全编码 [#1461](https://github.com/apache/incubator-apisix/pull/1461)
55+
- 默认只允许本地环回地址 127.0.0.1 访问 admin API 和 dashboard. [#1458](https://github.com/apache/incubator-apisix/pull/1458)
56+
57+
### Plugin
58+
- :sunrise: **新增 batch request 插件**. [#1388](https://github.com/apache/incubator-apisix/pull/1388)
59+
- 实现完成 `sys logger` 插件. [#1414](https://github.com/apache/incubator-apisix/pull/1414)
60+
61+
3062
## 1.2.0
3163
1.2 版本在内核以及插件上带来了非常多的更新。
3264

0 commit comments

Comments
 (0)