This is an automated email from the ASF dual-hosted git repository.
alinsran pushed a change to branch v2.0.0
in repository https://gitbox.apache.org/repos/asf/apisix-ingress-controller.git
from a23de408 chore: v2.0.0-rc4 release (#2533)
add 06981b18 fix: hmac-auth plugin spec compatibility with latest apisix
(#2528)
add 7c926e66 feat: support retry in case of sync failure (#2534)
add efc29bff docs: correct description for externalNodes (#2541)
add c831c161 fix: sync exception caused by ingress endpoint 0 (#2538)
add ec8624b1 fix: handle httproute multi backend refs (#2540)
add f1724106 fix: responseHeaderModifier fails to synchronize (#2544)
add 0a7b0402 fix: residual data issue when updating ingressClassName
(#2543)
add 2d57b6a2 upgrade: gateway-api version to v1.3.0 (#2547)
add cb69f53c feat: add support for CORS httproutefilter (#2548)
add 7f6cff4a fix: use upstream id instead of inline upstream in
traffic-split plugin (#2546)
add ebaed224 docs: specify namespace in metadata explicitly (#2549)
add 53267ff8 feat: support stream_route for ApisixRoute (#2551)
add 40ae032b chore: migrate e2e test for secretRef in ApisixRoute.plugins
(#2556)
add 476783aa chore: add skip_mtls_uril_regex test for ApisixTLS (#2555)
add 76c695c8 feat: add support for named servicePort in ApisixRoute
backend (#2553)
add 8f85e7f9 chore: add more conformance-test report for gateway-api
(#2557)
add 3d4d833b docs: update gateway api docs (#2558)
add 0154b13a test: unified gatewayproxy yaml acquisition (#2562)
add 4e1bd6eb chore(ci): remove next branch trigger condition (#2563)
add 7fee6bd3 chore: use constant variable instead of hard code (#2560)
add b47ed044 feat: add unified API server with debugging capabilities
(#2550)
add bdbb3b9a docs: add FAQ page (#2561)
add a47c8c6e docs: add config.yaml reference doc; explain a few parameters
and gateway port being ignored (#2552)
add 72626839 chore: remove redundant debug logging for metrics response
(#2567)
add 7399778b chore: backport ldap auth test (#2569)
add 734849a1 feat: add webhook server (#2566)
add 992bead3 remove repetitive namespace (#2568)
add 51077751 feat(gateway-api): support GRPCRoute (#2570)
add fa9f775e docs: add ingressClassName to explicitly specify which
ingress class should handle each resource (#2573)
add 3b3bb2ca feat: add webhook for ingressclass and gateway (#2572)
add 7510e5c3 feat(apisixupstream): support healthcheck (#2574)
add 0fd8e9d7 feat: add support for TCPRoute (#2564)
add b4276e3b chore: add stream_route test for standalone (#2565)
add be91920e feat(apisixupstream): support discovery (#2577)
add 5bb2afd6 feat: add secret/service resource checker for webhook (#2580)
add 68664908 feat(gateway-api): add support for UDPRoute (#2578)
add ec819175 feat: add secret/service resource checker for webhook (#2583)
add fe5c1357 feat(apisixupstream): support portLevelSettings (#2582)
add 501b4e89 test: add e2e test case for webhook (#2585)
add dc8b6621 feat: add Unix socket support for inter-container
communication (#2587)
add 63c7d111 feat: support udproute webhook (#2588)
add d9550d88 chore: unify the logging component (#2584)
add 0f29ac7b docs: clarify support for Ingress Annotations (#2575)
add f6db4561 fix(conformance-test): HTTPRouteRewriteHost (#2596)
add a368e287 fix(conformance-test): HTTPRouteQueryParamMatching (#2598)
add 1afb9ace feat(gateway-api): support TLSRoute (#2594)
add 15132023 fix(conformance-test): HTTPRoutePathRewrite (#2597)
add 5f0d1af1 fix: generate unique SSL IDs to prevent certificate conflicts
across different hosts (#2592)
add ace684d1 feat: add conflict detection for gateway proxy (#2600)
add 3c808e22 fix(gatewayproxy): add stricter validation rules for provider
(#2602)
add f28b3429 feat: support resolve svc.ports[].appProtocol (#2601)
add 18882b92 fix(ingress): port.name matching failure for ExternalName
Services (#2604)
add 351d20a5 feat: add certificate conflict detection to admission
webhooks (#2603)
add 45059943 chore: v2.0.0-rc5 release (#2607)
No new revisions were added by this update.
Summary of changes:
.github/workflows/apisix-conformance-test.yml | 47 +-
.github/workflows/apisix-e2e-test.yml | 17 +-
.github/workflows/codeql-analysis.yml | 1 -
.github/workflows/dependency-review.yml | 1 -
.github/workflows/golangci-lint.yml | 4 +-
.github/workflows/license-checker.yml | 1 -
.github/workflows/lint-checker.yml | 3 +-
.github/workflows/push-docker.yaml | 2 +-
.github/workflows/spell-checker.yml | 2 -
.github/workflows/unit-test.yml | 4 +-
.github/workflows/yamllint-checker.yml | 1 -
CHANGELOG.md | 187 +++
Makefile | 37 +-
PROJECT | 44 +-
api/adc/plugin_types.go | 15 +-
api/adc/types.go | 239 ++--
api/adc/zz_generated.deepcopy.go | 24 +-
api/v1alpha1/gatewayproxy_types.go | 7 +-
api/v2/apisixconsumer_types.go | 21 +-
api/v2/apisixroute_types.go | 23 +-
api/v2/apisixupstream_types.go | 27 +-
api/v2/shared_types.go | 7 +
api/v2/zz_generated.deepcopy.go | 5 +
cmd/root/root.go | 11 -
config/certmanager/certificate-metrics.yaml | 20 +
config/certmanager/certificate-webhook.yaml | 20 +
config/certmanager/issuer.yaml | 13 +
config/certmanager/kustomization.yaml | 7 +
config/certmanager/kustomizeconfig.yaml | 8 +
.../bases/apisix.apache.org_apisixconsumers.yaml | 26 +-
.../crd/bases/apisix.apache.org_apisixroutes.yaml | 22 +-
.../bases/apisix.apache.org_apisixupstreams.yaml | 68 +-
.../bases/apisix.apache.org_gatewayproxies.yaml | 9 +
config/crd/kustomization.yaml | 11 +-
config/crd/patches/hmac_auth_validation.yaml | 8 +
config/default/kustomization.yaml | 211 ++--
config/default/manager_webhook_patch.yaml | 26 +
config/default/webhookcainjection_patch.yaml | 8 +
config/network-policy/allow-webhook-traffic.yaml | 27 +
config/network-policy/kustomization.yaml | 2 +
config/rbac/role.yaml | 27 +-
config/samples/config.yaml | 34 +-
config/webhook/kustomization.yaml | 6 +
config/webhook/kustomizeconfig.yaml | 22 +
config/webhook/manifests.yaml | 246 ++++
config/webhook/service.yaml | 16 +
docs/en/latest/FAQ.md | 56 +
docs/en/latest/concepts/gateway-api.md | 94 +-
docs/en/latest/config.json | 7 +-
docs/en/latest/configure.md | 1 +
docs/en/latest/getting-started/configure-routes.md | 32 +-
.../latest/getting-started/key-authentication.md | 37 +-
docs/en/latest/getting-started/load-balancing.md | 38 +-
docs/en/latest/getting-started/rate-limiting.md | 35 +-
docs/en/latest/reference/api-reference.md | 41 +-
docs/en/latest/reference/configuration-file.md | 75 ++
docs/en/latest/reference/example.md | 87 +-
docs/en/latest/upgrade-guide.md | 18 +-
examples/httpbin/{httproute.yaml => tcproute.yaml} | 23 +-
go.mod | 97 +-
go.sum | 191 +--
internal/adc/cache/memdb.go | 40 +-
internal/adc/cache/store.go | 27 +-
internal/adc/client/client.go | 101 +-
internal/adc/client/executor.go | 123 +-
internal/adc/translator/apisixconsumer.go | 32 +-
internal/adc/translator/apisixroute.go | 277 ++++-
internal/adc/translator/apisixtls.go | 8 +-
internal/adc/translator/apisixupstream.go | 191 ++-
internal/adc/translator/gateway.go | 147 +--
internal/adc/translator/gatewayproxy.go | 8 +-
internal/adc/translator/globalrule.go | 10 +-
internal/adc/translator/grpcroute.go | 372 ++++++
internal/adc/translator/httproute.go | 337 ++++--
internal/adc/translator/ingress.go | 287 +++--
internal/adc/translator/ingressclass.go | 4 +-
internal/adc/translator/tcproute.go | 163 +++
internal/adc/translator/tlsroute.go | 159 +++
internal/adc/translator/translator.go | 3 +-
internal/adc/translator/udproute.go | 152 +++
internal/controller/apisixconsumer_controller.go | 13 +-
internal/controller/apisixglobalrule_controller.go | 51 +-
.../controller/apisixpluginconfig_controller.go | 2 +-
internal/controller/apisixroute_controller.go | 266 +++--
internal/controller/apisixtls_controller.go | 46 +-
internal/controller/apisixupstream_controller.go | 2 +-
internal/controller/config/config.go | 37 +
internal/controller/config/types.go | 18 +
internal/controller/consumer_controller.go | 3 +-
internal/controller/context.go | 4 +-
internal/controller/gateway_controller.go | 3 +-
internal/controller/gatewayproxy_controller.go | 2 +-
...route_controller.go => grpcroute_controller.go} | 367 +++---
internal/controller/httproute_controller.go | 20 +-
internal/controller/httproutepolicy.go | 13 +-
internal/controller/indexer/grpcroute.go | 106 ++
internal/controller/indexer/indexer.go | 149 ++-
internal/controller/indexer/ssl_host.go | 143 +++
internal/controller/indexer/tlsroute.go | 80 ++
internal/controller/ingress_controller.go | 40 +-
internal/controller/ingressclass_controller.go | 2 +-
internal/controller/policies.go | 3 +-
internal/controller/tcproute_controller.go | 505 ++++++++
internal/controller/tlsroute_controller.go | 505 ++++++++
internal/controller/udproute_controller.go | 505 ++++++++
internal/controller/utils.go | 134 ++-
internal/manager/controllers.go | 80 +-
internal/manager/readiness/manager.go | 10 +-
internal/manager/run.go | 51 +-
internal/manager/server/server.go | 69 ++
internal/manager/webhooks.go | 66 ++
internal/provider/apisix/provider.go | 116 +-
internal/provider/apisix/status.go | 124 +-
internal/provider/common/adcdebugserver.go | 341 ++++++
internal/provider/common/retrier.go | 96 ++
internal/provider/init/init.go | 17 +-
internal/provider/options.go | 4 +-
internal/provider/provider.go | 2 +
internal/provider/register.go | 19 +-
internal/ssl/util.go | 142 +++
internal/types/k8s.go | 34 +-
internal/webhook/v1/apisixconsumer_webhook.go | 131 +++
internal/webhook/v1/apisixconsumer_webhook_test.go | 154 +++
internal/webhook/v1/apisixroute_webhook.go | 153 +++
internal/webhook/v1/apisixroute_webhook_test.go | 176 +++
internal/webhook/v1/apisixtls_webhook.go | 125 ++
internal/webhook/v1/apisixtls_webhook_test.go | 131 +++
internal/webhook/v1/consumer_webhook.go | 119 ++
internal/webhook/v1/consumer_webhook_test.go | 148 +++
internal/webhook/v1/gateway_webhook.go | 209 ++++
internal/webhook/v1/gateway_webhook_test.go | 113 ++
internal/webhook/v1/gatewayproxy_webhook.go | 248 ++++
internal/webhook/v1/gatewayproxy_webhook_test.go | 367 ++++++
internal/webhook/v1/grpcroute_webhook.go | 162 +++
internal/webhook/v1/grpcroute_webhook_test.go | 116 ++
internal/webhook/v1/httproute_webhook.go | 162 +++
internal/webhook/v1/httproute_webhook_test.go | 138 +++
internal/webhook/v1/ingress_webhook.go | 240 ++++
internal/webhook/v1/ingress_webhook_test.go | 211 ++++
internal/webhook/v1/ingressclass_webhook.go | 126 ++
internal/webhook/v1/ownership.go | 110 ++
internal/webhook/v1/reference/checker.go | 107 ++
internal/webhook/v1/ssl/conflict_detector.go | 513 +++++++++
internal/webhook/v1/ssl/conflict_detector_test.go | 418 +++++++
internal/webhook/v1/tcproute_webhook.go | 146 +++
internal/webhook/v1/tcproute_webhook_test.go | 122 ++
internal/webhook/v1/udproute_webhook.go | 146 +++
internal/webhook/v1/udproute_webhook_test.go | 273 +++++
releases/v2.0.0-rc5.toml | 98 ++
test/conformance/{apisix => }/conformance_test.go | 35 +-
test/conformance/{apisix => }/suite_test.go | 3 +-
test/e2e/apisix/e2e_test.go | 1 +
test/e2e/crds/v1alpha1/backendtrafficpolicy.go | 80 +-
test/e2e/crds/v1alpha1/consumer.go | 61 +-
test/e2e/crds/v1alpha1/gatewayproxy.go | 3 +-
test/e2e/crds/v2/consumer.go | 266 ++++-
test/e2e/crds/v2/globalrule.go | 3 +-
test/e2e/crds/v2/pluginconfig.go | 3 +-
test/e2e/crds/v2/route.go | 589 +++++++++-
test/e2e/crds/v2/status.go | 43 +-
test/e2e/crds/v2/streamroute.go | 217 ++++
test/e2e/crds/v2/tls.go | 192 ++++
test/e2e/crds/v2/upstream.go | 309 +++++
test/e2e/framework/apisix_consts.go | 115 ++
test/e2e/framework/grpc.go | 58 +
test/e2e/framework/ingress.go | 4 +-
.../e2e/framework/manifests/apisix-standalone.yaml | 35 +
test/e2e/framework/manifests/apisix.yaml | 35 +
.../manifests/{etcd.yaml => grpc-backend.yaml} | 61 +-
test/e2e/framework/manifests/ingress.yaml | 164 +--
test/e2e/framework/manifests/nginx.yaml | 87 +-
test/e2e/framework/manifests/webhook.yaml | 274 +++++
test/e2e/framework/nginx.go | 3 +
test/e2e/gatewayapi/controller.go | 9 +-
test/e2e/gatewayapi/gateway.go | 6 +-
test/e2e/gatewayapi/gatewayproxy.go | 13 +-
test/e2e/gatewayapi/grpcroute.go | 289 +++++
test/e2e/gatewayapi/httproute.go | 452 ++++++--
test/e2e/gatewayapi/tcproute.go | 111 ++
test/e2e/gatewayapi/tlsroute.go | 117 ++
test/e2e/gatewayapi/udproute.go | 114 ++
test/e2e/ingress/ingress.go | 296 ++++-
test/e2e/scaffold/adc.go | 45 +-
test/e2e/scaffold/apisix_deployer.go | 33 +-
test/e2e/scaffold/assertion.go | 115 +-
test/e2e/scaffold/coredns.go | 93 ++
test/e2e/scaffold/grpc.go | 160 +++
test/e2e/scaffold/httpbin.go | 6 +
test/e2e/scaffold/k8s.go | 161 ++-
test/e2e/scaffold/scaffold.go | 229 ++--
test/e2e/scaffold/ssl.go | 3 +-
.../README.md => test/e2e/testdata/ldap/cmd.sh | 54 +-
.../e2e/testdata/ldap/docker-compose.yaml | 34 +-
test/e2e/webhook/apisixconsumer.go | 88 ++
test/e2e/webhook/apisixroute.go | 117 ++
test/e2e/webhook/apisixtls.go | 111 ++
test/e2e/webhook/consumer.go | 93 ++
test/e2e/webhook/gateway.go | 94 ++
test/e2e/webhook/gatewayproxy.go | 272 +++++
.../s2b_test.go => test/e2e/webhook/grpcroute.go | 51 +-
test/e2e/webhook/helpers.go | 237 ++++
.../s2b_test.go => test/e2e/webhook/httproute.go | 51 +-
test/e2e/webhook/ingress.go | 160 +++
test/e2e/webhook/ingressclass.go | 83 ++
test/e2e/webhook/ssl_conflict.go | 1215 ++++++++++++++++++++
.../{apisix/e2e_test.go => webhook/tcproute.go} | 42 +-
.../{apisix/e2e_test.go => webhook/udproute.go} | 42 +-
207 files changed, 19275 insertions(+), 2554 deletions(-)
create mode 100644 config/certmanager/certificate-metrics.yaml
create mode 100644 config/certmanager/certificate-webhook.yaml
create mode 100644 config/certmanager/issuer.yaml
create mode 100644 config/certmanager/kustomization.yaml
create mode 100644 config/certmanager/kustomizeconfig.yaml
create mode 100644 config/crd/patches/hmac_auth_validation.yaml
create mode 100644 config/default/manager_webhook_patch.yaml
create mode 100644 config/default/webhookcainjection_patch.yaml
create mode 100644 config/network-policy/allow-webhook-traffic.yaml
create mode 100644 config/network-policy/kustomization.yaml
create mode 100644 config/webhook/kustomization.yaml
create mode 100644 config/webhook/kustomizeconfig.yaml
create mode 100644 config/webhook/manifests.yaml
create mode 100644 config/webhook/service.yaml
create mode 100644 docs/en/latest/FAQ.md
create mode 100644 docs/en/latest/reference/configuration-file.md
copy examples/httpbin/{httproute.yaml => tcproute.yaml} (86%)
create mode 100644 internal/adc/translator/grpcroute.go
create mode 100644 internal/adc/translator/tcproute.go
create mode 100644 internal/adc/translator/tlsroute.go
create mode 100644 internal/adc/translator/udproute.go
copy internal/controller/{httproute_controller.go => grpcroute_controller.go}
(59%)
create mode 100644 internal/controller/indexer/grpcroute.go
create mode 100644 internal/controller/indexer/ssl_host.go
create mode 100644 internal/controller/indexer/tlsroute.go
create mode 100644 internal/controller/tcproute_controller.go
create mode 100644 internal/controller/tlsroute_controller.go
create mode 100644 internal/controller/udproute_controller.go
create mode 100644 internal/manager/server/server.go
create mode 100644 internal/manager/webhooks.go
create mode 100644 internal/provider/common/adcdebugserver.go
create mode 100644 internal/provider/common/retrier.go
create mode 100644 internal/ssl/util.go
create mode 100644 internal/webhook/v1/apisixconsumer_webhook.go
create mode 100644 internal/webhook/v1/apisixconsumer_webhook_test.go
create mode 100644 internal/webhook/v1/apisixroute_webhook.go
create mode 100644 internal/webhook/v1/apisixroute_webhook_test.go
create mode 100644 internal/webhook/v1/apisixtls_webhook.go
create mode 100644 internal/webhook/v1/apisixtls_webhook_test.go
create mode 100644 internal/webhook/v1/consumer_webhook.go
create mode 100644 internal/webhook/v1/consumer_webhook_test.go
create mode 100644 internal/webhook/v1/gateway_webhook.go
create mode 100644 internal/webhook/v1/gateway_webhook_test.go
create mode 100644 internal/webhook/v1/gatewayproxy_webhook.go
create mode 100644 internal/webhook/v1/gatewayproxy_webhook_test.go
create mode 100644 internal/webhook/v1/grpcroute_webhook.go
create mode 100644 internal/webhook/v1/grpcroute_webhook_test.go
create mode 100644 internal/webhook/v1/httproute_webhook.go
create mode 100644 internal/webhook/v1/httproute_webhook_test.go
create mode 100644 internal/webhook/v1/ingress_webhook.go
create mode 100644 internal/webhook/v1/ingress_webhook_test.go
create mode 100644 internal/webhook/v1/ingressclass_webhook.go
create mode 100644 internal/webhook/v1/ownership.go
create mode 100644 internal/webhook/v1/reference/checker.go
create mode 100644 internal/webhook/v1/ssl/conflict_detector.go
create mode 100644 internal/webhook/v1/ssl/conflict_detector_test.go
create mode 100644 internal/webhook/v1/tcproute_webhook.go
create mode 100644 internal/webhook/v1/tcproute_webhook_test.go
create mode 100644 internal/webhook/v1/udproute_webhook.go
create mode 100644 internal/webhook/v1/udproute_webhook_test.go
create mode 100644 releases/v2.0.0-rc5.toml
rename test/conformance/{apisix => }/conformance_test.go (69%)
rename test/conformance/{apisix => }/suite_test.go (98%)
create mode 100644 test/e2e/crds/v2/streamroute.go
create mode 100644 test/e2e/crds/v2/upstream.go
create mode 100644 test/e2e/framework/grpc.go
copy test/e2e/framework/manifests/{etcd.yaml => grpc-backend.yaml} (57%)
create mode 100644 test/e2e/framework/manifests/webhook.yaml
create mode 100644 test/e2e/gatewayapi/grpcroute.go
create mode 100644 test/e2e/gatewayapi/tcproute.go
create mode 100644 test/e2e/gatewayapi/tlsroute.go
create mode 100644 test/e2e/gatewayapi/udproute.go
create mode 100644 test/e2e/scaffold/coredns.go
create mode 100644 test/e2e/scaffold/grpc.go
copy releases/README.md => test/e2e/testdata/ldap/cmd.sh (51%)
mode change 100644 => 100755
copy .markdownlint.yml => test/e2e/testdata/ldap/docker-compose.yaml (66%)
create mode 100644 test/e2e/webhook/apisixconsumer.go
create mode 100644 test/e2e/webhook/apisixroute.go
create mode 100644 test/e2e/webhook/apisixtls.go
create mode 100644 test/e2e/webhook/consumer.go
create mode 100644 test/e2e/webhook/gateway.go
create mode 100644 test/e2e/webhook/gatewayproxy.go
copy pkg/utils/s2b_test.go => test/e2e/webhook/grpcroute.go (54%)
create mode 100644 test/e2e/webhook/helpers.go
copy pkg/utils/s2b_test.go => test/e2e/webhook/httproute.go (54%)
create mode 100644 test/e2e/webhook/ingress.go
create mode 100644 test/e2e/webhook/ingressclass.go
create mode 100644 test/e2e/webhook/ssl_conflict.go
copy test/e2e/{apisix/e2e_test.go => webhook/tcproute.go} (53%)
copy test/e2e/{apisix/e2e_test.go => webhook/udproute.go} (53%)