Table of Contents

1.6.0

Welcome to the 1.6.0 release of apisix-ingress-controller!

This is a feature release.

Highlights

The API version of all custom resources has been upgraded to v2 in v1.5 release. In 1.6 we removed the v2beta2 API. Please go to #707 for detail.

In this version we added more Gateway API support. e.g. TCPRoute/UDPRoute/HTTPRouteFilter etc.

From this version, we can proxy external services and external name services. And integrated with the service discovery component.

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • dependabot[bot]
  • Jintao Zhang
  • Xin Rong
  • Navendu Pottekkat
  • Xin Rong
  • Sarasa Kisaragi
  • Ashing Zheng
  • xiangtianyu
  • 林靖
  • Floyd
  • Navendu Pottekkat
  • dongjunduo
  • lsy
  • seven dickens
  • Baoyuan
  • Gallardot
  • Jayson Reis
  • LinkMaq
  • Marco Aurelio Caldas Miranda
  • Nicolas Frankel
  • Qi Guo
  • StevenBrown008
  • Young
  • Yousri
  • YuanYingdong
  • cmssczy
  • incubator4
  • mango
  • redtacs
  • soulbird
  • thomas
  • xianshun163
  • 失眠是真滴难受

Changes

  • 88b1d45 chore: admin-api default version v2 (#1558) (#1559)
  • 3b99ebf fix: bad configuration item: apisix-admin-api-version (#1551) (#1555)
  • b76074f chore: extra annotations logs (#1549) (#1554)
  • 15d881e chore: 1.6.0-rc1 release (#1537)
  • 67d60fe docs: add external service discovery tutorial (#1535)
  • f162f71 feat: support for specifying port in external services (#1500)
  • 4208ca7 refactor: unified factory and informer (#1530)
  • a118727 docs: update Ingress controller httpbin tutorial (#1524)
  • c0cb74d docs: add external service tutorial (#1527)
  • d22a6fc chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1506)
  • c4cedad chore(deps): bump go.uber.org/zap from 1.23.0 to 1.24.0 (#1510)
  • c6c2742 chore(deps): bump github.com/gavv/httpexpect/v2 in /test/e2e (#1509)
  • b4255f1 ci: using ubuntu-20.04 by default (#1504)
  • 03cfcb8 chore(deps): bump k8s.io/client-go from 0.25.4 to 0.26.0 in /test/e2e (#1505)
  • 0009b5d feat: support secret plugin config (#1486)
  • 8cf79c2 fix: ingress.tls secret not found (#1394)
  • 7e8f076 fix: many namespace lead to provider stuck (#1386)
  • 2ce1ed3 chore: use httptest.NewRequest instead of http.Request as incoming server request in test case (#1498)
  • 768a35f feat: add Ingress annotation to support response-rewrite (#1487)
  • 051fc48 e2e: support docker hub as registry (#1489)
  • cc48ae9 chore: use field cluster.name as value but not “default” (#1495)
  • 931ab06 feat: ingress annotations supports the specified upstream schema (#1451)
  • de9f84f doc: update upgrade guide (#1479)
  • 7511166 chore(deps): bump go.uber.org/zap from 1.23.0 to 1.24.0 in /test/e2e (#1488)
  • afbc4f7 docs: fix typo (#1491)
  • 1097792 chore: replace io/ioutil package (#1485)
  • ed92690 fix:sanitize log output when exposing sensitive values (#1480)
  • 8e39e71 feat: add control http method using kubernetes ingress by annotations (#1471)
  • bccf762 chore: bump actions. (#1484)
  • adf7d27 docs: add more user cases (#1482)
  • 0f7b3f3 Revert “chore: update actions and add more user cases. (#1478)” (#1481)
  • 14353d3 chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1477)
  • ee99eba chore(deps): bump github.com/gavv/httpexpect/v2 in /test/e2e (#1476)
  • 7471e64 chore: update actions and add more user cases. (#1478)
  • 136d40d chore(deps): some deps bump (#1475)
  • c2cea69 docs: change ingress class annotation to spec.ingressClassName (#1425)
  • c8d3bd5 feat: add support for integrate with DP service discovery (#1465)
  • ec88b49 chore(deps): bump k8s.io/code-generator from 0.25.3 to 0.25.4 (#1456)
  • 803fdeb chore(deps): bump k8s.io/client-go from 0.25.3 to 0.25.4 (#1458)
  • e6eb3bf feat: support variable in ApisixRoute exprs scope (#1466)
  • be7edf6 feat: support apisix v3 admin api (#1449)
  • d95ae08 docs: Add more descriptions and examples in the prometheus doc (#1467)
  • d610041 chore(deps): bump k8s.io/client-go from 0.25.3 to 0.25.4 in /test/e2e (#1453)
  • 632d5c1 feat: support HTTPRequestMirrorFilter in HTTPRoute (#1461)
  • 47906a5 docs: update ApisixRoute/v2 reference (#1423)
  • 6ec804f feat(makefile): allow to custom registry port for make kind-up (#1417)
  • a318f49 docs: update ApisixUpstream reference (#1450)
  • 51c0745 docs: update API references (#1459)
  • 8c3515d chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1454)
  • 5570d28 chore: gateway-api v0.5.1 (#1445)
  • 32863b4 docs: update “Development” guide (#1443)
  • e18f157 docs: update “FAQ” page (#1437)
  • febeab4 modify Dockerfile go version from 1.18 to 1.19 ,consist with go mod (#1446)
  • d43fd97 fix: ApisixPluginConfig shouldn't be deleted when ar or au be deleted. (#1439)
  • 6f83da5 feat: support redirect and requestHeaderModifier in HTTPRoute filter (#1426)
  • bfd058d fix: cluster.metricsCollector invoked before assign when MountWebhooks (#1428)
  • 38b12fb feat: support sni based tls route (#1051)
  • 53f26c1 feat: delete “app_namespaces” param (#1429)
  • 1cfe95a doc: fix server-secret.yaml in mtls.md (#1432)
  • b128bff chore: remove v2beta2 API Version (#1431)
  • 6b38e80 chore(deps): bump github.com/spf13/cobra from 1.6.0 to 1.6.1 (#1411)
  • 6879c81 feat: support ingress and backend service in different namespace (#1377)
  • 00855fa feat: support plugin_metadata of apisix (#1369)
  • 4e0749e docs: update “ApisixTls” and “ApisixClusterConfig” (#1414)
  • c38ae66 chore(deps): bump github.com/eclipse/paho.mqtt.golang in /test/e2e (#1410)
  • eff8ce1 chore(deps): bump github.com/stretchr/testify from 1.8.0 to 1.8.1 (#1404)
  • f9f36d3 docs: update ApisixUpstream docs (#1407)
  • 812ae50 chore(deps): bump github.com/stretchr/testify in /test/e2e (#1401)
  • b734af3 chore(deps): bump github.com/slok/kubewebhook/v2 from 2.3.0 to 2.5.0 (#1403)
  • b52d357 chore(deps): bump github.com/spf13/cobra from 1.5.0 to 1.6.0 (#1402)
  • cc33365 chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1400)
  • 10c3d6e docs: update annotations page (#1399)
  • 3182dbc chore(deps): bump k8s.io/client-go from 0.25.2 to 0.25.3 (#1397)
  • dcd57bb feat: ingress extensions/v1beta1 support tls (#1392)
  • 5b8ae78 docs: fix typo (#1398)
  • 048b9a9 docs: ensure parity in examples (#1396)
  • f564cb7 docs: update ApisixRoute docs (#1391)
  • 5c79821 feat: support external service (#1306)
  • 7a89a0a chore(deps): bump k8s.io/code-generator from 0.25.1 to 0.25.3 (#1384)
  • 5f2c398 chore(deps): bump k8s.io/client-go from 0.25.1 to 0.25.2 in /test/e2e (#1361)
  • 8a17eea feat: add Gateway UDPRoute (#1278)
  • 40f1372 chore: release v1.5.0 (#1360) (#1373)
  • 7a6dcfb docs: update golang version to 1.19 (#1370)
  • 3877ee8 feat: support Gateway API TCPRoute (#1217)
  • f71b376 e2e: remove debug log (#1358)
  • 3619b74 chore(deps): bump k8s.io/xxx from 0.24.4 to 0.25.1 and Go 1.19 (#1290)
  • 1f3983e modify powered-by.md (#1350)
  • e51a2c7 feat: update secret referenced by ingress (#1243)
  • 7bd6a03 docs: update user cases (#1337)
  • 654aaec docs: add slack invitation badge (#1333)
  • f296f11 fix: Using different protocols at the same time in ApisixUpstream (#1331)
  • 4fa3b56 fix: crd resource status is not updated (#1335)
  • 3fd6112 docs: Add KubeGems to powered-by.md (#1334)
  • 85bcfbc chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1327)
  • 9d663ab fix: support resolveGranularity of ApisixRoute (#1251)
  • 5c0ea2b feat: support update and delete of HTTPRoute (#1315)
  • 94dbbed chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1319)
  • 866d40f chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1318)
  • 848a78f fix: ingress class not effect in resource sync logic (#1311)
  • d6f1352 fix: type assertion failed (#1314)
  • 0b999ec chore(refactor): annotations handle (#1245)
  • 9dafeb8 chore: protect v1.5.0 and enable CI for it (#1294)
  • cb6c696 docs: add powered-by.md (#1293)
  • 6b86d2a e2e: delete duplicate log data on failure (#1297)
  • 31b3ef8 docs: add ApisixUpstream healthCheck explanation to resolveGranularity (#1279)
  • f1bd4c0 fix config missing default_cluster_name yaml (#1277)
  • 1087941 fix: namespace_selector invalid when restarting (#1238)
  • c4b04b3 chore(deps): bump github.com/eclipse/paho.mqtt.golang in /test/e2e (#1255)
  • 5e844e4 docs: update installation guide (#1272)
  • ef07421 ci: set default_branch (#1274)
  • 20eb64e fix: object type should be apisix_upstream and endpointslice and apisix_cluster_config (#1268)
  • 4eede7e chore(deps): bump deps from 0.24.3 to 0.24.4 (#1265)
  • f802271 chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1259)
  • 530ce52 feat: add mqtt-proxy plugin in ApisixRoute (#1056)
  • 1a29306 docs: update “Getting started” guide (#1247)
  • 2fa8a9c fix: log Secret name instead of all data (#1216)
  • 35c9f6b fix: nodes convert failed (#1222)
  • 356b220 fix: TestRotateLog (#1246)
  • e2b68f4 chore(deps): bump go.uber.org/zap and github.com/prometheus/client_golang (#1244)
  • 6728776 docs: Fix typo on plugin config name (#1241)
  • fcfa188 feat: add log rotate (#1200)
  • 1c4e7f3 chore: update contributor over time link for README (#1239)
  • 7115cef chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1228)
  • 537501c test: add cronjob runs e2e in multiple k8s versions (#1203)
  • d32c728 feat: Restruct pkg/ingress (#1204)
  • dfcbaac docs: add installation on KIND to index (#1220)
  • e08b2e0 chore: v1.5.0-rc1 release (#1219)
  • 92c1adb doc: Refactor the README (#1215)
  • 96df45e docs: fix dead link (#1211)

Dependency Changes

  • github.com/hashicorp/go-immutable-radix v1.3.0 -> v1.3.1
  • github.com/hashicorp/go-memdb v1.3.3 -> v1.3.4
  • github.com/imdario/mergo v0.3.12 -> v0.3.13
  • github.com/inconshreveable/mousetrap v1.0.0 -> v1.0.1
  • github.com/incubator4/go-resty-expr v0.1.1 new
  • github.com/prometheus/client_golang v1.12.2 -> v1.14.0
  • github.com/prometheus/client_model v0.2.0 -> v0.3.0
  • github.com/prometheus/common v0.32.1 -> v0.37.0
  • github.com/prometheus/procfs v0.7.3 -> v0.8.0
  • github.com/spf13/cobra v1.5.0 -> v1.6.1
  • github.com/stretchr/testify v1.8.0 -> v1.8.1
  • go.uber.org/atomic v1.7.0 -> v1.10.0
  • go.uber.org/zap v1.23.0 -> v1.24.0
  • google.golang.org/protobuf v1.28.0 -> v1.28.1
  • gopkg.in/natefinch/lumberjack.v2 v2.0.0 new
  • k8s.io/api v0.25.1 -> v0.25.4
  • k8s.io/apimachinery v0.25.1 -> v0.25.4
  • k8s.io/client-go v0.25.1 -> v0.25.4
  • k8s.io/code-generator v0.25.1 -> v0.25.4
  • sigs.k8s.io/gateway-api v0.4.0 -> v0.5.1

Previous release can be found at 1.5.0

1.6.0-rc1

Welcome to the 1.6.0-rc1 release of apisix-ingress-controller!

This is a feature release.

Highlights

The API version of all custom resources has been upgraded to v2 in v1.5 release. In 1.6 we removed the v2beta2 API. Please go to #707 for detail.

In this version we added more Gateway API support. e.g. TCPRoute/UDPRoute/HTTPRouteFilter etc.

From this version, we can proxy external services and external name services. And integrated with the service discovery component.

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • dependabot[bot]
  • Jintao Zhang
  • Xin Rong
  • Navendu Pottekkat
  • Xin Rong
  • Sarasa Kisaragi
  • Ashing Zheng
  • xiangtianyu
  • 林靖
  • Floyd
  • Navendu Pottekkat
  • dongjunduo
  • lsy
  • seven dickens
  • Baoyuan
  • Gallardot
  • Jayson Reis
  • LinkMaq
  • Marco Aurelio Caldas Miranda
  • Nicolas Frankel
  • Qi Guo
  • StevenBrown008
  • Young
  • Yousri
  • YuanYingdong
  • cmssczy
  • incubator4
  • mango
  • redtacs
  • soulbird
  • thomas
  • xianshun163
  • 失眠是真滴难受

Changes

  • 67d60fe docs: add external service discovery tutorial (#1535)
  • f162f71 feat: support for specifying port in external services (#1500)
  • 4208ca7 refactor: unified factory and informer (#1530)
  • a118727 docs: update Ingress controller httpbin tutorial (#1524)
  • c0cb74d docs: add external service tutorial (#1527)
  • d22a6fc chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1506)
  • c4cedad chore(deps): bump go.uber.org/zap from 1.23.0 to 1.24.0 (#1510)
  • c6c2742 chore(deps): bump github.com/gavv/httpexpect/v2 in /test/e2e (#1509)
  • b4255f1 ci: using ubuntu-20.04 by default (#1504)
  • 03cfcb8 chore(deps): bump k8s.io/client-go from 0.25.4 to 0.26.0 in /test/e2e (#1505)
  • 0009b5d feat: support secret plugin config (#1486)
  • 8cf79c2 fix: ingress.tls secret not found (#1394)
  • 7e8f076 fix: many namespace lead to provider stuck (#1386)
  • 2ce1ed3 chore: use httptest.NewRequest instead of http.Request as incoming server request in test case (#1498)
  • 768a35f feat: add Ingress annotation to support response-rewrite (#1487)
  • 051fc48 e2e: support docker hub as registry (#1489)
  • cc48ae9 chore: use field cluster.name as value but not “default” (#1495)
  • 931ab06 feat: ingress annotations supports the specified upstream schema (#1451)
  • de9f84f doc: update upgrade guide (#1479)
  • 7511166 chore(deps): bump go.uber.org/zap from 1.23.0 to 1.24.0 in /test/e2e (#1488)
  • afbc4f7 docs: fix typo (#1491)
  • 1097792 chore: replace io/ioutil package (#1485)
  • ed92690 fix:sanitize log output when exposing sensitive values (#1480)
  • 8e39e71 feat: add control http method using kubernetes ingress by annotations (#1471)
  • bccf762 chore: bump actions. (#1484)
  • adf7d27 docs: add more user cases (#1482)
  • 0f7b3f3 Revert “chore: update actions and add more user cases. (#1478)” (#1481)
  • 14353d3 chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1477)
  • ee99eba chore(deps): bump github.com/gavv/httpexpect/v2 in /test/e2e (#1476)
  • 7471e64 chore: update actions and add more user cases. (#1478)
  • 136d40d chore(deps): some deps bump (#1475)
  • c2cea69 docs: change ingress class annotation to spec.ingressClassName (#1425)
  • c8d3bd5 feat: add support for integrate with DP service discovery (#1465)
  • ec88b49 chore(deps): bump k8s.io/code-generator from 0.25.3 to 0.25.4 (#1456)
  • 803fdeb chore(deps): bump k8s.io/client-go from 0.25.3 to 0.25.4 (#1458)
  • e6eb3bf feat: support variable in ApisixRoute exprs scope (#1466)
  • be7edf6 feat: support apisix v3 admin api (#1449)
  • d95ae08 docs: Add more descriptions and examples in the prometheus doc (#1467)
  • d610041 chore(deps): bump k8s.io/client-go from 0.25.3 to 0.25.4 in /test/e2e (#1453)
  • 632d5c1 feat: support HTTPRequestMirrorFilter in HTTPRoute (#1461)
  • 47906a5 docs: update ApisixRoute/v2 reference (#1423)
  • 6ec804f feat(makefile): allow to custom registry port for make kind-up (#1417)
  • a318f49 docs: update ApisixUpstream reference (#1450)
  • 51c0745 docs: update API references (#1459)
  • 8c3515d chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1454)
  • 5570d28 chore: gateway-api v0.5.1 (#1445)
  • 32863b4 docs: update “Development” guide (#1443)
  • e18f157 docs: update “FAQ” page (#1437)
  • febeab4 modify Dockerfile go version from 1.18 to 1.19 ,consist with go mod (#1446)
  • d43fd97 fix: ApisixPluginConfig shouldn't be deleted when ar or au be deleted. (#1439)
  • 6f83da5 feat: support redirect and requestHeaderModifier in HTTPRoute filter (#1426)
  • bfd058d fix: cluster.metricsCollector invoked before assign when MountWebhooks (#1428)
  • 38b12fb feat: support sni based tls route (#1051)
  • 53f26c1 feat: delete “app_namespaces” param (#1429)
  • 1cfe95a doc: fix server-secret.yaml in mtls.md (#1432)
  • b128bff chore: remove v2beta2 API Version (#1431)
  • 6b38e80 chore(deps): bump github.com/spf13/cobra from 1.6.0 to 1.6.1 (#1411)
  • 6879c81 feat: support ingress and backend service in different namespace (#1377)
  • 00855fa feat: support plugin_metadata of apisix (#1369)
  • 4e0749e docs: update “ApisixTls” and “ApisixClusterConfig” (#1414)
  • c38ae66 chore(deps): bump github.com/eclipse/paho.mqtt.golang in /test/e2e (#1410)
  • eff8ce1 chore(deps): bump github.com/stretchr/testify from 1.8.0 to 1.8.1 (#1404)
  • f9f36d3 docs: update ApisixUpstream docs (#1407)
  • 812ae50 chore(deps): bump github.com/stretchr/testify in /test/e2e (#1401)
  • b734af3 chore(deps): bump github.com/slok/kubewebhook/v2 from 2.3.0 to 2.5.0 (#1403)
  • b52d357 chore(deps): bump github.com/spf13/cobra from 1.5.0 to 1.6.0 (#1402)
  • cc33365 chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1400)
  • 10c3d6e docs: update annotations page (#1399)
  • 3182dbc chore(deps): bump k8s.io/client-go from 0.25.2 to 0.25.3 (#1397)
  • dcd57bb feat: ingress extensions/v1beta1 support tls (#1392)
  • 5b8ae78 docs: fix typo (#1398)
  • 048b9a9 docs: ensure parity in examples (#1396)
  • f564cb7 docs: update ApisixRoute docs (#1391)
  • 5c79821 feat: support external service (#1306)
  • 7a89a0a chore(deps): bump k8s.io/code-generator from 0.25.1 to 0.25.3 (#1384)
  • 5f2c398 chore(deps): bump k8s.io/client-go from 0.25.1 to 0.25.2 in /test/e2e (#1361)
  • 8a17eea feat: add Gateway UDPRoute (#1278)
  • 40f1372 chore: release v1.5.0 (#1360) (#1373)
  • 7a6dcfb docs: update golang version to 1.19 (#1370)
  • 3877ee8 feat: support Gateway API TCPRoute (#1217)
  • f71b376 e2e: remove debug log (#1358)
  • 3619b74 chore(deps): bump k8s.io/xxx from 0.24.4 to 0.25.1 and Go 1.19 (#1290)
  • 1f3983e modify powered-by.md (#1350)
  • e51a2c7 feat: update secret referenced by ingress (#1243)
  • 7bd6a03 docs: update user cases (#1337)
  • 654aaec docs: add slack invitation badge (#1333)
  • f296f11 fix: Using different protocols at the same time in ApisixUpstream (#1331)
  • 4fa3b56 fix: crd resource status is not updated (#1335)
  • 3fd6112 docs: Add KubeGems to powered-by.md (#1334)
  • 85bcfbc chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1327)
  • 9d663ab fix: support resolveGranularity of ApisixRoute (#1251)
  • 5c0ea2b feat: support update and delete of HTTPRoute (#1315)
  • 94dbbed chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1319)
  • 866d40f chore(deps): bump github.com/onsi/ginkgo/v2 in /test/e2e (#1318)
  • 848a78f fix: ingress class not effect in resource sync logic (#1311)
  • d6f1352 fix: type assertion failed (#1314)
  • 0b999ec chore(refactor): annotations handle (#1245)
  • 9dafeb8 chore: protect v1.5.0 and enable CI for it (#1294)
  • cb6c696 docs: add powered-by.md (#1293)
  • 6b86d2a e2e: delete duplicate log data on failure (#1297)
  • 31b3ef8 docs: add ApisixUpstream healthCheck explanation to resolveGranularity (#1279)
  • f1bd4c0 fix config missing default_cluster_name yaml (#1277)
  • 1087941 fix: namespace_selector invalid when restarting (#1238)
  • c4b04b3 chore(deps): bump github.com/eclipse/paho.mqtt.golang in /test/e2e (#1255)
  • 5e844e4 docs: update installation guide (#1272)
  • ef07421 ci: set default_branch (#1274)
  • 20eb64e fix: object type should be apisix_upstream and endpointslice and apisix_cluster_config (#1268)
  • 4eede7e chore(deps): bump deps from 0.24.3 to 0.24.4 (#1265)
  • f802271 chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1259)
  • 530ce52 feat: add mqtt-proxy plugin in ApisixRoute (#1056)
  • 1a29306 docs: update “Getting started” guide (#1247)
  • 2fa8a9c fix: log Secret name instead of all data (#1216)
  • 35c9f6b fix: nodes convert failed (#1222)
  • 356b220 fix: TestRotateLog (#1246)
  • e2b68f4 chore(deps): bump go.uber.org/zap and github.com/prometheus/client_golang (#1244)
  • 6728776 docs: Fix typo on plugin config name (#1241)
  • fcfa188 feat: add log rotate (#1200)
  • 1c4e7f3 chore: update contributor over time link for README (#1239)
  • 7115cef chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1228)
  • 537501c test: add cronjob runs e2e in multiple k8s versions (#1203)
  • d32c728 feat: Restruct pkg/ingress (#1204)
  • dfcbaac docs: add installation on KIND to index (#1220)
  • e08b2e0 chore: v1.5.0-rc1 release (#1219)
  • 92c1adb doc: Refactor the README (#1215)
  • 96df45e docs: fix dead link (#1211)

Dependency Changes

  • github.com/hashicorp/go-immutable-radix v1.3.0 -> v1.3.1
  • github.com/hashicorp/go-memdb v1.3.3 -> v1.3.4
  • github.com/imdario/mergo v0.3.12 -> v0.3.13
  • github.com/inconshreveable/mousetrap v1.0.0 -> v1.0.1
  • github.com/incubator4/go-resty-expr v0.1.1 new
  • github.com/prometheus/client_golang v1.12.2 -> v1.14.0
  • github.com/prometheus/client_model v0.2.0 -> v0.3.0
  • github.com/prometheus/common v0.32.1 -> v0.37.0
  • github.com/prometheus/procfs v0.7.3 -> v0.8.0
  • github.com/spf13/cobra v1.5.0 -> v1.6.1
  • github.com/stretchr/testify v1.8.0 -> v1.8.1
  • go.uber.org/atomic v1.7.0 -> v1.10.0
  • go.uber.org/zap v1.23.0 -> v1.24.0
  • google.golang.org/protobuf v1.28.0 -> v1.28.1
  • gopkg.in/natefinch/lumberjack.v2 v2.0.0 new
  • k8s.io/api v0.25.1 -> v0.25.4
  • k8s.io/apimachinery v0.25.1 -> v0.25.4
  • k8s.io/client-go v0.25.1 -> v0.25.4
  • k8s.io/code-generator v0.25.1 -> v0.25.4
  • sigs.k8s.io/gateway-api v0.4.0 -> v0.5.1

Previous release can be found at 1.5.0

1.5.1

Welcome to the 1.5.1 release of apisix-ingress-controller!

This is a Patch version release.

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • Jintao Zhang
  • Young

Changes

  • 93930b7 bug: failed to reflect pluginConfig delete to cache(#1439) (#1470)
  • 97e417b fix: cluster.metricsCollector invoked before assign when MountWebhooks (#1428) (#1469)
  • a288408 cherry-pick #1331: fix: Using different protocols at the same time in ApisixUpstream (#1464)
  • dd5acd3 docs: fix server-secret.yaml link in mtls.md (#1434)
  • 21f39e9 fix: handle v2 ApisixPluginConfig status (#1409)

Dependency Changes

This release has no dependency changes

Previous release can be found at 1.5.0

1.5.0

Welcome to the 1.5.0 release of apisix-ingress-controller!

This is a feature release.

Highlights

The API version of all custom resources has been upgraded to v2 in this release and mark v2beta3 as deprecated. We plan to remove the v2beta2 API version in the next release. Please go to #707 for detail.

We have added partial support for Gateway API, which is not enabled by default, you can set enable_gateway_api=true to enable it.

Ingress resources can now use all APISIX plugin configurations by setting the annotation k8s.apisix.apache.org/plugin-config-name=xxx.

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • Jintao Zhang
  • Sarasa Kisaragi
  • Xin Rong
  • John Chever
  • cmssczy
  • dependabot[bot]
  • nevercase
  • Gallardot
  • Nic
  • lsy
  • mango
  • Fatpa
  • Hoshea Jiang
  • JasonZhu
  • Yu.Bozhong
  • seven dickens
  • FesonX
  • GhangZh
  • JasonZhu
  • Kowsz
  • LetsGO
  • Sindweller
  • SkyeYoung
  • Zack Sun
  • bin-ya
  • champly
  • chen zhuo
  • fengxsong
  • greenhandatsjtu
  • hahayyun
  • hf400159
  • wangyunpeng
  • 罗泽轩

Changes

  • f0a61d2 [v1.5 cherry-pick]chore(deps): bump k8s.io/xxx from 0.24.4 to 0.25.1 and Go 1.19 (#1290) (#1357)
  • 1531680 fix: crd resource status is not updated (#1335) (#1336)
  • 5a3ce7c fix: ingress class not effect in resource sync logic (#1311) (#1330)
  • d43fda7 feat: support update and delete of HTTPRoute (#1315) (#1329)
  • 4abed4d [v1.5] fix: type assertion failed (#1303)
  • 8241b15 fix: namespace_selector invalid when restarting (#1238) (#1291)
  • 3b56ee3 chore: protect v1.5.0 and enable CI for it (#1294) (#1299)
  • ca063cd fix: nodes convert failed (#1222) (#1250)
  • 0701f95 chore: bump version
  • 652a79e chore: changelog for v1.5.0-rc1
  • cccad72 chore: mark v2beta3 deprecated (#1198)
  • 698ab6d chore: Using APISIX 2.15.0 for CI (#1197)
  • 8094868 e2e: add sync case (#1196)
  • 37a8e5c fix: translate error of old Ingress (#1193)
  • 339531f doc: add a notice about the compatibility of Ingress and Dashboard (#1195)
  • 2cc586b fix: apisix_upstream sync panic (#1192)
  • 6cc718b helm: update deploy cluster role (#1131)
  • 3d720c0 fix: translate error of old ApisixRoute (#1191)
  • 8b51c6e docs: update all api-version to v2 (#1189)
  • 5f45b63 fix: ScopeQuery should be case sensitive (#1168) (#1188)
  • af03e7a chore: update APISIX v2.14.1 (#1145)
  • 516e677 chore(deps): bump github.com/gin-gonic/gin from 1.7.7 to 1.8.1 (#1184)
  • a0bc739 fix: trigger ApisixRoute event when service is created (#1152)
  • 1765ec9 test: keep namespace when test failed in dev mod (#1158)
  • b1add53 Chore dep update (#1180)
  • 8c2cfbc chore(deps): bump github.com/stretchr/testify from 1.7.0 to 1.8.0 (#1175)
  • 1a5f2c1 chore(deps): bump github.com/spf13/cobra from 1.2.1 to 1.5.0 (#1176)
  • 3299260 chore(deps): bump k8s.io/client-go and go-memdb etc. (#1172)
  • 628abb9 ci: upgrade e2e-test-ci (#1149)
  • 9a6bd92 chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1156)
  • edb19cd chore(deps): bump github.com/gorilla/websocket in /test/e2e (#1114)
  • f198f33 chore(deps): some dependency updates (#1160)
  • e75f7e9 chore: change description and labels for this project (#1150)
  • 35ca03c test: add e2e tests and CRDs for ApisixUpstream v2 (#1147)
  • 6cf8bb7 feat: Add annotations to combine ApisixPluginConfig with k8s ingress resource (#1139)
  • 73498bd docs: update crd version (#1134)
  • a649751 feat: ApisixUpstream v2 (#1141)
  • a73b52d feat: support endpointslice, and improve test/e2e/endpoints.go tests. (#1140)
  • f0217ae ci: pin skywalking-eyes to release (#1143)
  • 62e0ea2 chore: add log for syncManifest delete upstream (#1132)
  • 374f865 make api version const consistent (#1133)
  • 93c10e6 fix: verify through the cache first, then delete (#1135)
  • a642b14 doc: fix enable-authentication-and-restriction.md link failed (#1137)
  • e25abdb fix: ns should unwatch after unlabeling it (#1130)
  • 398f816 e2e-test: Optimize the runtime of ingress/features, and support more default value in NewScaffold (#1128)
  • 4d172a0 chore(deps): bump github.com/stretchr/testify in /test/e2e (#1113)
  • aae2105 feat: ingress annotations support enable websocket (#1101)
  • 70c0870 chore(deps): bump github.com/gruntwork-io/terratest from 0.32.8 to 0.40.17 in /test/e2e (#1112)
  • 4bc9f0c fix: update Makefile verify-mdlint (#1126)
  • 4aa2ca5 test: support ApisixRoute v2 and split suit-plugins (#1103)
  • 810f1a1 docs: rename practices to tutorials and add index (#1123)
  • b1dc75e chore: enable dependabot for security (#1111)
  • 0e1f8d4 fix : The ingress backend is modified several times, resulting in residual update events (#1040)
  • b33d70c feat: support gateway TLSRoute (#1087)
  • 49991e2 feat: sync CRD and ingress resource to apisix mechanism. (#1102)
  • f453e80 chore: enable stale GitHub action (#1107)
  • 9e0c658 fix: upstream nodes filed IP occupation. (#1064)
  • d46b8e0 feat: support v2 in resource compare (#1093)
  • 0f95dbe doc: add v2 CRD reference (#1068)
  • 5756273 infra: update golang 1.18 (#1095)
  • a69a55a Revert “feat: sync CRD and ingress resource to APISIX mechanism. (#1022)” (#1099)
  • 6394cdd feat: sync CRD and ingress resource to APISIX mechanism. (#1022)
  • 50d6026 fix: make ApisixRouteHTTPBackend support serivce name (#1096)
  • 3214c69 fix: e2e robustness. (#1078)
  • c48a62a feat: support GatewayClass, refactor gateway modules (#1079)
  • a0b88d1 fix: tag for keyAuth field (#1080)
  • f0d64b6 docs: correct typo & link (#1073)
  • 3520830 e2e: gateway api httproute (#1060)
  • 2af39c9 docs: add how to change Admin API key for APISIX (#1031)
  • 96dd07f e2e-test: add e2e tests for ApisixPluginConfig v2 (#1067)
  • d3a823f doc: update enable-authentication-and-restriction, jwt-auth and wolf-rbac examples. (#1018)
  • deb0440 docs: add “how to use go plugin runner with APISIX Ingress” (#994)
  • 8d76428 e2e-test: upgrade to ginkgo v2 (#1046)
  • 408eb0d feat: support ApisixPluginConfig v2 (#984)
  • e1d496d e2e-test: add e2e tests and CRDs for ApisixConsumer v2 (#1044)
  • 6c7452f feat: support gateway API HTTPRoute (#1037)
  • 5477fb0 test: fix wolf-rbac and mTLS test cases (#1055)
  • df7a724 e2e-test: add e2e tests and CRDs for ApisixClusterConfig v2 (#1016)
  • 25daa6e feat: add csrf plugin annotation in ingress resource (#1023)
  • 59ba41a feat: add hmac-auth authorization method (#1035)
  • 49dd015 doc: update contribute.md doc (#1036)
  • f6f0a3b feat: support ApisixConsumer v2 (#989)
  • bef2010 doc: paraphrasing some descriptions (#1028)
  • 9bd4b71 chore: Changelog for 1.4.1 (#1029)
  • 537b947 doc: add apisix_pluginconfig document (#1025)
  • bb5104e feat: add wolf-rbac authorization method. (#1011)
  • 3cccd56 feat: add jwt-auth authorization method (#1009)
  • cd5063f e2e-test: add e2e tests and CRDs for ApisixTls v2 (#1014)
  • bac9813 feat: support ApisixClusterConfig v2 (#977)
  • e2f19b5 feat: support ApisixTls v2 (#967)
  • 75a4166 docs: added “how to access Apache APISIX Prometheus Metrics on k8s” (#973)
  • 670d671 feat:add authorization-annotation the ingress resource (#985)
  • 78efb00 feat: update an redirect annotation for ingress resource (#975)
  • 3a175e5 chore: modify metrics name apisix_bad_status_codes to apisix_status_codes (#1012)
  • f63a29f doc: add ‘enable authentication and restriction’ document (#972)
  • 1899d90 feat: improve the e2e test of referer-restriction plugin (#976)
  • 795be22 docs: fix link in certificate management docs (#1007)
  • 92b89b3 chore: update apisix to 2.13.1 (#996)
  • eefeec8 docs: update apisix_upstream.md (#983)
  • 4a0fc0c chore: Fix some code formats (#968)
  • 0f4391a refactor: encapsulate functions to reuse code (#971)
  • 64e2768 ci: add 3 plugin test cases for e2e (#965)
  • f081121 feat: add e2e test for serverless plugin (#964)
  • eb02429 feat: support forward-auth plugin (#937)
  • 77ab065 ci: add dependency-review (#963)
  • fe628f6 docs: fix subset field typo (#961)
  • aee6e78 fix ApisixConsumerBasicAuthValue password-yaml field error (#960)
  • 0790458 ci: fix server-info e2e test case(#959)
  • 22cfb5e Add a pre-check for E2E tests (#957)
  • 4bdc947 Split e2e test cases (#949)
  • de33d05 feat(e2e): add e2e test for prometheus (#942)
  • 7e4ec36 fix: ingress update event handler not filter by watching namespaces (#947)
  • b5ea236 docs: update the hard way. (#946)
  • f58f3d5 feat: change ApisixRoute to v2 api version (#943)
  • 3b99353 feat: introduce v2 apiversion (#939)
  • cb45119 doc: add doc about installing apisix ingress with kind (#933)
  • 4da91b7 chore: drop v2beta1 api version (#928)
  • 81831d5 docs: remove ApisixRoute v2beta1 & v2alphq1 (#930)
  • 0a66151 fix: watch all namespaces by default (#919)
  • 2178857 fix: ApisixRouteEvent type assertion (#925)
  • c9e0c96 docs: remove development from sidebar config (#923)
  • f31f520 docs: merge contribute.md and development.md (#909)
  • 11bd92b docs: upgrade apiVersion from v2beta1 to v2beta3 (#916)
  • 75098d1 chore: clean up useless code (#902)
  • 4025151 feat: format gin logger (#904)
  • 48c924c docs: add pre-commit todo in the development guide (#907)
  • 1159522 fix: controller err handler should ignore not found error (#893)
  • f84a083 feat: support custom registry for e2e test (#896)
  • 1ddbfa6 fix: fix ep resourceVersion comparison and clean up (#901)
  • 8348d01 chore: shorten the route name for Ingress transformations (#898)
  • b5448c3 fetching newest Endpoint before sync (#821)
  • bbaba6f fix: filter useless pod update event (#894)
  • 5f6a7c1 fix: avoid create pluginconfig in the tranlsation of route (#845)
  • 035c60e fix: check if stream_routes is disabled (#868)
  • 8d25525 docs: fix #887 (#890)
  • cc9b6be fix json unmarshal error when list plguins (#888)
  • e2475cf feat: add format tool (#885)
  • d30bef5 fix: endless retry if namespace doesn't exist (#882)
  • 27f0cfa update the-hard-way.md (#875)
  • 77383b8 fix ingress delete panic (#872)
  • 26a1f43 feat: add update command to Makefile (#881)
  • 545d22d chore: clean up v1 version related code (#867)
  • 32a096c fix: objects get from lister must be treated as read-only (#829)
  • 6b0c139 fix: ApisixClusterConfig e2e test case (#859)
  • df8316a rename command line options and update doc. (#848)
  • de52243 feat: ensure that the lease can be actively released before program shutdown to reduce the time required for failover (#827)
  • 81d59b5 chore: update ingress/comapre.go watchingNamespac from v2beta1 to v2beta3 (#832)
  • 3040cf5 fix: add v2beta3 register resources (#833)
  • 56d866b chore: Update NOTICE to 2022 (#834)
  • e40cc31 refactor: remove BaseURL and AdminKey in config (#826)
  • 2edc4da chore: fix typo in ApidixRoute CRD (#830)
  • 8364821 fix: consumer name contain “-” (#828)
  • ae69cd3 docs: Grafana Dashboard Configuration (#731)
  • 990971d chore: v1.4 release (#819)

Dependency Changes

  • github.com/beorn7/perks v1.0.1 new
  • github.com/cespare/xxhash/v2 v2.1.2 new
  • github.com/davecgh/go-spew v1.1.1 new
  • github.com/emicklei/go-restful/v3 v3.9.0 new
  • github.com/evanphx/json-patch v4.12.0 new
  • github.com/gin-contrib/sse v0.1.0 new
  • github.com/gin-gonic/gin v1.7.7 -> v1.8.1
  • github.com/go-logr/logr v1.2.3 new
  • github.com/go-openapi/jsonpointer v0.19.5 new
  • github.com/go-openapi/jsonreference v0.20.0 new
  • github.com/go-openapi/swag v0.22.3 new
  • github.com/go-playground/locales v0.14.0 new
  • github.com/go-playground/universal-translator v0.18.0 new
  • github.com/go-playground/validator/v10 v10.11.0 new
  • github.com/goccy/go-json v0.9.10 new
  • github.com/gogo/protobuf v1.3.2 new
  • github.com/golang/groupcache 41bb18bfe9da new
  • github.com/golang/protobuf v1.5.2 new
  • github.com/google/gnostic v0.6.9 new
  • github.com/google/go-cmp v0.5.8 new
  • github.com/google/gofuzz v1.1.0 new
  • github.com/hashicorp/errwrap v1.0.0 new
  • github.com/hashicorp/go-immutable-radix v1.3.0 new
  • github.com/hashicorp/go-memdb v1.3.2 -> v1.3.3
  • github.com/hashicorp/golang-lru v0.5.4 new
  • github.com/imdario/mergo v0.3.12 new
  • github.com/inconshreveable/mousetrap v1.0.0 new
  • github.com/josharian/intern v1.0.0 new
  • github.com/json-iterator/go v1.1.12 new
  • github.com/leodido/go-urn v1.2.1 new
  • github.com/mailru/easyjson v0.7.7 new
  • github.com/mattn/go-isatty v0.0.14 new
  • github.com/matttproud/golang_protobuf_extensions c182affec369 new
  • github.com/modern-go/concurrent bacd9c7ef1dd new
  • github.com/modern-go/reflect2 v1.0.2 new
  • github.com/munnerz/goautoneg a7dc8b61c822 new
  • github.com/pelletier/go-toml/v2 v2.0.2 new
  • github.com/pkg/errors v0.9.1 new
  • github.com/pmezard/go-difflib v1.0.0 new
  • github.com/prometheus/client_golang v1.11.0 -> v1.12.2
  • github.com/prometheus/common v0.32.1 new
  • github.com/prometheus/procfs v0.7.3 new
  • github.com/spf13/cobra v1.2.1 -> v1.5.0
  • github.com/spf13/pflag v1.0.5 new
  • github.com/stretchr/testify v1.7.0 -> v1.8.0
  • github.com/ugorji/go/codec v1.2.7 new
  • github.com/xeipuuv/gojsonpointer 4e3ac2762d5f new
  • github.com/xeipuuv/gojsonreference bd5ef7bd5415 new
  • go.uber.org/atomic v1.7.0 new
  • go.uber.org/multierr v1.7.0 -> v1.8.0
  • go.uber.org/zap v1.19.1 -> v1.23.0
  • golang.org/x/crypto 630584e8d5aa new
  • golang.org/x/mod 86c51ed26bb4 new
  • golang.org/x/net fe4d6282115f -> 46097bf591d3
  • golang.org/x/oauth2 ee480838109b new
  • golang.org/x/sys bce67f096156 -> fb04ddd9f9c8
  • golang.org/x/term 03fcf44c2211 new
  • golang.org/x/text v0.3.7 new
  • golang.org/x/time 90d013bbcef8 new
  • golang.org/x/tools v0.1.12 new
  • google.golang.org/appengine v1.6.7 new
  • google.golang.org/protobuf v1.28.0 new
  • gopkg.in/inf.v0 v0.9.1 new
  • gopkg.in/yaml.v3 v3.0.1 new
  • k8s.io/api v0.22.4 -> v0.25.1
  • k8s.io/apimachinery v0.22.4 -> v0.25.1
  • k8s.io/client-go v0.22.4 -> v0.25.1
  • k8s.io/code-generator v0.22.1 -> v0.25.1
  • k8s.io/gengo 391367153a38 new
  • k8s.io/klog/v2 v2.80.1 new
  • k8s.io/kube-openapi a70c9af30aea new
  • k8s.io/utils ee6ede2d64ed new
  • sigs.k8s.io/json f223a00ba0e2 new
  • sigs.k8s.io/structured-merge-diff/v4 v4.2.3 new
  • sigs.k8s.io/yaml v1.3.0 new

Previous release can be found at 1.4.0

1.5.0-rc1

Welcome to the 1.5.0 release of apisix-ingress-controller!

This is a feature release.

Highlights

The API version of all custom resources has been upgraded to v2 in this release and mark v2beta3 as deprecated. We plan to remove the v2beta2 API version in the next release. Please go to #707 for detail.

We have added partial support for Gateway API, which is not enabled by default, you can set enable_gateway_api=true to enable it.

Ingress resources can now use all APISIX plugin configurations by setting the annotation k8s.apisix.apache.org/plugin-config-name=xxx.

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • Jintao Zhang
  • Sarasa Kisaragi
  • Xin Rong
  • John Chever
  • cmssczy
  • dependabot[bot]
  • nevercase
  • Gallardot
  • Nic
  • lsy
  • mango
  • Fatpa
  • Hoshea Jiang
  • JasonZhu
  • Xin Rong
  • Yu.Bozhong
  • seven dickens
  • FesonX
  • GhangZh
  • JasonZhu
  • Kowsz
  • LetsGO
  • Sindweller
  • SkyeYoung
  • Zack Sun
  • bin-ya
  • champly
  • chen zhuo
  • fengxsong
  • greenhandatsjtu
  • hahayyun
  • hf400159
  • wangyunpeng
  • 罗泽轩

Changes

  • cccad72 chore: mark v2beta3 deprecated (#1198)
  • 698ab6d chore: Using APISIX 2.15.0 for CI (#1197)
  • 8094868 e2e: add sync case (#1196)
  • 37a8e5c fix: translate error of old Ingress (#1193)
  • 339531f doc: add a notice about the compatibility of Ingress and Dashboard (#1195)
  • 2cc586b fix: apisix_upstream sync panic (#1192)
  • 6cc718b helm: update deploy cluster role (#1131)
  • 3d720c0 fix: translate error of old ApisixRoute (#1191)
  • 8b51c6e docs: update all api-version to v2 (#1189)
  • 5f45b63 fix: ScopeQuery should be case sensitive (#1168) (#1188)
  • af03e7a chore: update APISIX v2.14.1 (#1145)
  • 516e677 chore(deps): bump github.com/gin-gonic/gin from 1.7.7 to 1.8.1 (#1184)
  • a0bc739 fix: trigger ApisixRoute event when service is created (#1152)
  • 1765ec9 test: keep namespace when test failed in dev mod (#1158)
  • b1add53 Chore dep update (#1180)
  • 8c2cfbc chore(deps): bump github.com/stretchr/testify from 1.7.0 to 1.8.0 (#1175)
  • 1a5f2c1 chore(deps): bump github.com/spf13/cobra from 1.2.1 to 1.5.0 (#1176)
  • 3299260 chore(deps): bump k8s.io/client-go and go-memdb etc. (#1172)
  • 628abb9 ci: upgrade e2e-test-ci (#1149)
  • 9a6bd92 chore(deps): bump github.com/gruntwork-io/terratest in /test/e2e (#1156)
  • edb19cd chore(deps): bump github.com/gorilla/websocket in /test/e2e (#1114)
  • f198f33 chore(deps): some dependency updates (#1160)
  • e75f7e9 chore: change description and labels for this project (#1150)
  • 35ca03c test: add e2e tests and CRDs for ApisixUpstream v2 (#1147)
  • 6cf8bb7 feat: Add annotations to combine ApisixPluginConfig with k8s ingress resource (#1139)
  • 73498bd docs: update crd version (#1134)
  • a649751 feat: ApisixUpstream v2 (#1141)
  • a73b52d feat: support endpointslice, and improve test/e2e/endpoints.go tests. (#1140)
  • f0217ae ci: pin skywalking-eyes to release (#1143)
  • 62e0ea2 chore: add log for syncManifest delete upstream (#1132)
  • 374f865 make api version const consistent (#1133)
  • 93c10e6 fix: verify through the cache first, then delete (#1135)
  • a642b14 doc: fix enable-authentication-and-restriction.md link failed (#1137)
  • e25abdb fix: ns should unwatch after unlabeling it (#1130)
  • 398f816 e2e-test: Optimize the runtime of ingress/features, and support more default value in NewScaffold (#1128)
  • 4d172a0 chore(deps): bump github.com/stretchr/testify in /test/e2e (#1113)
  • aae2105 feat: ingress annotations support enable websocket (#1101)
  • 70c0870 chore(deps): bump github.com/gruntwork-io/terratest from 0.32.8 to 0.40.17 in /test/e2e (#1112)
  • 4bc9f0c fix: update Makefile verify-mdlint (#1126)
  • 4aa2ca5 test: support ApisixRoute v2 and split suit-plugins (#1103)
  • 810f1a1 docs: rename practices to tutorials and add index (#1123)
  • b1dc75e chore: enable dependabot for security (#1111)
  • 0e1f8d4 fix : The ingress backend is modified several times, resulting in residual update events (#1040)
  • b33d70c feat: support gateway TLSRoute (#1087)
  • 49991e2 feat: sync CRD and ingress resource to apisix mechanism. (#1102)
  • f453e80 chore: enable stale GitHub action (#1107)
  • 9e0c658 fix: upstream nodes filed IP occupation. (#1064)
  • d46b8e0 feat: support v2 in resource compare (#1093)
  • 0f95dbe doc: add v2 CRD reference (#1068)
  • 5756273 infra: update golang 1.18 (#1095)
  • a69a55a Revert “feat: sync CRD and ingress resource to APISIX mechanism. (#1022)” (#1099)
  • 6394cdd feat: sync CRD and ingress resource to APISIX mechanism. (#1022)
  • 50d6026 fix: make ApisixRouteHTTPBackend support serivce name (#1096)
  • 3214c69 fix: e2e robustness. (#1078)
  • c48a62a feat: support GatewayClass, refactor gateway modules (#1079)
  • a0b88d1 fix: tag for keyAuth field (#1080)
  • f0d64b6 docs: correct typo & link (#1073)
  • 3520830 e2e: gateway api httproute (#1060)
  • 2af39c9 docs: add how to change Admin API key for APISIX (#1031)
  • 96dd07f e2e-test: add e2e tests for ApisixPluginConfig v2 (#1067)
  • d3a823f doc: update enable-authentication-and-restriction, jwt-auth and wolf-rbac examples. (#1018)
  • deb0440 docs: add “how to use go plugin runner with APISIX Ingress” (#994)
  • 8d76428 e2e-test: upgrade to ginkgo v2 (#1046)
  • 408eb0d feat: support ApisixPluginConfig v2 (#984)
  • e1d496d e2e-test: add e2e tests and CRDs for ApisixConsumer v2 (#1044)
  • 6c7452f feat: support gateway API HTTPRoute (#1037)
  • 5477fb0 test: fix wolf-rbac and mTLS test cases (#1055)
  • df7a724 e2e-test: add e2e tests and CRDs for ApisixClusterConfig v2 (#1016)
  • 25daa6e feat: add csrf plugin annotation in ingress resource (#1023)
  • 59ba41a feat: add hmac-auth authorization method (#1035)
  • 49dd015 doc: update contribute.md doc (#1036)
  • f6f0a3b feat: support ApisixConsumer v2 (#989)
  • bef2010 doc: paraphrasing some descriptions (#1028)
  • 9bd4b71 chore: Changelog for 1.4.1 (#1029)
  • 537b947 doc: add apisix_pluginconfig document (#1025)
  • bb5104e feat: add wolf-rbac authorization method. (#1011)
  • 3cccd56 feat: add jwt-auth authorization method (#1009)
  • cd5063f e2e-test: add e2e tests and CRDs for ApisixTls v2 (#1014)
  • bac9813 feat: support ApisixClusterConfig v2 (#977)
  • e2f19b5 feat: support ApisixTls v2 (#967)
  • 75a4166 docs: added “how to access Apache APISIX Prometheus Metrics on k8s” (#973)
  • 670d671 feat:add authorization-annotation the ingress resource (#985)
  • 78efb00 feat: update an redirect annotation for ingress resource (#975)
  • 3a175e5 chore: modify metrics name apisix_bad_status_codes to apisix_status_codes (#1012)
  • f63a29f doc: add ‘enable authentication and restriction’ document (#972)
  • 1899d90 feat: improve the e2e test of referer-restriction plugin (#976)
  • 795be22 docs: fix link in certificate management docs (#1007)
  • 92b89b3 chore: update apisix to 2.13.1 (#996)
  • eefeec8 docs: update apisix_upstream.md (#983)
  • 4a0fc0c chore: Fix some code formats (#968)
  • 0f4391a refactor: encapsulate functions to reuse code (#971)
  • 64e2768 ci: add 3 plugin test cases for e2e (#965)
  • f081121 feat: add e2e test for serverless plugin (#964)
  • eb02429 feat: support forward-auth plugin (#937)
  • 77ab065 ci: add dependency-review (#963)
  • fe628f6 docs: fix subset field typo (#961)
  • aee6e78 fix ApisixConsumerBasicAuthValue password-yaml field error (#960)
  • 0790458 ci: fix server-info e2e test case(#959)
  • 22cfb5e Add a pre-check for E2E tests (#957)
  • 4bdc947 Split e2e test cases (#949)
  • de33d05 feat(e2e): add e2e test for prometheus (#942)
  • 7e4ec36 fix: ingress update event handler not filter by watching namespaces (#947)
  • b5ea236 docs: update the hard way. (#946)
  • f58f3d5 feat: change ApisixRoute to v2 api version (#943)
  • 3b99353 feat: introduce v2 apiversion (#939)
  • cb45119 doc: add doc about installing apisix ingress with kind (#933)
  • 4da91b7 chore: drop v2beta1 api version (#928)
  • 81831d5 docs: remove ApisixRoute v2beta1 & v2alphq1 (#930)
  • 0a66151 fix: watch all namespaces by default (#919)
  • 2178857 fix: ApisixRouteEvent type assertion (#925)
  • c9e0c96 docs: remove development from sidebar config (#923)
  • f31f520 docs: merge contribute.md and development.md (#909)
  • 11bd92b docs: upgrade apiVersion from v2beta1 to v2beta3 (#916)
  • 75098d1 chore: clean up useless code (#902)
  • 4025151 feat: format gin logger (#904)
  • 48c924c docs: add pre-commit todo in the development guide (#907)
  • 1159522 fix: controller err handler should ignore not found error (#893)
  • f84a083 feat: support custom registry for e2e test (#896)
  • 1ddbfa6 fix: fix ep resourceVersion comparison and clean up (#901)
  • 8348d01 chore: shorten the route name for Ingress transformations (#898)
  • b5448c3 fetching newest Endpoint before sync (#821)
  • bbaba6f fix: filter useless pod update event (#894)
  • 5f6a7c1 fix: avoid create pluginconfig in the tranlsation of route (#845)
  • 035c60e fix: check if stream_routes is disabled (#868)
  • 8d25525 docs: fix #887 (#890)
  • cc9b6be fix json unmarshal error when list plguins (#888)
  • e2475cf feat: add format tool (#885)
  • d30bef5 fix: endless retry if namespace doesn't exist (#882)
  • 27f0cfa update the-hard-way.md (#875)
  • 77383b8 fix ingress delete panic (#872)
  • 26a1f43 feat: add update command to Makefile (#881)
  • 545d22d chore: clean up v1 version related code (#867)
  • 32a096c fix: objects get from lister must be treated as read-only (#829)
  • 6b0c139 fix: ApisixClusterConfig e2e test case (#859)
  • df8316a rename command line options and update doc. (#848)
  • de52243 feat: ensure that the lease can be actively released before program shutdown to reduce the time required for failover (#827)
  • 81d59b5 chore: update ingress/comapre.go watchingNamespac from v2beta1 to v2beta3 (#832)
  • 3040cf5 fix: add v2beta3 register resources (#833)
  • 56d866b chore: Update NOTICE to 2022 (#834)
  • e40cc31 refactor: remove BaseURL and AdminKey in config (#826)
  • 2edc4da chore: fix typo in ApidixRoute CRD (#830)
  • 8364821 fix: consumer name contain “-” (#828)
  • ae69cd3 docs: Grafana Dashboard Configuration (#731)
  • 990971d chore: v1.4 release (#819)

Dependency Changes

  • github.com/beorn7/perks v1.0.1 new
  • github.com/cespare/xxhash/v2 v2.1.2 new
  • github.com/davecgh/go-spew v1.1.1 new
  • github.com/emicklei/go-restful/v3 v3.8.0 new
  • github.com/evanphx/json-patch v4.12.0 new
  • github.com/gin-contrib/sse v0.1.0 new
  • github.com/gin-gonic/gin v1.7.7 -> v1.8.1
  • github.com/go-logr/logr v1.2.3 new
  • github.com/go-openapi/jsonpointer v0.19.5 new
  • github.com/go-openapi/jsonreference v0.20.0 new
  • github.com/go-openapi/swag v0.21.1 new
  • github.com/go-playground/locales v0.14.0 new
  • github.com/go-playground/universal-translator v0.18.0 new
  • github.com/go-playground/validator/v10 v10.11.0 new
  • github.com/goccy/go-json v0.9.10 new
  • github.com/gogo/protobuf v1.3.2 new
  • github.com/golang/groupcache 41bb18bfe9da new
  • github.com/golang/protobuf v1.5.2 new
  • github.com/google/gnostic v0.6.9 new
  • github.com/google/go-cmp v0.5.7 new
  • github.com/google/gofuzz v1.1.0 new
  • github.com/hashicorp/errwrap v1.0.0 new
  • github.com/hashicorp/go-immutable-radix v1.3.0 new
  • github.com/hashicorp/go-memdb v1.3.2 -> v1.3.3
  • github.com/hashicorp/golang-lru v0.5.4 new
  • github.com/imdario/mergo v0.3.12 new
  • github.com/inconshreveable/mousetrap v1.0.0 new
  • github.com/josharian/intern v1.0.0 new
  • github.com/json-iterator/go v1.1.12 new
  • github.com/leodido/go-urn v1.2.1 new
  • github.com/mailru/easyjson v0.7.7 new
  • github.com/mattn/go-isatty v0.0.14 new
  • github.com/matttproud/golang_protobuf_extensions c182affec369 new
  • github.com/modern-go/concurrent bacd9c7ef1dd new
  • github.com/modern-go/reflect2 v1.0.2 new
  • github.com/munnerz/goautoneg a7dc8b61c822 new
  • github.com/pelletier/go-toml/v2 v2.0.2 new
  • github.com/pkg/errors v0.9.1 new
  • github.com/pmezard/go-difflib v1.0.0 new
  • github.com/prometheus/client_golang v1.11.0 -> v1.12.2
  • github.com/prometheus/common v0.32.1 new
  • github.com/prometheus/procfs v0.7.3 new
  • github.com/spf13/cobra v1.2.1 -> v1.5.0
  • github.com/spf13/pflag v1.0.5 new
  • github.com/stretchr/testify v1.7.0 -> v1.8.0
  • github.com/ugorji/go/codec v1.2.7 new
  • github.com/xeipuuv/gojsonpointer 4e3ac2762d5f new
  • github.com/xeipuuv/gojsonreference bd5ef7bd5415 new
  • go.uber.org/atomic v1.7.0 new
  • go.uber.org/multierr v1.7.0 -> v1.8.0
  • go.uber.org/zap v1.19.1 -> v1.21.0
  • golang.org/x/crypto 630584e8d5aa new
  • golang.org/x/mod 86c51ed26bb4 new
  • golang.org/x/net fe4d6282115f -> 46097bf591d3
  • golang.org/x/oauth2 d3ed0bb246c8 new
  • golang.org/x/sys bce67f096156 -> 8c9f86f7a55f
  • golang.org/x/term 03fcf44c2211 new
  • golang.org/x/text v0.3.7 new
  • golang.org/x/time 90d013bbcef8 new
  • golang.org/x/tools v0.1.11 new
  • golang.org/x/xerrors 65e65417b02f new
  • google.golang.org/appengine v1.6.7 new
  • google.golang.org/protobuf v1.28.0 new
  • gopkg.in/inf.v0 v0.9.1 new
  • gopkg.in/yaml.v3 v3.0.1 new
  • k8s.io/api v0.22.4 -> v0.24.3
  • k8s.io/apimachinery v0.22.4 -> v0.24.3
  • k8s.io/client-go v0.22.4 -> v0.24.3
  • k8s.io/code-generator v0.22.1 -> v0.24.3
  • k8s.io/gengo 397b4ae3bce7 new
  • k8s.io/klog/v2 v2.70.1 new
  • k8s.io/kube-openapi 011e075b9cb8 new
  • k8s.io/utils 3a6ce19ff2f9 new
  • sigs.k8s.io/json 9f7c6b3444d2 new
  • sigs.k8s.io/structured-merge-diff/v4 v4.2.1 new
  • sigs.k8s.io/yaml v1.3.0 new

Previous release can be found at 1.4.0

1.4.1

Welcome to the 1.4.1 release of apisix-ingress-controller!

This is a Patch version release.

Highlights

Roadmap

In next release(v1.5), custom resource's API version v2 will be GA released. Please go to #707 for detail.

Bug fixes

  • fix: consumer name contain “-” #828
  • fix: fix typo in ApidixRoute CRD #830
  • fix: add v2beta3 register resources #833
  • fix: ApisixClusterConfig e2e test case #859
  • fix: objects get from lister must be treated as read-only #829
  • fix ingress delete panic #872
  • fix json unmarshal error when list plguins #888
  • fix: check if stream_routes is disabled #868
  • fix: avoid create pluginconfig in the tranlsation of route #845
  • fix: filter useless pod update event #894
  • fix: fix ep resourceVersion comparison and clean up #901
  • fix: ingress update event handler not filter by watching namespaces #947

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • Jintao Zhang
  • Nic
  • cmssczy
  • nevercase
  • JasonZhu
  • Sarasa Kisaragi
  • Xin Rong
  • Yu.Bozhong
  • champly
  • chen zhuo

Changes

  • 8a257c4 chore: fix dead links
  • c90b602 ci: trigger v1.4.0 branch jobs
  • d0bc591 chore: revert isWatchingNamespace to namespaceWatching
  • e259826 fix ApisixConsumerBasicAuthValue password-yaml field error (#960)
  • 4d087b3 fix: ingress update event handler not filter by watching namespaces (#947)
  • 46da0e2 docs: upgrade apiVersion from v2beta1 to v2beta3 (#916)
  • 9a8c7ce chore: clean up useless code (#902)
  • eb90123 fix: fix ep resourceVersion comparison and clean up (#901)
  • db250da chore: shorten the route name for Ingress transformations (#898)
  • 3f14edd fetching newest Endpoint before sync (#821)
  • 8329b7c fix: filter useless pod update event (#894)
  • cbcae44 fix: avoid create pluginconfig in the tranlsation of route (#845)
  • e0518a4 fix: check if stream_routes is disabled (#868)
  • 90dd10e fix json unmarshal error when list plguins (#888)
  • 88cc0b3 fix ingress delete panic (#872)
  • 64eb176 chore: clean up v1 version related code (#867)
  • bf1d10e fix: objects get from lister must be treated as read-only (#829)
  • d1bb4ac fix: ApisixClusterConfig e2e test case (#859)
  • fd76c2a feat: ensure that the lease can be actively released before program shutdown to reduce the time required for failover (#827)
  • 4c94c76 chore: update ingress/comapre.go watchingNamespac from v2beta1 to v2beta3 (#832)
  • f9c60c2 fix: add v2beta3 register resources (#833)
  • 4a2ebaf chore: fix typo in ApidixRoute CRD (#830)
  • 46fcf3f fix: consumer name contain “-” (#828)
  • b7dd90a chore: v1.4 release

Dependency Changes

This release has no dependency changes

Previous release can be found at 1.4.0

1.4.0

Welcome to the 1.4.0 release of apisix-ingress-controller!

This is a GA release.

Highlights

Roadmap

In next release(v1.5), custom resource's API version v2 will be GA released. Please go to #707 for detail.

Breaking Changes

  • In this release(v1.4), all custom resource's API version has been upgraded to apisix.apache.org/v2beta3, and we deleted apisix.apache.org/v2beta3 and apisix.apache.org/v2alpha1. Please see #746

New Features

  • We have introduced the apisix.apache.org/v2beta3 API version for all custom resources and deleted v2alpha1 and v1 API version #746
  • Initial support for Gateway API #789
  • Add a new ApisixPluginConfig CRD for reuse common plugin configurations. #638
  • Support regex in Ingress path #779
  • We can update the load balancing IP of the Ingress, and it can work in various public cloud environments #740

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • Jintao Zhang
  • kv
  • nevercase
  • LXM
  • Nic
  • chen zhuo
  • Mayo Cream
  • Nic
  • Alex Zhang
  • Baoyuan
  • Brhetty
  • Canh Dinh
  • Jintao Zhang
  • Sindweller
  • Yu.Bozhong
  • huzais520
  • oliver
  • rupipal
  • zhang lun hai

Changes

  • a1ef639 feat: add ApisixPluginConfig controller loop and e2e test case (#815)
  • 819b003 fix: delete the cluster object when give up the leadership (#774)
  • 970df2b feat: Initial support for Gateway API (#789)
  • 7b62375 fix: some wrong or invalid logs (#804)
  • 52b2e2c docs(READEME.md): change img size (#805)
  • eeb7a49 chore: specify the K8S cluster version used for the test (#797)
  • d9fa775 chore: remove ApisixPluginConfig v2beta2 version (#795)
  • 6110bf5 feat: implement apisix healthz check (#770)
  • 4a6509c chore: Issue & PR template (#771)
  • d4c5b09 fix: When the spec field of the ApisixUpstream resource is empty, it will panic (#794)
  • 472fbcd feat: add ApisixPluginConfigs crd to v2beta3 (#792)
  • 413e7ca feat: implement pluginconfig clients (#638) (#772)
  • fe4a824 fix: ingress LB status records (#788)
  • 1b2bc34 docs: Optimize installation documentation (#785)
  • 4e84eb8 feat: support regex in path (#779)
  • 1bbadf0 feat: add v2beta3 (#746)
  • 26d5c5c Docs: add more config example (#777)
  • 1141e15 fix: test case param error (#780)
  • 0c6de2d feat: update Ingress LB status (#740)
  • f470867 fix: ingress do not watching any namespace when namespaceSelector is empty (#742)
  • 62d7897 fix: If resource synchronization retry occurs, other events of the same resource will be blocked (#760)
  • b127ff4 feat: init ApisixPluginConfig crd #4 (#638) (#694)
  • 703c6b2 fix: ApisixRoute backendPoint duplicate (#732) (#734)
  • 9fe7298 remove route timeout default value (#733)
  • 81f5ea1 feat: support https and grpcs as upstream scheme as well as mTLS mode (#755)
  • 9f2cd7f feat: support environment variable in config file (#745)
  • bdf6721 Fix bug typo in yaml (#763)
  • 719c42f docs: update proxy-the-httpbin-service.md (#757)
  • 580e7d4 feat: expose more prometheus metrics (#670)
  • 774077a docs: Customize the namespace used for installation (#747)
  • 4a862e2 fix: use independent dns service for UDP e2e test (#753)
  • 62b7162 fix: wrong var type in response_rewrite e2e (#754)
  • da30386 fix field tag omitempty (#723)
  • 7063189 docs: add upgrade guide (#735)
  • 65f7c88 feat: add label-selector for watching namespace (#715)
  • dc196ef fix unmarshal apisix/upstream field nodes be null (#724)
  • 2a73216 fix: verify generation in record status (#706)
  • 97fdc90 fix: ignore delete pod cache error msg (#714)
  • fa27b03 chore: fix spelling error in modules.png (#717)
  • 68125e3 chore: v1.3 release (#716)

Dependency Changes

  • github.com/gin-gonic/gin v1.6.3 -> v1.7.7
  • github.com/hashicorp/go-memdb v1.0.4 -> v1.3.2
  • github.com/hashicorp/go-multierror v1.1.0 -> v1.1.1
  • github.com/prometheus/client_golang v1.10.0 -> v1.11.0
  • github.com/spf13/cobra v1.1.1 -> v1.2.1
  • go.uber.org/multierr v1.3.0 -> v1.7.0
  • go.uber.org/zap v1.13.0 -> v1.19.1
  • golang.org/x/net 4163338589ed -> fe4d6282115f
  • k8s.io/api v0.21.1 -> v0.22.4
  • k8s.io/apimachinery v0.21.1 -> v0.22.4
  • k8s.io/client-go v0.21.1 -> v0.22.4
  • k8s.io/code-generator v0.21.1 -> v0.22.1
  • sigs.k8s.io/gateway-api v0.4.0 new

Previous release can be found at 1.3.0

1.3.0

Welcome to the 1.3.0 release of apisix-ingress-controller!

This is a GA release.

Highlights

Roadmap

In next release(v1.4), all custom resource versions will be upgraded to version v2beta3, and version v2 will be GA released in version v1.5. Please go to #707 for detail.

Breaking Changes

  • In this release(v1.3), the CRD version has been upgraded to apiextensions.k8s.io/v1, which means that the minimum version of Kubernetes supported by APISIX Ingress is v1.16 and later.
  • The ValidatingWebhookConfiguration version has been upgraded to admissionregistration.k8s.io/v1, which means that if you want using the default Dynamic Admission Control, you need ensure that the Kubernetes cluster is at least as new as v1.16.

New Features

  • We have introduced the v2beta2 version of ApisixRoute and will drop support for v2alpha1 ApisixRoute #698
  • Add cert-manager support #685
  • Add full compare when APISIX Ingress startup #680
  • Support TLS for Ingress v1 #634
  • Add admission server and a validation webhook for plugins #573
  • Add timeout field for ApisixRoute CR #609
  • Add new metrics apisix_ingress_controller_check_cluster_health and apisix_ingress_controller_sync_success_total #627

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • kv
  • Hoshea Jiang
  • Jintao Zhang
  • Sarasa Kisaragi
  • Baoyuan
  • SergeBakharev
  • Sindweller
  • chen zhuo
  • liuxiran
  • oliver

Changes

  • a290f12 docs: correct helm repo (#657)
  • a01888b feat: Change field retries to value from pointer. (#647)
  • 6f46ac2 Make webhook cover ApisixRoute v2beta2 (#705)
  • 9dd4f40 feat: add webhooks for consumer/tls/upstream (#667)
  • 657a1fd doc: add grpc proxy (#699)
  • 88be11a fix: CRD v1 preserve unknown fields (#702)
  • d46b248 feat: upgrade ApisixRoute v2beta2 apiversion. (#698)
  • 736aba3 feat: upgrade admission apiversion to v1 (#697)
  • 0630ac5 feat: upgrade CRD version to v1 (#693)
  • 957c315 feat: add full compare when ingress startup (#680)
  • 1b71fa3 feat: support cert-manager (#685)
  • 3e9bdbf fix: the fields in UpstreamPassiveHealthCheckUnhealthy should be timeouts (#687)
  • 5c9cdbe fix: remove the step of deleting httpbinsvc (#677)
  • 7216532 Remove volumeMounts when webhook is disabled (#679)
  • 1e1be74 add metric: check_cluster_health and sync_operation_total (#627)
  • 6a8658d fix: add initContainers to verify if apisix is ready (#660)
  • d4a832c feat: route crd add timeout fields (#609)
  • a9960c2 Add API for getting schema of route, upstream and consumer (#655)
  • 75a2aaa feat: Implement the admission server and a validation webhook for plugins (#573)
  • 270a176 fix: e2e failure due to count returned by APISIX (#640)
  • c284f38 docs: update practices index for website (#654)
  • 9ab367f docs: Supplement FAQ for the error log ‘no matches for kind “ApisixRoute” in version “apisix.apache.org/v2beta1”’ (#651)
  • 62b7590 feat: support TLS for ingress v1 (#634)
  • 68b7d7d chore: release v1.2.0 (#633)
  • d537ddc feat: add link check (#635)
  • d7128a1 chore: skip CodeQL if go files have no changes (#636)
  • d8854c3 docs: fix config.json (#628)

Dependency Changes

  • github.com/fsnotify/fsnotify v1.5.0 new
  • github.com/prometheus/client_golang v1.7.1 -> v1.10.0
  • github.com/slok/kubewebhook/v2 v2.1.0 new
  • github.com/stretchr/testify v1.6.1 -> v1.7.0
  • github.com/xeipuuv/gojsonschema v1.2.0 new
  • golang.org/x/sys 0f9fa26af87c -> bce67f096156

Previous release can be found at 1.2.0

1.2.0

Welcome to the 1.2.0 release of apisix-ingress-controller!

This is a GA release.

Highlights

New Features

  • Support ingress v1beta1 HTTPS #596
  • Implement schema API #601

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • kv
  • Jintao Zhang
  • Baoyuan
  • Hoshea Jiang
  • chen zhuo
  • okaybase
  • yuanfeng0905
  • 天使莫忆

Changes

  • 3ab162b chore: bump version v1.2.0
  • 3ad1a1c docs: fix install docs (#579)
  • 499962b docs: ApisixRoute v2alpha1 is deprecated (#623)
  • c1de18f docs: update mTLS support in ApisixTls reference (#624)
  • 3cd6892 fix: ApisixRoute printcolumns (#626)
  • 91d985e fix field tag omiteempty (#622)
  • f78248a fix: sync apisix failed when use v2beta1 ApisixRoute (#620)
  • 00ff017 ci: add ingress log when e2e failed (#616)
  • e5441a3 feat: implement schema API (#601)
  • 5635652 fix: timer leak memory (#591)
  • 812e4bd docs: add declarations for the version of APISIX (#595)
  • 915a5d1 test: add assert for test cases (#613)
  • d12a900 fix: add v2beta1 logic (#615)
  • ac25764 feat: support ingress v1beta1 https (#596)
  • 866d0bf docs: modify the format of FAQ.md (#605)
  • 2d12c3f docs: add v2beta1 description (#602)
  • 7291212 fix: do not need to record status when ApisixUpstream removed (#589)
  • c78c823 chore: merge from v1.1 (#583)
  • e649c50 chore: add udp usage & upgrade the verion of ApisixRoute (#585)
  • 57ec6da fix: misspell in FAQ (#577)

Dependency Changes

  • github.com/google/uuid v1.2.0 new
  • github.com/onsi/ginkgo v1.16.4 new
  • golang.org/x/net 3d97a244fca7 -> 4163338589ed
  • golang.org/x/sys 0f9fa26af87c new
  • golang.org/x/tools v0.1.5 new

Previous release can be found at 1.1.0

1.1.0

Welcome to the 1.1.0 release of apisix-ingress-controller!

This is a GA release.

  • an available Kubernetes cluster (version >= 1.15)
  • an available Apache APISIX (version >= 2.7)

Highlights

New Features

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • Alex Zhang
  • Fang
  • kv
  • Jintao Zhang
  • Shuyang Wu
  • benson211

Changes

  • 67f3fd9 chore: endpointslice controller (#574)
  • 1c17b41 feat: add logic for ApisixRoute v2beta1 (#576)
  • a754f69 feat: abstract the endpoints-related logic (#563)
  • 4b16e28 chore: cleanup apisixservice. (#566)
  • 534fab3 feat: add v2beta1 structure for ApisixRoute (#572)
  • c871bdf test: dump the namespace content when e2e test cases failed (#571)
  • dbc8133 doc: update k3s-rke.md (#568)
  • 70d0100 chore: update config of installation by Kustomize (#557)
  • 2122d76 docs: clarify installation by Kustomize (#558)
  • b4a6889 Update default version in Makefile (#556)
  • f5cc76e chore: remove cancel-workflow.yml since no use (#550)

Dependency Changes

  • github.com/fsnotify/fsnotify v1.4.9 new
  • github.com/gruntwork-io/terratest v0.32.8 new
  • github.com/hashicorp/go-multierror v1.0.0 -> v1.1.0
  • k8s.io/api v0.20.2 -> v0.21.1
  • k8s.io/apimachinery v0.20.2 -> v0.21.1
  • k8s.io/client-go v0.20.2 -> v0.21.1

Previous release can be found at 1.0.0

1.0.0

Welcome to the 1.0.0 release of apisix-ingress-controller!

This is the first GA release.

  • an available Kubernetes cluster (version >= 1.14)
  • an available Apache APISIX (version >= 2.7)

Highlights

New Features

  • Support blocklist-source-range annotation for Ingress source #446
  • Add ApisixConsumer CRD #462
  • Support rewrite annotation for Ingress source #480
  • Support http-to-https redirect annotation for Ingress source #484
  • Add health check to apisix-admin and make the leader election recyclable 499
  • Support mTLS for ApisixTls #492
  • Support authentication for ApisixRoute #528

Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.

Contributors

  • Alex Zhang
  • Sarasa Kisaragi
  • Jintao Zhang
  • kv
  • Shuyang Wu
  • Daming
  • Fang
  • Ayush das
  • Donghui0
  • Shivani chauhan
  • Yuelin Zheng
  • guoqqqi
  • 罗泽轩

Changes

  • f3ab30b docs: modify readme (#543)
  • f9df546 ci: do not run workflows for draft PRs (#542)
  • fca6211 chore: add authentication for ApisixRoute (#528)
  • 28c584e chore: remove echo plugin's auth test case. (#534)
  • 1eee479 fix: nil pointer dereference (#529)
  • 7379d57 docs: removed navigation title from sidebar to docs dropdown (#531)
  • 2bf4b6b fix: add namespace for subjects of ClusterRoleBinding (#527)
  • d3ec856 ci: use concurrency to cancel workflow (#525)
  • 5c1aa5e docs: add docs about Ingress feature comparison (#526)
  • d510a8a doc: update development.md (#524)
  • f6cb4f9 feat: consumer controller loop (#516)
  • 3337be7 feat: subset changes in controllers (#507)
  • c6ac8a4 fix: CI path filter (#522)
  • fa0d8a6 ci: remove stale ci/spell-checker configuration (#519)
  • 3d9fd07 ci: add changes filter (#520)
  • 38290a2 feat: ApisixTls support mTLS (#492)
  • 029c0d7 feat: add events and status for ApisixClusterConfig resource (#502)
  • a89be23 feat: subset translation (#497)
  • 87b7229 Update license-checker.yml (#510)
  • 495c631 chore: add verify scripts and verify-codegen CI (#513)
  • 2f2e6f8 feat: add permission to events, fix missing subresources in crd. (#514)
  • 880d573 ci: fix cancel workflow not working (#509)
  • cddcd29 feat: add pod controller and pod cache (#490)
  • 23e5ebd feat: apisixconsumer translator (#474)
  • fe2db92 chore: add docker ignore to avoid unwanted cache miss (#506)
  • d87f856 ci: fix cancel workflow not working (#508)
  • a3f58d0 fix: ack.md link fix (#503)
  • 553655b chore: add dnsPolicy for sample deployment (#498)
  • f089ffe test: remove custom apisix-default.yaml (#494)
  • b7736db ci: cancel duplicate workflow to reduce CI queue time (#505)
  • 582c4b3 chore: add health check to apisix-admin and make the leader election recyclable (#499)
  • 77a06cc feat: add support for http-to-https redirect annotation (#484)
  • fa98443 chore: regenerate codes (#491)
  • 6630aac fix: ingress_class configuration invalid(#475) (#477)
  • e8eddcc docs: ingress apisix the hard way (#479)
  • 36de069 feat: codegen script (#487)
  • 1d7b143 feat: support rewrite annotation (#480)
  • 5af1fb4 feat: add essential data structures for service subset selector (#489)
  • a16e980 fix: fatal error reported when run make build in release src (#485)
  • 1dd5087 chore: consumer data structures (#470)
  • d6d3796 chore: fix e2e ip-restriction plugin text (#488)
  • 92896f1 chore: e2e case for tcp proxy is unstable\nclose #473 (#486)
  • bc71e3e chore: add apisixconsumer data structures (#462)
  • 269cf07 test: add basic headless service e2e test (#466)
  • 1ffa862 fix: event record scheme error (#469)
  • 456fbd2 fix: remove upstream which is ref by multi-routes cause retry (#472)
  • a7e187b minor: optimize log message when the endpoint does not have a corresponding service (#458)
  • 63ae709 chore: fix broken links (#467)
  • 0bdd24b chore: change the required PR approving number to 2 (#463)
  • 015940c docs: fix APISIX helm installation (#459)
  • 4a55307 fix: add status subresource permission in clusterRole (#452)
  • 5d479ae feat: blocklist-source-range annotation (#446)
  • 8824bbd chore: refactor the process of annotations (#443)
  • 9d0e0b8 fix: wait for the default cluster ready continuously (#450)
  • fb11efc chore: refactor the structures of kube clients, shared index informer factories (#431)
  • f199cdb test: add e2e test cases for server-info plugin (#406)
  • b0a6f3e fix: typo in apisix_route_v2alpha1.md (#438)
  • d269a01 ci: introduce skywalking-eyes (#430)

Dependency Changes

  • golang.org/x/net 6772e930b67b -> 3d97a244fca7
  • gopkg.in/yaml.v2 v2.3.0 -> v2.4.0
  • k8s.io/code-generator v0.21.1 new

Previous release can be found at 0.6.0

0.6.0

We have added some new features, fixed some bugs, and made some optimizations to the internal code.

Note: The CRDs should be re-applied because of some new features

Core

  • Support TCP definition #115
  • Add labels to mark resources are pushed by ingress controller #242
  • Add jsonschema validate for ApisixUpstream and ApisixTls resource #371 #372
  • Support to record kubernetes events for resources processing #394
  • Support to report resources status #395
  • Support global_rules for cluster scoped plugins #402

Fix

  • Remove upstream caching correctly #421
  • Avoid retrying caused by 404 when deleting cache #424
  • Handle cookie exprs correctly #425

0.5.0

A lot of important features are supported in this release, it makes apisix-ingress-controller more powerful and flexible. Also, several bugs are fixed so the robustness is also enhanced.

We recommend you to use Apache APISIX 2.5 with this release. Note since CRDs are updated, when you upgrade your old release, manual steps are required to apply the new ApisixRoute. Please see the instruction 7 in FAQ for more details.

Core

  • Support traffic split feature (#308)
  • Support route match exprs (#304, #306)
  • Support to configure Ingress resources in version extensions/v1beta1 (#296, #315)
  • Add name fields when generating APISIX Routes and Upstreams (#333)
  • Support to use remote addrs as route match conditions (#347)
  • Schema for ApisixRoute CRD (#345)

Fix

  • Sometimes ApisixRoute update is ineffective (#319)
  • Priority field is not passed to APISIX (#329)
  • Route rule name in ApisixRoute can be duplicated (#330)
  • Use PUT instead of PATCH method when updating resources (#353)
  • Secrets controller doesn't push the newest cert and priv key to APISIX (#337)

Test

  • Use Kind to run e2e suites (#331)
  • Add e2e test cases for plugins redirect, uri-blocker, fault-injection, request-id, limit-count, echo, cors, response-rewrite, proxy-rewrite (#320, #327, #328, #334, #336, #342, #341)

0.4.0

This release mainly improves the program robustness and adds some features.

Core

  • Support Kubernetes Ingress resources #250
  • Support ApisixRoute v2alpha1 #262
  • Support healthchecks definition #117
  • Support secret controller #284
  • Project optimization #92

Test

  • Add test cases for pkg/kube #99

0.3.0

This release mainly improves the program robustness and adds some features.

Core

  • Support Leader election to let only the leader process resources #173;
  • Let Controller itself generates resource ids instead of relying on APISIX #199;
  • Change go module name from github.com/api7/ingress-controller to github.com/apache/apisix-ingress-controller #220;
  • Re draw the design diagram #214;
  • Support gRPC scheme in ApisixUpstream #225;
  • SSL resource cache optimization #203;

Deploy

  • Complete the compatibility tests on Amazon EKS, Google Cloud GKE, Ali Cloud ACK and etc #177, #180, #183;
  • Refactor the helm charts, merging ingress-apisix and ingress-apisix-base into apisix-ingress-controller #213;

Test

  • Now CI runs e2e test suites in parallel #172;

0.2.0

This release mainly improve basic features, bugfix and adds test cases.

Core

  • Enhanced documentation, easier to read and execute #129
  • API specification for CRDs #151
  • Support Canary plugin (Base on the feature in Apache APISIX) #13
  • Support prometheus metrics #143
  • Support install ingress controller by Helm Chart #153
  • Support reconcile loop. #149 #157 #163
  • Support namespaces filtering. #162
  • Some Refactor. #147 #155 #134

Test case

more e2e case #156 #142

Back to TOC

0.1.0

This release mainly improve basic features, bugfix and adds test cases.

Core

  • Enriched documentation.
  • CI Integration. #75 #80 #84 #87 #89 #97
  • Support retry when sync failed. #103
  • Support using kustomize install all resources. #72
  • Support command line configuration. #61
  • Support to define SSL by CRD. #95

Test case

  • Add E2E test environment. #101

Bugfix

  • invalid memory address or nil pointer dereference. #9

Back to TOC