Welcome to the 1.5.0 release of apisix-ingress-controller!
This is a feature release.
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.
- 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
- 罗泽轩
144 commits
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)
- 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
Welcome to the 1.4.1 release of apisix-ingress-controller!
This is a Patch version release.
In next release(v1.5), custom resource's API version v2 will be GA released. Please go to #707 for detail.
- 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.
- Jintao Zhang
- Nic
- cmssczy
- nevercase
- JasonZhu
- Sarasa Kisaragi
- Xin Rong
- Yu.Bozhong
- champly
- chen zhuo
24 commits
8a257c4
chore: fix dead linksc90b602
ci: trigger v1.4.0 branch jobsd0bc591
chore: revert isWatchingNamespace to namespaceWatchinge259826
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
This release has no dependency changes
Previous release can be found at 1.4.0
Welcome to the 1.4.0 release of apisix-ingress-controller!
This is a GA release.
In next release(v1.5), custom resource's API version v2 will be GA released. Please go to #707 for detail.
- In this release(v1.4), all custom resource's API version has been upgraded to
apisix.apache.org/v2beta3
, and we deletedapisix.apache.org/v2beta3
andapisix.apache.org/v2alpha1
. Please see #746
- We have introduced the
apisix.apache.org/v2beta3
API version for all custom resources and deletedv2alpha1
andv1
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.
- 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
40 commits
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)
- 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
Welcome to the 1.3.0 release of apisix-ingress-controller!
This is a GA release.
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.
- 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.
- 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
andapisix_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.
- kv
- Hoshea Jiang
- Jintao Zhang
- Sarasa Kisaragi
- Baoyuan
- SergeBakharev
- Sindweller
- chen zhuo
- liuxiran
- oliver
27 commits
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)
- 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
Welcome to the 1.2.0 release of apisix-ingress-controller!
This is a GA release.
Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.
- kv
- Jintao Zhang
- Baoyuan
- Hoshea Jiang
- chen zhuo
- okaybase
- yuanfeng0905
- 天使莫忆
20 commits
3ab162b
chore: bump version v1.2.03ad1a1c
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)
- 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
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)
Please try out the release binaries and report any issues at https://github.com/apache/apisix-ingress-controller/issues.
- Alex Zhang
- Fang
- kv
- Jintao Zhang
- Shuyang Wu
- benson211
11 commits
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)
- 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
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)
- 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.
- Alex Zhang
- Sarasa Kisaragi
- Jintao Zhang
- kv
- Shuyang Wu
- Daming
- Fang
- Ayush das
- Donghui0
- Shivani chauhan
- Yuelin Zheng
- guoqqqi
- 罗泽轩
58 commits
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)
- 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
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
- 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
- Remove upstream caching correctly #421
- Avoid retrying caused by 404 when deleting cache #424
- Handle cookie exprs correctly #425
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.
- 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)
- 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 ofPATCH
method when updating resources (#353) - Secrets controller doesn't push the newest cert and priv key to APISIX (#337)
- 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)
This release mainly improves the program robustness and adds some features.
- Support Kubernetes Ingress resources #250
- Support ApisixRoute v2alpha1 #262
- Support healthchecks definition #117
- Support secret controller #284
- Project optimization #92
- Add test cases for pkg/kube #99
This release mainly improves the program robustness and adds some features.
- 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
togithub.com/apache/apisix-ingress-controller
#220; - Re draw the design diagram #214;
- Support gRPC scheme in ApisixUpstream #225;
- SSL resource cache optimization #203;
- 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;
- Now CI runs e2e test suites in parallel #172;
This release mainly improve basic features, bugfix and adds test cases.
- 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
This release mainly improve basic features, bugfix and adds test cases.
- 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
- Add E2E test environment. #101
- invalid memory address or nil pointer dereference. #9