From e60aba2d5788a83bd352cd4db712a0762ae9a3ba Mon Sep 17 00:00:00 2001 From: AlinsRan Date: Tue, 15 Jul 2025 15:12:24 +0800 Subject: [PATCH 1/5] fix: route names with the same prefix were mistakenly deleted (#2472) --- internal/provider/adc/cache/indexer.go | 10 +++++-- test/e2e/apisix/route.go | 36 ++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 2 deletions(-) diff --git a/internal/provider/adc/cache/indexer.go b/internal/provider/adc/cache/indexer.go index e19410b84..ad9dda3bd 100644 --- a/internal/provider/adc/cache/indexer.go +++ b/internal/provider/adc/cache/indexer.go @@ -56,6 +56,12 @@ type LabelIndexer struct { GetLabels func(obj any) map[string]string } +// ref: https://pkg.go.dev/github.com/hashicorp/go-memdb#Txn.Get +// by adding suffixes to avoid prefix matching +func (emi *LabelIndexer) genKey(labelValues []string) []byte { + return []byte(strings.Join(labelValues, "/") + "\x00") +} + func (emi *LabelIndexer) FromObject(obj any) (bool, []byte, error) { labels := emi.GetLabels(obj) var labelValues []string @@ -69,7 +75,7 @@ func (emi *LabelIndexer) FromObject(obj any) (bool, []byte, error) { return false, nil, nil } - return true, []byte(strings.Join(labelValues, "/")), nil + return true, emi.genKey(labelValues), nil } func (emi *LabelIndexer) FromArgs(args ...any) ([]byte, error) { @@ -86,5 +92,5 @@ func (emi *LabelIndexer) FromArgs(args ...any) ([]byte, error) { labelValues = append(labelValues, value) } - return []byte(strings.Join(labelValues, "/")), nil + return emi.genKey(labelValues), nil } diff --git a/test/e2e/apisix/route.go b/test/e2e/apisix/route.go index 92cf9b7f3..eb447f63d 100644 --- a/test/e2e/apisix/route.go +++ b/test/e2e/apisix/route.go @@ -374,6 +374,42 @@ spec: applier.MustApplyAPIv2(types.NamespacedName{Namespace: s.Namespace(), Name: "httpbin-service-e2e-test"}, new(apiv2.ApisixUpstream), apisixUpstreamSpec1) Eventually(request).WithTimeout(8 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusOK)) }) + + It("Multiple ApisixRoute with same prefix name", func() { + const apisixRouteSpec = ` +apiVersion: apisix.apache.org/v2 +kind: ApisixRoute +metadata: + name: %s +spec: + ingressClassName: apisix + http: + - name: rule0 + match: + hosts: + - %s + paths: + - /* + backends: + - serviceName: httpbin-service-e2e-test + servicePort: 80 +` + By("apply ApisixRoute") + var apisixRoute apiv2.ApisixRoute + for _, id := range []string{"11111", "1111", "111", "11", "1"} { + name := fmt.Sprintf("route-%s", id) + host := fmt.Sprintf("httpbin-%s", id) + applier.MustApplyAPIv2(types.NamespacedName{Namespace: s.Namespace(), Name: name}, &apisixRoute, fmt.Sprintf(apisixRouteSpec, name, host)) + } + + By("verify ApisixRoute works") + for _, id := range []string{"1", "11", "111", "1111", "11111"} { + host := fmt.Sprintf("httpbin-%s", id) + Eventually(func() int { + return s.NewAPISIXClient().GET("/get").WithHost(host).Expect().Raw().StatusCode + }).WithTimeout(8 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusOK)) + } + }) }) Context("Test ApisixRoute reference ApisixUpstream", func() { From f5b4f5bf996fe7abfa1fd7cf029142fe39b1252e Mon Sep 17 00:00:00 2001 From: AlinsRan Date: Thu, 17 Jul 2025 09:00:11 +0800 Subject: [PATCH 2/5] chore: refactor e2e-test (#2467) Signed-off-by: ashing --- Makefile | 87 +- docs/{ => assets}/crd/config.yaml | 0 .../api7-ingress-controller-architecture.png | Bin 379340 -> 0 bytes .../gateway-api-extensions-resources.png | Bin 0 -> 211182 bytes .../images/ingress-admin-api-architecture.png | Bin 0 -> 174762 bytes .../ingress-standalone-architecture.png | Bin 0 -> 106526 bytes docs/assets/images/v2-crds-api-resources.png | Bin 0 -> 154016 bytes docs/{ => assets}/template/gv_details.tpl | 2 +- docs/{ => assets}/template/gv_list.tpl | 2 +- docs/{ => assets}/template/type.tpl | 0 docs/{ => assets}/template/type_members.tpl | 0 docs/concepts.md | 27 - .../api.md => en/latest/api-reference.md} | 6 +- .../concepts/deployment-architecture.md | 42 + docs/{ => en/latest/concepts}/gateway-api.md | 30 +- docs/en/latest/concepts/resources.md | 87 ++ docs/{ => en/latest}/configure.md | 28 +- docs/en/latest/developer-guide.md | 118 ++ docs/{ => en/latest}/getting-started.md | 10 +- docs/{ => en/latest}/upgrade-guide.md | 65 +- docs/quickstart.md | 60 - go.mod | 232 ++-- go.sum | 690 +++++----- test/e2e/apisix/status.go | 161 +-- test/e2e/crds/backendtrafficpolicy.go | 110 +- test/e2e/crds/consumer.go | 357 +++--- test/e2e/framework/manifests/apisix.yaml | 7 + test/e2e/framework/manifests/ingress.yaml | 21 +- test/e2e/gatewayapi/gatewayproxy.go | 93 +- test/e2e/gatewayapi/httproute.go | 1106 +++++++++-------- test/e2e/ingress/ingress.go | 2 +- test/e2e/scaffold/apisix_deployer.go | 10 +- test/e2e/scaffold/assertion.go | 252 ++++ test/e2e/scaffold/k8s.go | 18 +- 34 files changed, 2145 insertions(+), 1478 deletions(-) rename docs/{ => assets}/crd/config.yaml (100%) delete mode 100644 docs/assets/images/api7-ingress-controller-architecture.png create mode 100644 docs/assets/images/gateway-api-extensions-resources.png create mode 100644 docs/assets/images/ingress-admin-api-architecture.png create mode 100644 docs/assets/images/ingress-standalone-architecture.png create mode 100644 docs/assets/images/v2-crds-api-resources.png rename docs/{ => assets}/template/gv_details.tpl (96%) rename docs/{ => assets}/template/gv_list.tpl (91%) rename docs/{ => assets}/template/type.tpl (100%) rename docs/{ => assets}/template/type_members.tpl (100%) delete mode 100644 docs/concepts.md rename docs/{crd/api.md => en/latest/api-reference.md} (99%) create mode 100644 docs/en/latest/concepts/deployment-architecture.md rename docs/{ => en/latest/concepts}/gateway-api.md (76%) create mode 100644 docs/en/latest/concepts/resources.md rename docs/{ => en/latest}/configure.md (56%) create mode 100644 docs/en/latest/developer-guide.md rename docs/{ => en/latest}/getting-started.md (91%) rename docs/{ => en/latest}/upgrade-guide.md (70%) delete mode 100644 docs/quickstart.md create mode 100644 test/e2e/scaffold/assertion.go diff --git a/Makefile b/Makefile index 229885af0..5554b157f 100644 --- a/Makefile +++ b/Makefile @@ -19,6 +19,7 @@ VERSION ?= 2.0.0 +RELEASE_SRC = apache-apisix-ingress-controller-${VERSION}-src IMAGE_TAG ?= dev @@ -31,16 +32,17 @@ GATEAY_API_VERSION ?= v1.2.0 DASHBOARD_VERSION ?= dev ADC_VERSION ?= 0.20.0 +GINKGO_VERSION ?= 2.20.0 TEST_TIMEOUT ?= 80m TEST_DIR ?= ./test/e2e/ +E2E_NODES ?= 2 # CRD Reference Documentation CRD_REF_DOCS_VERSION ?= v0.1.0 CRD_REF_DOCS ?= $(LOCALBIN)/crd-ref-docs -CRD_DOCS_CONFIG ?= docs/crd/config.yaml -CRD_DOCS_OUTPUT ?= docs/crd/api.md - -export KUBECONFIG = /tmp/$(KIND_NAME).kubeconfig +CRD_DOCS_CONFIG ?= docs/assets/crd/config.yaml +CRD_DOCS_OUTPUT ?= docs/en/latest/api-reference.md +CRD_DOCS_TEMPLATE ?= docs/assets/template # go VERSYM="github.com/apache/apisix-ingress-controller/internal/version._buildVersion" @@ -137,6 +139,14 @@ download-api7ee3-chart: @helm pull api7/api7ee3 --destination "$(shell helm env HELM_REPOSITORY_CACHE)" @echo "Downloaded API7EE3 chart" +.PHONY: ginkgo-e2e-test +ginkgo-e2e-test: + @ginkgo -cover -coverprofile=coverage.txt -r --randomize-all --randomize-suites --trace --focus=$(E2E_FOCUS) --nodes=$(E2E_NODES) $(TEST_DIR) + +.PHONY: install-ginkgo +install-ginkgo: + @go install github.com/onsi/ginkgo/v2/ginkgo@v$(GINKGO_VERSION) + .PHONY: conformance-test conformance-test: DASHBOARD_VERSION=$(DASHBOARD_VERSION) go test -v ./test/conformance -tags=conformance -timeout 60m @@ -170,15 +180,15 @@ kind-down: .PHONY: kind-load-images kind-load-images: pull-infra-images kind-load-ingress-image - @kind load docker-image hkccr.ccs.tencentyun.com/api7-dev/api7-ee-3-gateway:dev --name $(KIND_NAME) - @kind load docker-image hkccr.ccs.tencentyun.com/api7-dev/api7-ee-dp-manager:$(DASHBOARD_VERSION) --name $(KIND_NAME) - @kind load docker-image hkccr.ccs.tencentyun.com/api7-dev/api7-ee-3-integrated:$(DASHBOARD_VERSION) --name $(KIND_NAME) - @kind load docker-image kennethreitz/httpbin:latest --name $(KIND_NAME) + @kind load docker-image hkccr.ccs.tencentyun.com/api7-dev/api7-ee-3-gateway:dev --name $(KIND_NAME) + @kind load docker-image hkccr.ccs.tencentyun.com/api7-dev/api7-ee-dp-manager:$(DASHBOARD_VERSION) --name $(KIND_NAME) + @kind load docker-image hkccr.ccs.tencentyun.com/api7-dev/api7-ee-3-integrated:$(DASHBOARD_VERSION) --name $(KIND_NAME) + @kind load docker-image kennethreitz/httpbin:latest --name $(KIND_NAME) @kind load docker-image jmalloc/echo-server:latest --name $(KIND_NAME) .PHONY: kind-load-gateway-image kind-load-gateway-image: - @kind load docker-image hkccr.ccs.tencentyun.com/api7-dev/api7-ee-3-gateway:dev --name $(KIND_NAME) + @kind load docker-image hkccr.ccs.tencentyun.com/api7-dev/api7-ee-3-gateway:dev --name $(KIND_NAME) .PHONY: kind-load-dashboard-images kind-load-dashboard-images: @@ -192,7 +202,7 @@ kind-load-ingress-image: .PHONY: pull-infra-images pull-infra-images: @docker pull hkccr.ccs.tencentyun.com/api7-dev/api7-ee-3-gateway:dev - @docker pull hkccr.ccs.tencentyun.com/api7-dev/api7-ee-dp-manager:$(DASHBOARD_VERSION) + @docker pull hkccr.ccs.tencentyun.com/api7-dev/api7-ee-dp-manager:$(DASHBOARD_VERSION) @docker pull hkccr.ccs.tencentyun.com/api7-dev/api7-ee-3-integrated:$(DASHBOARD_VERSION) @docker pull kennethreitz/httpbin:latest @docker pull jmalloc/echo-server:latest @@ -389,7 +399,7 @@ generate-crd-docs: manifests ## Generate CRD reference documentation in a single --source-path=./api \ --config=$(CRD_DOCS_CONFIG) \ --renderer=markdown \ - --templates-dir=./docs/template \ + --templates-dir=$(CRD_DOCS_TEMPLATE) \ --output-path=$(CRD_DOCS_OUTPUT) \ --max-depth=100 @echo "CRD reference documentation generated at $(CRD_DOCS_OUTPUT)" @@ -402,7 +412,7 @@ generate-crd-docs-grouped: manifests ## Generate CRD reference documentation gro --source-path=./api \ --config=$(CRD_DOCS_CONFIG) \ --renderer=markdown \ - --templates-dir=./docs/template \ + --templates-dir=$(CRD_DOCS_TEMPLATE) \ --output-path=docs/crd/groups \ --output-mode=group @echo "CRD reference documentation generated in docs/crd/groups directory" @@ -416,3 +426,56 @@ verify-license: .PHONY: update-license update-license: docker run -it --rm -v $(PWD):/github/workspace apache/skywalking-eyes header fix + +### verify-mdlint: Verify markdown files lint rules. +.PHONY: verify-mdlint +verify-mdlint: + docker run -it --rm -v $(PWD):/work tmknom/markdownlint '**/*.md' --ignore node_modules --ignore CHANGELOG.md + +### update-mdlint: Update markdown files lint rules. +.PHONY: update-mdlint +update-mdlint: + docker run -it --rm -v $(PWD):/work tmknom/markdownlint '**/*.md' -f --ignore node_modules --ignore vendor --ignore CHANGELOG.md + +### verify-yamllint: Verify yaml files lint rules for `examples` directory. +.PHONY: verify-yamllint +verify-yamllint: + docker run -it --rm -v $(PWD):/yaml peterdavehello/yamllint yamllint examples + +### update-yamlfmt: Update yaml files format for `examples` directory. +.PHONY: update-yamlfmt +update-yamlfmt: + go install github.com/google/yamlfmt/cmd/yamlfmt@latest && yamlfmt examples + +### verify-all: Verify all verify- rules. +.PHONY: verify-all +verify-all: verify-license verify-mdlint verify-yamllint + +### update-all: Update all update- rules. +.PHONY: update-all +update-all: update-license update-mdlint update-gofmt + +### release-src: Release source +release-src: + tar -zcvf $(RELEASE_SRC).tgz \ + --exclude .github \ + --exclude .git \ + --exclude .idea \ + --exclude .gitignore \ + --exclude .DS_Store \ + --exclude docs \ + --exclude examples \ + --exclude scripts \ + --exclude samples \ + --exclude test \ + --exclude release \ + --exclude $(RELEASE_SRC).tgz \ + . + + gpg --batch --yes --armor --detach-sig $(RELEASE_SRC).tgz + shasum -a 512 $(RELEASE_SRC).tgz > $(RELEASE_SRC).tgz.sha512 + + mkdir -p release + mv $(RELEASE_SRC).tgz release/$(RELEASE_SRC).tgz + mv $(RELEASE_SRC).tgz.asc release/$(RELEASE_SRC).tgz.asc + mv $(RELEASE_SRC).tgz.sha512 release/$(RELEASE_SRC).tgz.sha512 diff --git a/docs/crd/config.yaml b/docs/assets/crd/config.yaml similarity index 100% rename from docs/crd/config.yaml rename to docs/assets/crd/config.yaml diff --git a/docs/assets/images/api7-ingress-controller-architecture.png b/docs/assets/images/api7-ingress-controller-architecture.png deleted file mode 100644 index 089419160a5ef12237e054bbab06a5abca7c9347..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 379340 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 z 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

kt3KJ>{~p4q0_G|>&(xrIAqao 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

=6SLb89$%}*d|3ToVaOv3=$zdprKhv#CWeDE; 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 CmRI`# literal 0 HcmV?d00001 diff --git a/docs/assets/images/ingress-admin-api-architecture.png b/docs/assets/images/ingress-admin-api-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..91cc07c0b09792856b0189bcc10e0abcf5afdd86 GIT binary patch literal 174762 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%0DHEAS4`>e`9!4{ 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 bn#I|s{l2`WAfcEAejV7Wzb9pv)o=d=$2p9% literal 0 HcmV?d00001 diff --git a/docs/assets/images/ingress-standalone-architecture.png b/docs/assets/images/ingress-standalone-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..9c557eb1f63a8bc46095264917ddd27a1c635976 GIT binary patch literal 106526 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 %+i0X>gtim#@rLnPlOxn@PKo{_8I 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

RvOU;`v zf}I-fH8-YAqi$mykyoOZWt|!*t}ZT7Yn=jn{*tA>8!|9+5ABU$z(|8wGHmx<#B!yd zOz{5t#*-@OBkFPe_Z(IFu4lpFy8X*+wYq|CF@9jgLsLUXYRF9o*OHxw=|yO`#t3{+ z9^?csVf#e#B$KtefsIC7>Pz*QOS8*or@`ACgJy}b0-KlHe2Eul*u-t5>`GACLe*B} zn4QT}#&La);MoO^-A-qNzMiJY57lf|-s?gq)s zRI;7$1X{Ff9<%v)xcCL@5fesON51t$_9|0exsZOjbE|GE2&F*;{i&de-n+~pWz)!V zK8(CH1`ga(7~Mu-@r^FCw%F+m7eyP!eAk&vPJAHxl(&B4y)HGZZFXc$|N60ooedw! zfkE~)+aI+&&nuAtj(2yT&#I`9aXyRZR zI#*&v=)?^PKs(8N+1{Cu9k=XWB!+EPk+xt zoKWt~0wvJqkTF0%z#~J(`uS(|V;cEVHoDd|F@@41oAcm7|JMo7xxRDYBo{7WQ4Ep)eIr2ZlF9gtiH~YNr~K1hw9M~!!=Mfnt+o4 z4ZLMR<|gp9d$fNnMjli}f6|~rxc@@W+|S+><_GTM5d-S!J+AZdIRJ15_NB8w%8Ab+ ze$n9n%?^KE&ddSwpSrq=_REmVCOW$JlZc-q0BNr)q;rF*|7y^`8nOqeqBLKSb}8yP|jLoHGm# zt9ZjECyibs9(5GYaMIeV2LyzXq(7%!jEL6&+4cIMaTB5Z!^Ud-CTnZmdhYJ-Jw_IOz+??U>c&g8YCMPm_^!GB}F300X0trLwFv<}tX+0(AR$z(-EMF$5bUKbhs zQpsPsTgmTuN#0Rs&+9FWP z-3VbVBd)bl?173Y_BibVEg0Bgk^p}D<7V-@HvDn3|C~C%bF(yX*4py`_1YVt5z9_)JM7^**XxinnVLub{gx@>$ zeCSq+ns}h*-u;#53iV-YT~)=_yl%1ylhKdgY8*d7nES2P${l+cGrEmbwCRkA?W$sR z_u!3F?_IX(xrs zWh)VMK}*Jv-AP?^P5V@Z{c+RpI6ib1DqT60dHK+Jp*?L!04qOYzhRHsoTye1b+klS zSsOnjK6%(gO}VVBOxM*FW#IR;4Uj_re7~gf@}z7|>V=!FHnKX=y%Epp;Az6~@$p%x z^_fqLQ?H+gs=2$lUsZNoJ^dlGP;^rKdz+S=h6i~DbyZPsWe8^i=NQSd@a(=?tlv7x zB66Zjs9f%z_saGJt{E$wKv2cGfva95@%EN$N|I{iFn&Zy)yU=)!gBhm(&WK`_pPO! z392#o-YnMPvP_Zdi3_0;chqkrJ6V;Xw}&}ZwxlqljT@uiRmo}UsmJ&hsfQ9(mwkt+ zx4cHyiJ_)xw0wrOw!FsH>8lbqa0j(UkmuRbf%0Wxz0oL_v9%~?OiyC;VjK^m;aqj6 zfvYQWb7owNhJ&8;vG|jJ9q(wl9C&^lmSc)+gexRJ57(7I3qQlCMt$uMgZywee4ZIksX}BncATAuGVT_oC?!#Ccyam$Vy{#Fbl{H#{#f9T h1^!szzhQwLxzQdmW1m4QE&}kQdQMa6)miiV{{wu*Gjad` literal 0 HcmV?d00001 diff --git a/docs/assets/images/v2-crds-api-resources.png b/docs/assets/images/v2-crds-api-resources.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f3c21d76ca348eef6144ebe116702aff90fee8 GIT binary patch literal 154016 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%0Avp|Q6GoMgZRCYuejrQBwH11j);BiLCi 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�lG>q6-A9cCJl{3Fx{AO`2 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

    )MZBtcG22g^}}@NL^W+00UF^!mOYI}@Ao|2 zKa6X#J7u^%&HntQ1p8@C!3VC?dnHnxdh>Np;4~%hzpGpFTEj&3i!|1-A_CbpzIDAg z5;v=q}{C`_N?q-WD{)olNH zKMdW8pDxZv7Uzpkjn=p*Bqw)lMI|K7l2| ziCf`?$LLhBq5iz6WxCj~-6OT<)%QI0s1TvZ8$=cz?kCE=s$+(bv-KOuLN?WS=5>fT zLG%)2@p0T%iM<||99e$>zkZl_|5}C_EXCJ}l2g;A?XlA)FR>Zjm%(8E*ybh6(5t@@ zT@OQEd!2NENRBxpK#u0*2|R?!Eu5@9NUdMP>AF)ZvnzR^MnZu8;d&`iHExzBn*)R2 zd01pNs(jhXR|J|+x*QB01-I9q9{~+NnGzmWqFlNSO~3+pWELqOON-`mZ!=;o-wj-`C#W+T0Whr-*GzJ7MP^|{&tet z@o#)MfoJ{z@!mJp-l!IIm$6LU;kf;8f5Fn!hpu6^f$X}4>p@;IY>?Ww?PHVl@4IX| zYe8O$j~#x})8GDKT=ADgs{BuyCTMhMI# zNMfcf@b6VRY&;1s^FL5WVR5%^__1y*#Qq?OcW;I*a!G1qb^hhrViS)yXN8tyws6djWvAkHLT9lPk;_fd8%@~MP*>PHK+x>aDy8k8Gb zP=C{Zk@fiR(8KZo;XA&xYO(2k#c7O*SpuSVovA4)f3KAtr!j)a0AZB_l|!3g;;0H{ND_@RU5W_7a2d`SV54Qvtzk&;D=7LukD^LRR`e1<^RMV7g2}OBIuMMr73+>* zZmyUME9SzAxj@=D!OgZSdnACyin;LrsJW06+vIV%A=LbT?L`4(;Jwj~Y4>|sx3v9? zhyzL*8-Y^ey`XWItj4?Fc$ABQv$bnh+zvpD zG~WR_yzsm~Vh{%s`V9imEp@(Jzy%>U*+F6D8}={q z|LL@RX#Y`t5xni|i1LM>Z%#|^`Kdgwb0zEqmkHR<-H}jhoSS&P{*PA6{~u2cOxK2k z?8|UUNa??R@0Ve=pYU?)$?(X2xA27oWv4Jqrr%l43N_pPzttp3pGVyq|eb{91TXal;h9<-yw-5-ysDTh1;RA s7(SXBk%AY!ZXC_jcms!o)cD~)W6;)M^W4qLTNr@A)78&qol`;+04A|+4*&oF literal 0 HcmV?d00001 diff --git a/docs/template/gv_details.tpl b/docs/assets/template/gv_details.tpl similarity index 96% rename from docs/template/gv_details.tpl rename to docs/assets/template/gv_details.tpl index eae500cf7..611ca1c9b 100644 --- a/docs/template/gv_details.tpl +++ b/docs/assets/template/gv_details.tpl @@ -39,7 +39,7 @@ ### Types -This section describes the types used by the CRDs. +In this section you will find types that the CRDs rely on. {{- /* Display Types that are not exported Kinds */ -}} {{- range $typ := $gv.SortedTypes -}} diff --git a/docs/template/gv_list.tpl b/docs/assets/template/gv_list.tpl similarity index 91% rename from docs/template/gv_list.tpl rename to docs/assets/template/gv_list.tpl index d8a37d274..d723151aa 100644 --- a/docs/template/gv_list.tpl +++ b/docs/assets/template/gv_list.tpl @@ -26,7 +26,7 @@ slug: /reference/apisix-ingress-controller/crd-reference description: Explore detailed reference documentation for the custom resource definitions (CRDs) supported by the APISIX Ingress Controller. --- -This document provides the API resource description for the API7 Ingress Controller custom resource definitions (CRDs). +This document provides the API resource description the APISIX Ingress Controller custom resource definitions (CRDs). ## Packages {{- range $groupVersions }} diff --git a/docs/template/type.tpl b/docs/assets/template/type.tpl similarity index 100% rename from docs/template/type.tpl rename to docs/assets/template/type.tpl diff --git a/docs/template/type_members.tpl b/docs/assets/template/type_members.tpl similarity index 100% rename from docs/template/type_members.tpl rename to docs/assets/template/type_members.tpl diff --git a/docs/concepts.md b/docs/concepts.md deleted file mode 100644 index c320753a6..000000000 --- a/docs/concepts.md +++ /dev/null @@ -1,27 +0,0 @@ -# Concepts - -The APISIX Ingress Controller is used to manage the APISIX Gateway as either a standalone application or a Kubernetes-based application. It dynamically configures and manages the API7 Gateway using Gateway API resources. - -## Architecture - -![APISIX Ingress Controller Architecture](./assets/images/api7-ingress-controller-architecture.png) - -## Kubernetes Resources - -### Service - -In Kubernetes, a Service is a method to expose network applications running on a set of Pods as network services. - -When proxying ingress traffic, APISIX Gateway by default directs traffic directly to the Pods instead of through kube-proxy. - -### EndpointSlicea - -EndpointSlice objects represent subsets (slices) of backend network endpoints for a Service. - -The APISIX Ingress Controller continuously tracks matching EndpointSlice objects, and whenever the set of Pods in a Service changes, the set of Pods proxied by the APISIX Gateway will also update accordingly. - -## Gateway API - -Gateway API is an official Kubernetes project focused on L4 and L7 routing in Kubernetes. This project represents the next generation of Kubernetes Ingress, Load Balancing, and Service Mesh APIs. - -For more information on supporting Gateway API, please refer to [Gateway API](./gateway-api.md). diff --git a/docs/crd/api.md b/docs/en/latest/api-reference.md similarity index 99% rename from docs/crd/api.md rename to docs/en/latest/api-reference.md index b0d47f256..11fce5b36 100644 --- a/docs/crd/api.md +++ b/docs/en/latest/api-reference.md @@ -4,7 +4,7 @@ slug: /reference/apisix-ingress-controller/crd-reference description: Explore detailed reference documentation for the custom resource definitions (CRDs) supported by the APISIX Ingress Controller. --- -This document provides the API resource description for the API7 Ingress Controller custom resource definitions (CRDs). +This document provides the API resource description the APISIX Ingress Controller custom resource definitions (CRDs). ## Packages - [apisix.apache.org/v1alpha1](#apisixapacheorgv1alpha1) @@ -102,7 +102,7 @@ PluginConfig defines plugin configuration. ### Types -This section describes the types used by the CRDs. +In this section you will find types that the CRDs rely on. #### AdminKeyAuth @@ -607,7 +607,7 @@ ApisixUpstream defines configuration for upstream services. ### Types -This section describes the types used by the CRDs. +In this section you will find types that the CRDs rely on. #### ActiveHealthCheck diff --git a/docs/en/latest/concepts/deployment-architecture.md b/docs/en/latest/concepts/deployment-architecture.md new file mode 100644 index 000000000..e8b5c9b00 --- /dev/null +++ b/docs/en/latest/concepts/deployment-architecture.md @@ -0,0 +1,42 @@ +--- +title: Deployment Architecture +keywords: + - APISIX Ingress + - Apache APISIX + - Kubernetes Ingress + - Gateway API +--- + + +The APISIX Ingress Controller is used to manage the APISIX Gateway as either a standalone application or a Kubernetes-based application. It dynamically configures and manages the APISIX Gateway using Gateway API resources. + +## Admin API Mode + +In the traditional deployment approach, APISIX uses etcd as its configuration center, allowing administrators to dynamically manage routes, upstreams, and other resources through RESTful APIs. It supports distributed cluster deployments with real-time configuration synchronization. + +![Admin API Architecture](../../../assets/images/ingress-admin-api-architecture.png) + +## Standalone Mode (Experimental) + +APISIX runs independently without relying on etcd, supporting two sub-modes - file-driven (managing configuration through conf/apisix.yaml files) and API-driven (storing configuration in memory with full configuration management through the dedicated /apisix/admin/configs endpoint). + +This mode is particularly suitable for Kubernetes environments and single-node deployments, where the API-driven memory management approach combines the convenience of traditional Admin API with the simplicity of Standalone mode. + +![Standalone Architecture](../../../assets/images/ingress-standalone-architecture.png) diff --git a/docs/gateway-api.md b/docs/en/latest/concepts/gateway-api.md similarity index 76% rename from docs/gateway-api.md rename to docs/en/latest/concepts/gateway-api.md index 459ff5a83..44f5376f1 100644 --- a/docs/gateway-api.md +++ b/docs/en/latest/concepts/gateway-api.md @@ -1,5 +1,29 @@ - -# Gateway API +--- +title: Gateway API +keywords: + - APISIX Ingress + - Apache APISIX + - Kubernetes Ingress + - Gateway API +--- + Gateway API is dedicated to achieving expressive and scalable Kubernetes service networking through various custom resources. @@ -29,7 +53,7 @@ For more information about Gateway API, please refer to [Gateway API](https://ga ## HTTPRoute -The HTTPRoute resource allows users to configure HTTP routing by matching HTTP traffic and forwarding it to Kubernetes backends. Currently, the only backend supported by API7 Gateway is the Service resource. +The HTTPRoute resource allows users to configure HTTP routing by matching HTTP traffic and forwarding it to Kubernetes backends. Currently, the only backend supported by APISIX Gateway is the Service resource. ### Example diff --git a/docs/en/latest/concepts/resources.md b/docs/en/latest/concepts/resources.md new file mode 100644 index 000000000..df1a06816 --- /dev/null +++ b/docs/en/latest/concepts/resources.md @@ -0,0 +1,87 @@ +--- +title: APISIX Ingress Controller Resources +keywords: + - APISIX Ingress + - Apache APISIX + - Kubernetes Ingress + - Gateway API +description: APISIX Ingress Controller Resources, including Kubernetes resources, Gateway API, and APISIX Ingress Controller CRDs API. +--- + + +## Kubernetes Resources + +### Service + +In Kubernetes, a Service is a method to expose network applications running on a set of Pods as network services. + +When proxying ingress traffic, APISIX Gateway by default directs traffic directly to the Pods instead of through kube-proxy. + +### EndpointSlices + +EndpointSlice objects represent subsets (slices) of backend network endpoints for a Service. + +The APISIX Ingress Controller continuously tracks matching EndpointSlice objects, and whenever the set of Pods in a Service changes, the set of Pods proxied by the APISIX Gateway will also update accordingly. + +### Ingress + +Ingress is a Kubernetes resource that manages external access to services within a cluster, typically HTTP and HTTPS traffic. It provides a way to define rules for routing external traffic to internal services. + +## Gateway API + +Gateway API is an official Kubernetes project focused on L4 and L7 routing in Kubernetes. This project represents the next generation of Kubernetes Ingress, Load Balancing, and Service Mesh APIs. + +For more information on supporting Gateway API, please refer to [Gateway API](./gateway-api.md). + +## APISIX Ingress Controller CRDs API + +The APISIX Ingress Controller defines several Custom Resource Definitions (CRDs) to manage routing, upstreams, TLS, and cluster settings declaratively. + +### Gateway API Extensions + +Enable additional features not included in the standard Kubernetes Gateway API, developed and maintained by Gateway API implementers to extend functionality securely and reliably. + +* GatewayProxy: Defines connection settings between the APISIX Ingress Controller and APISIX, including auth, endpoints, and global plugins. Referenced via parametersRef in Gateway, GatewayClass, or IngressClass + +* BackendTrafficPolicy: Defines traffic management settings for backend services, including load balancing, timeouts, retries, and host header handling in the APISIX Ingress Controller. + +* Consumer: Defines API consumers and their credentials, enabling authentication and plugin configuration for controlling access to API endpoints. + +* PluginConfig: Defines reusable plugin configurations that can be referenced by other resources like HTTPRoute, enabling separation of routing logic and plugin settings for better reusability and manageability. + +* HTTPRoutePolicy: Configures advanced traffic management and routing policies for HTTPRoute or Ingress resources, enhancing functionality without modifying the original resources. + +![Gateway API Extensions Overview](../../../assets/images/gateway-api-extensions-resources.png) + +### Ingress API Extensions + +APISIX Ingress Controller CRDs extend Kubernetes functionality to provide declarative configuration management for the Apache APISIX gateway, supporting advanced routing, traffic management, and security policies. + +* ApisixRoute: Defines routing rules for HTTP/TCP/UDP, supporting path matching, hostnames, method filtering, and backend service configurations. Can reference ApisixUpstream and ApisixPluginConfig resources. + +* ApisixUpstream: Extends Kubernetes Services with advanced configurations such as load balancing, health checks, retries, timeouts, and service subset selection. + +* ApisixConsumer: Defines API consumers and their authentication credentials, supporting methods like basicAuth, keyAuth, jwtAuth, hmacAuth, wolfRBAC, and ldapAuth. + +* ApisixPluginConfig: Defines reusable plugin configurations referenced by ApisixRoute through the plugin_config_name field, promoting separation of routing logic and plugin settings. + +* ApisixTls: Manages SSL/TLS certificates, supporting SNI binding and mutual TLS for secure APISIX gateway connections. + +![V2 CRDs Overview](../../../assets/images/v2-crds-api-resources.png) diff --git a/docs/configure.md b/docs/en/latest/configure.md similarity index 56% rename from docs/configure.md rename to docs/en/latest/configure.md index 06c69d5da..c4a104e90 100644 --- a/docs/configure.md +++ b/docs/en/latest/configure.md @@ -1,4 +1,30 @@ -# Configure +--- +title: Configuration +keywords: + - APISIX Ingress + - Apache APISIX + - Kubernetes Ingress + - Gateway API +description: Configuration of the APISIX Ingress Controller +--- + The APISIX Ingress Controller is a Kubernetes Ingress Controller that implements the Gateway API. This document describes how to configure the APISIX Ingress Controller. diff --git a/docs/en/latest/developer-guide.md b/docs/en/latest/developer-guide.md new file mode 100644 index 000000000..90fdacc78 --- /dev/null +++ b/docs/en/latest/developer-guide.md @@ -0,0 +1,118 @@ +--- +title: Developer Guide +keywords: + - APISIX ingress + - Apache APISIX + - Kubernetes ingress + - Development + - Contribute +description: Setting up development environment for APISIX Ingress controller. +--- + + +This document walks through how you can set up your development environment to contribute to APISIX Ingress controller. + +## Prerequisites + +Before you get started make sure you have: + +1. Installed [Go 1.23](https://golang.org/dl/) or later +2. A Kubernetes cluster available. We recommend using [kind](https://kind.sigs.k8s.io/). +3. Installed APISIX in Kubernetes using [Helm](https://github.com/apache/apisix-helm-chart). +4. Installed [ADC v0.20.0+](https://github.com/api7/adc/releases) + +## Fork and clone + +1. Fork the repository [apache/apisix-ingress-controller](https://github.com/apache/apisix-ingress-controller) to your GitHub account +2. Clone the fork to your workstation. +3. Run `go mod download` to download the required modules. + +:::tip + +If you are in China, you can speed up the downloads by setting `GOPROXY` to `https://goproxy.cn`. + +::: + +## Install CRD and Gateway API + +To install the [CRD](./concepts/resources.md#apisix-ingress-controller-crds-api) and [Gateway API](https://gateway-api.sigs.k8s.io/), run the following commands: + +```shell +make install +``` + +## Build from source + +To build APISIX Ingress controller, run the command below on the root of the project: + +```shell +make build +``` + +Now you can run it by: + +```shell +# for ARM64 architecture, use the following command: +# ./bin/apisix-ingress-controller_arm64 version +./bin/apisix-ingress-controller_amd64 version +``` + +## Building Image + +To build a Docker image for APISIX Ingress controller, you can use the following command: + +```shell +make build-image IMG=apache/apisix-ingress-controller:dev +``` + +## Running tests + +### Unit Tests + +To run unit tests: + +```shell +make unit-test +``` + +### e2e Tests + +To run end-to-end tests, you need to install [kind](https://kind.sigs.k8s.io/). + +Launch a kind cluster with the following command: + +```shell +make kind-up +``` + +To run end-to-end e2e-tests against any changes, you need to load the built Docker images into the Kubernetes cluster: + +```shell +# build docker image for APISIX Ingress controller +make build-image +# load the image into kind cluster +make kind-load-images +``` + +Currently, we use Kind version `0.26.0` and Kubernetes version `1.26+` for running the tests. + +```shell +make e2e-test +``` diff --git a/docs/getting-started.md b/docs/en/latest/getting-started.md similarity index 91% rename from docs/getting-started.md rename to docs/en/latest/getting-started.md index 3f20bc2c5..fc8d02137 100644 --- a/docs/getting-started.md +++ b/docs/en/latest/getting-started.md @@ -43,9 +43,9 @@ Before installing APISIX Ingress Controller, ensure you have: 1. A working Kubernetes cluster (version 1.26+) 2. [Helm](https://helm.sh/) (version 3.8+) installed -### Install APISIX and APISIX Ingress Controller +### Install APISIX and APISIX Ingress Controller (Standalone API-driven mode) -Install the Gateway API CRDs, APISIX, and APISIX Ingress Controller using the following commands: +Install the Gateway API CRDs, [APISIX Standalone API-driven mode](https://apisix.apache.org/docs/apisix/deployment-modes/#api-driven-experimental), and APISIX Ingress Controller using the following commands: ```bash helm repo add apisix https://charts.apiseven.com @@ -55,7 +55,11 @@ helm repo update helm install apisix \ --namespace ingress-apisix \ --create-namespace \ + --set apisix.deployment.role=traditional \ + --set apisix.deployment.role_traditional.config_provider=yaml \ + --set etcd.enabled=false \ --set ingress-controller.enabled=true \ + --set ingress-controller.config.provider.type=apisix-standalone \ --set ingress-controller.apisix.adminService.namespace=ingress-apisix \ --set ingress-controller.gatewayProxy.createDefault=true \ apisix/apisix @@ -66,7 +70,7 @@ helm install apisix \ Install the httpbin example application to test the configuration: ```bash -https://raw.githubusercontent.com/apache/apisix-ingress-controller/refs/heads/v2.0.0/examples/httpbin/deployment.yaml +kubectl apply -f https://raw.githubusercontent.com/apache/apisix-ingress-controller/refs/heads/v2.0.0/examples/httpbin/deployment.yaml ``` ### Configure a Route diff --git a/docs/upgrade-guide.md b/docs/en/latest/upgrade-guide.md similarity index 70% rename from docs/upgrade-guide.md rename to docs/en/latest/upgrade-guide.md index 297fff7b3..6b3fa7f94 100644 --- a/docs/upgrade-guide.md +++ b/docs/en/latest/upgrade-guide.md @@ -1,4 +1,29 @@ -# APISIX Ingress Controller Upgrade Guide +--- +title: Upgrade Guide +keywords: + - APISIX Ingress + - Apache APISIX + - Kubernetes Ingress + - Gateway API +--- + ## Upgrading from 1.x.x to 2.0.0: Key Changes and Considerations @@ -21,7 +46,7 @@ There were two main deployment architectures in 1.x.x: #### Architecture in 2.0.0 -![upgrade to 2.0.0 architecture](./assets/images/upgrade-to-architecture.png) +![upgrade to 2.0.0 architecture](../../assets/images/upgrade-to-architecture.png) ##### Mock-ETCD Mode Deprecated @@ -39,7 +64,13 @@ etcdserver: ##### Controller-Only Configuration Source -In 2.0.0, all data plane configurations must originate from the Ingress Controller. Configurations via Admin API or any external methods are no longer supported and will be ignored or may cause errors. +Starting with APISIX Ingress Controller 2.0.0, the controller is the single source of truth. Manual Admin API changes will be overwritten on the next full sync. The prior approach, which allowed controller-managed and manually added configurations to coexist, was incorrect and is now deprecated. + +#### APISIX With Etcd (Admin API) synchronization performance + +In APISIX Ingress Controller 2.0.0, ADC performs scheduled resource synchronization by comparing resources against the admin API response. + +Because the Admin API fills in default values, the submitted content may differ from the returned result. This breaks the diff, triggering full updates to data plane resources, causing cache invalidation and significant performance impact. ### Ingress Configuration Changes @@ -108,14 +139,24 @@ spec: #### `ApisixUpstream` -Due to current limitations in the ADC (API Definition Controller) component, the following fields are not yet supported: +Due to current limitations in the [ADC](https://github.com/api7/adc) component, the following fields are not yet supported: * `spec.discovery`: Service Discovery * `spec.healthCheck`: Health Checking More details: [ADC Backend Differences](https://github.com/api7/adc/blob/2449ca81e3c61169f8c1e59efb4c1173a766bce2/libs/backend-apisix-standalone/README.md#differences-in-upstream) -#### Limited Support for Ingress Annotations +#### `ApisixClusterConfig` + +The `ApisixClusterConfig` CRD has been removed in 2.0.0. global rules and configurations should now be managed through the `ApisixGlobalRule` CRDs. + +#### Ingress + +##### API Version Support + +Currently supports networking.k8s.io/v1 only. Support for other Ingress API versions (networking.k8s.io/v1beta1 and extensions/v1beta1) is not yet available in 2.0.0. + +##### Limited Support for Ingress Annotations Ingress annotations used in version 1.x.x are not fully supported in 2.0.0. If your existing setup relies on any of the following annotations, validate compatibility or consider delaying the upgrade. @@ -162,10 +203,10 @@ Ingress annotations used in version 1.x.x are not fully supported in 2.0.0. If y ### Summary -| Category | Description | -| ---------------- | ---------------------------------------------------------------------------------------------------- | -| Architecture | The `mock-etcd` component has been removed. Configuration is now centralized through the Controller. | -| Configuration | Static configuration fields have been removed. Use `GatewayProxy` CRD to configure the data plane. | -| Data Plane | Requires APISIX version 3.13.0 running in `standalone` mode. | -| API | Some fields in `Ingress Annotations` and `ApisixUpstream` are not yet supported. | -| Upgrade Strategy | Blue-green deployment or canary release is recommended before full switchover. | +| Category | Description | +| ---------------- | --------------------------------------------------------------------------------------------------------------------------------- | +| Architecture | The `mock-etcd` component has been removed. Configuration is now centralized through the Controller. | +| Configuration | Static configuration fields have been removed. Use `GatewayProxy` CRD to configure the data plane. | +| Data Plane | The Admin API configuration method is still supported. Support for the Standalone API-driven mode was introduced in APISIX 3.13.0 and later. | +| API | Some fields in `Ingress Annotations` and `ApisixUpstream` are not yet supported. | +| Upgrade Strategy | Blue-green deployment or canary release is recommended before full switchover. | diff --git a/docs/quickstart.md b/docs/quickstart.md deleted file mode 100644 index da0a3a686..000000000 --- a/docs/quickstart.md +++ /dev/null @@ -1,60 +0,0 @@ -# Quickstart - -This quickstart guide will help you get started with APISIX Ingress Controller in a few simple steps. - -## Prerequisites - -* Kubernetes -* API7 Dashboard -* API7 Gateway - -Please ensure you have deployed the API7 Dashboard control plane. - -Note: Refer to the [Gateway API Release Changelog](https://github.com/kubernetes-sigs/gateway-api/releases/tag/v1.0.0), it is recommended to use Kubernetes version 1.25+. - -## Installation - -Install the Gateway API CRDs: - -```shell -kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.1.0/standard-install.yaml - -``` - -Install The APISIX Ingress Controller: - -```shell -kubectl apply -f https://github.com/apache/apisix-ingress-controller/releases/download/install.yaml - -``` - -## Test HTTP Routing - -Install the GatewayClass, Gateway, HTTPRoute and httpbin example app: - -```shell -kubectl apply -f https://github.com/apache/apisix-ingress-controller/blob/release-v2-dev/examples/quickstart.yaml -``` - -Requests will be forwarded by the gateway to the httpbin application: - -```shell -curl http://{apisix_gateway_loadbalancer_ip}/headers -``` - -:::Note If the APISIX Gateway service without loadbalancer - -You can forward the local port to the APISIX Gateway service with the following command: - -```shell -# Listen on port 9080 locally, forwarding to 80 in the pod -kubectl port-forward svc/${apisix-gateway-svc} 9080:80 -n ${apisix_gateway_namespace} -``` - -Now you can send HTTP requests to access it: - -```shell -curl http://localhost:9080/headers -``` - -::: diff --git a/go.mod b/go.mod index 05aeda446..02b6be3d4 100644 --- a/go.mod +++ b/go.mod @@ -1,84 +1,115 @@ module github.com/apache/apisix-ingress-controller -go 1.22.0 +go 1.24.0 -toolchain go1.22.5 +toolchain go1.24.1 require ( - github.com/Masterminds/sprig/v3 v3.2.3 + github.com/Masterminds/sprig/v3 v3.3.0 github.com/api7/gopkg v0.2.1-0.20230601092738-0f3730f9b57a github.com/gavv/httpexpect/v2 v2.16.0 github.com/go-logr/logr v1.4.2 github.com/go-logr/zapr v1.3.0 github.com/google/uuid v1.6.0 - github.com/gruntwork-io/terratest v0.47.0 + github.com/gruntwork-io/terratest v0.50.0 github.com/hashicorp/go-memdb v1.3.4 github.com/hashicorp/go-multierror v1.1.1 github.com/incubator4/go-resty-expr v0.1.1 - github.com/onsi/ginkgo/v2 v2.20.0 - github.com/onsi/gomega v1.34.1 + github.com/onsi/ginkgo/v2 v2.21.0 + github.com/onsi/gomega v1.35.1 github.com/pkg/errors v0.9.1 github.com/samber/lo v1.47.0 - github.com/spf13/cobra v1.8.1 - github.com/stretchr/testify v1.9.0 + github.com/spf13/cobra v1.9.1 + github.com/stretchr/testify v1.10.0 github.com/xeipuuv/gojsonschema v1.2.0 - go.etcd.io/etcd/client/v3 v3.5.15 + go.etcd.io/etcd/client/v3 v3.5.21 go.uber.org/multierr v1.11.0 go.uber.org/zap v1.27.0 golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 - golang.org/x/net v0.28.0 + golang.org/x/net v0.40.0 gopkg.in/yaml.v3 v3.0.1 - helm.sh/helm/v3 v3.15.4 - k8s.io/api v0.31.1 - k8s.io/apiextensions-apiserver v0.31.1 - k8s.io/apimachinery v0.31.1 - k8s.io/client-go v0.31.1 - k8s.io/kubectl v0.30.3 - k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 + helm.sh/helm/v3 v3.18.4 + k8s.io/api v0.33.2 + k8s.io/apiextensions-apiserver v0.33.2 + k8s.io/apimachinery v0.33.2 + k8s.io/client-go v0.33.2 + k8s.io/kubectl v0.33.2 + k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 sigs.k8s.io/controller-runtime v0.19.0 sigs.k8s.io/gateway-api v1.2.0 sigs.k8s.io/yaml v1.4.0 ) require ( - github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 // indirect - github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect - github.com/BurntSushi/toml v1.3.2 // indirect + cel.dev/expr v0.19.1 // indirect + dario.cat/mergo v1.0.1 // indirect + filippo.io/edwards25519 v1.1.0 // indirect + github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c // indirect + github.com/BurntSushi/toml v1.5.0 // indirect github.com/MakeNowJust/heredoc v1.0.0 // indirect github.com/Masterminds/goutils v1.1.1 // indirect - github.com/Masterminds/semver/v3 v3.2.1 // indirect + github.com/Masterminds/semver/v3 v3.3.0 // indirect github.com/Masterminds/squirrel v1.5.4 // indirect - github.com/Microsoft/hcsshim v0.11.4 // indirect github.com/TylerBrock/colorjson v0.0.0-20200706003622-8a50f05110d2 // indirect github.com/ajg/form v1.5.1 // indirect github.com/andybalholm/brotli v1.0.4 // indirect github.com/antlr4-go/antlr/v4 v4.13.0 // indirect github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect - github.com/aws/aws-sdk-go v1.44.245 // indirect + github.com/aws/aws-sdk-go-v2 v1.32.5 // indirect + github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7 // indirect + github.com/aws/aws-sdk-go-v2/config v1.28.5 // indirect + github.com/aws/aws-sdk-go-v2/credentials v1.17.46 // indirect + github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.20 // indirect + github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.41 // indirect + github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.24 // indirect + github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.24 // indirect + github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 // indirect + github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.24 // indirect + github.com/aws/aws-sdk-go-v2/service/acm v1.30.6 // indirect + github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.0 // indirect + github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.44.0 // indirect + github.com/aws/aws-sdk-go-v2/service/dynamodb v1.37.1 // indirect + github.com/aws/aws-sdk-go-v2/service/ec2 v1.193.0 // indirect + github.com/aws/aws-sdk-go-v2/service/ecr v1.36.6 // indirect + github.com/aws/aws-sdk-go-v2/service/ecs v1.52.0 // indirect + github.com/aws/aws-sdk-go-v2/service/iam v1.38.1 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.5 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.5 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.5 // indirect + github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.5 // indirect + github.com/aws/aws-sdk-go-v2/service/kms v1.37.6 // indirect + github.com/aws/aws-sdk-go-v2/service/lambda v1.69.0 // indirect + github.com/aws/aws-sdk-go-v2/service/rds v1.91.0 // indirect + github.com/aws/aws-sdk-go-v2/service/route53 v1.46.2 // indirect + github.com/aws/aws-sdk-go-v2/service/s3 v1.69.0 // indirect + github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.6 // indirect + github.com/aws/aws-sdk-go-v2/service/sns v1.33.6 // indirect + github.com/aws/aws-sdk-go-v2/service/sqs v1.37.1 // indirect + github.com/aws/aws-sdk-go-v2/service/ssm v1.56.0 // indirect + github.com/aws/aws-sdk-go-v2/service/sso v1.24.6 // indirect + github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.5 // indirect + github.com/aws/aws-sdk-go-v2/service/sts v1.33.1 // indirect + github.com/aws/smithy-go v1.22.1 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/blang/semver/v4 v4.0.0 // indirect github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc // indirect github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/chai2010/gettext-go v1.0.2 // indirect - github.com/containerd/containerd v1.7.15 // indirect + github.com/containerd/containerd v1.7.27 // indirect + github.com/containerd/errdefs v0.3.0 // indirect github.com/containerd/log v0.1.0 // indirect + github.com/containerd/platforms v0.2.1 // indirect github.com/coreos/go-semver v0.3.1 // indirect github.com/coreos/go-systemd/v22 v22.5.0 // indirect - github.com/cpuguy83/go-md2man/v2 v2.0.4 // indirect - github.com/cyphar/filepath-securejoin v0.2.4 // indirect + github.com/cpuguy83/go-md2man/v2 v2.0.6 // indirect + github.com/cyphar/filepath-securejoin v0.4.1 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect - github.com/distribution/reference v0.5.0 // indirect - github.com/docker/cli v25.0.1+incompatible // indirect - github.com/docker/distribution v2.8.3+incompatible // indirect - github.com/docker/docker v26.1.4+incompatible // indirect - github.com/docker/docker-credential-helpers v0.7.0 // indirect - github.com/docker/go-connections v0.5.0 // indirect - github.com/docker/go-metrics v0.0.1 // indirect github.com/emicklei/go-restful/v3 v3.12.0 // indirect - github.com/evanphx/json-patch v5.9.0+incompatible // indirect + github.com/evanphx/json-patch v5.9.11+incompatible // indirect github.com/evanphx/json-patch/v5 v5.9.0 // indirect - github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d // indirect + github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f // indirect github.com/fatih/color v1.17.0 // indirect github.com/fatih/structs v1.1.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect @@ -90,40 +121,40 @@ require ( github.com/go-openapi/jsonpointer v0.21.0 // indirect github.com/go-openapi/jsonreference v0.21.0 // indirect github.com/go-openapi/swag v0.23.0 // indirect - github.com/go-sql-driver/mysql v1.7.1 // indirect + github.com/go-sql-driver/mysql v1.8.1 // indirect github.com/go-task/slim-sprig/v3 v3.0.0 // indirect github.com/gobwas/glob v0.2.3 // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.4 // indirect - github.com/google/btree v1.1.2 // indirect - github.com/google/cel-go v0.20.1 // indirect - github.com/google/gnostic-models v0.6.8 // indirect - github.com/google/go-cmp v0.6.0 // indirect + github.com/google/btree v1.1.3 // indirect + github.com/google/cel-go v0.23.2 // indirect + github.com/google/gnostic-models v0.6.9 // indirect + github.com/google/go-cmp v0.7.0 // indirect github.com/google/go-querystring v1.1.0 // indirect - github.com/google/gofuzz v1.2.0 // indirect - github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 // indirect + github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db // indirect github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect - github.com/gorilla/mux v1.8.0 // indirect - github.com/gorilla/websocket v1.5.1 // indirect + github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 // indirect github.com/gosuri/uitable v0.0.4 // indirect - github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 // indirect + github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect + github.com/grpc-ecosystem/grpc-gateway/v2 v2.24.0 // indirect github.com/gruntwork-io/go-commons v0.8.0 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-immutable-radix v1.3.1 // indirect github.com/hashicorp/go-uuid v1.0.1 // indirect github.com/hashicorp/golang-lru v1.0.2 // indirect github.com/hpcloud/tail v1.0.0 // indirect - github.com/huandu/xstrings v1.4.0 // indirect - github.com/imdario/mergo v0.3.16 // indirect + github.com/huandu/xstrings v1.5.0 // indirect github.com/imkira/go-interpol v1.1.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/jackc/pgpassfile v1.0.0 // indirect + github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect + github.com/jackc/pgx/v5 v5.7.1 // indirect + github.com/jackc/puddle/v2 v2.2.2 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect - github.com/jmoiron/sqlx v1.3.5 // indirect + github.com/jmoiron/sqlx v1.4.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/klauspost/compress v1.17.4 // indirect + github.com/klauspost/compress v1.18.0 // indirect github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect github.com/lib/pq v1.10.9 // indirect @@ -131,42 +162,39 @@ require ( github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect - github.com/mattn/go-runewidth v0.0.15 // indirect - github.com/mattn/go-sqlite3 v1.14.19 // indirect + github.com/mattn/go-runewidth v0.0.9 // indirect github.com/mattn/go-zglob v0.0.2-0.20190814121620-e3c945676326 // indirect github.com/miekg/dns v1.1.62 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect - github.com/moby/locker v1.0.1 // indirect - github.com/moby/spdystream v0.4.0 // indirect - github.com/moby/term v0.5.0 // indirect + github.com/moby/spdystream v0.5.0 // indirect + github.com/moby/term v0.5.2 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect github.com/opencontainers/go-digest v1.0.0 // indirect - github.com/opencontainers/image-spec v1.1.0 // indirect + github.com/opencontainers/image-spec v1.1.1 // indirect github.com/peterbourgon/diskv v2.0.1+incompatible // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect - github.com/pquerna/otp v1.2.0 // indirect - github.com/prometheus/client_golang v1.19.1 // indirect + github.com/pquerna/otp v1.4.0 // indirect + github.com/prometheus/client_golang v1.22.0 // indirect github.com/prometheus/client_model v0.6.1 // indirect - github.com/prometheus/common v0.55.0 // indirect + github.com/prometheus/common v0.62.0 // indirect github.com/prometheus/procfs v0.15.1 // indirect - github.com/rivo/uniseg v0.4.4 // indirect - github.com/rubenv/sql-migrate v1.5.2 // indirect + github.com/rubenv/sql-migrate v1.8.0 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/sanity-io/litter v1.5.5 // indirect github.com/sergi/go-diff v1.3.1 // indirect - github.com/shopspring/decimal v1.3.1 // indirect + github.com/shopspring/decimal v1.4.0 // indirect github.com/sirupsen/logrus v1.9.3 // indirect - github.com/spf13/cast v1.6.0 // indirect - github.com/spf13/pflag v1.0.5 // indirect - github.com/stoewer/go-strcase v1.2.0 // indirect - github.com/urfave/cli v1.22.14 // indirect + github.com/spf13/cast v1.7.0 // indirect + github.com/spf13/pflag v1.0.6 // indirect + github.com/stoewer/go-strcase v1.3.0 // indirect + github.com/urfave/cli v1.22.16 // indirect github.com/valyala/bytebufferpool v1.0.0 // indirect github.com/valyala/fasthttp v1.34.0 // indirect github.com/x448/float16 v0.8.4 // indirect @@ -176,47 +204,47 @@ require ( github.com/yalp/jsonpath v0.0.0-20180802001716-5cc68e5049a0 // indirect github.com/yudai/gojsondiff v1.0.0 // indirect github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82 // indirect - go.etcd.io/etcd/api/v3 v3.5.15 // indirect - go.etcd.io/etcd/client/pkg/v3 v3.5.15 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 // indirect - go.opentelemetry.io/otel v1.28.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0 // indirect - go.opentelemetry.io/otel/metric v1.28.0 // indirect - go.opentelemetry.io/otel/sdk v1.28.0 // indirect - go.opentelemetry.io/otel/trace v1.28.0 // indirect - go.opentelemetry.io/proto/otlp v1.3.1 // indirect - go.starlark.net v0.0.0-20230525235612-a134d8f9ddca // indirect + go.etcd.io/etcd/api/v3 v3.5.21 // indirect + go.etcd.io/etcd/client/pkg/v3 v3.5.21 // indirect + go.opentelemetry.io/auto/sdk v1.1.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.58.0 // indirect + go.opentelemetry.io/otel v1.33.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.33.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.33.0 // indirect + go.opentelemetry.io/otel/metric v1.33.0 // indirect + go.opentelemetry.io/otel/sdk v1.33.0 // indirect + go.opentelemetry.io/otel/trace v1.33.0 // indirect + go.opentelemetry.io/proto/otlp v1.4.0 // indirect golang.org/x/arch v0.6.0 // indirect - golang.org/x/crypto v0.26.0 // indirect - golang.org/x/mod v0.20.0 // indirect - golang.org/x/oauth2 v0.21.0 // indirect - golang.org/x/sync v0.8.0 // indirect - golang.org/x/sys v0.24.0 // indirect - golang.org/x/term v0.23.0 // indirect - golang.org/x/text v0.17.0 // indirect - golang.org/x/time v0.5.0 // indirect - golang.org/x/tools v0.24.0 // indirect + golang.org/x/crypto v0.39.0 // indirect + golang.org/x/mod v0.25.0 // indirect + golang.org/x/oauth2 v0.28.0 // indirect + golang.org/x/sync v0.15.0 // indirect + golang.org/x/sys v0.33.0 // indirect + golang.org/x/term v0.32.0 // indirect + golang.org/x/text v0.26.0 // indirect + golang.org/x/time v0.9.0 // indirect + golang.org/x/tools v0.33.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 // indirect - google.golang.org/grpc v1.66.2 // indirect - google.golang.org/protobuf v1.34.2 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20241209162323-e6fa225c2576 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20241209162323-e6fa225c2576 // indirect + google.golang.org/grpc v1.68.1 // indirect + google.golang.org/protobuf v1.36.5 // indirect gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect gopkg.in/fsnotify.v1 v1.4.7 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect - gopkg.in/yaml.v2 v2.4.0 // indirect - k8s.io/apiserver v0.31.1 // indirect - k8s.io/cli-runtime v0.30.3 // indirect - k8s.io/component-base v0.31.1 // indirect + k8s.io/apiserver v0.33.2 // indirect + k8s.io/cli-runtime v0.33.2 // indirect + k8s.io/component-base v0.33.2 // indirect k8s.io/klog/v2 v2.130.1 // indirect - k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f // indirect + k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff // indirect moul.io/http2curl/v2 v2.3.0 // indirect - oras.land/oras-go v1.2.5 // indirect - sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 // indirect - sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect - sigs.k8s.io/kustomize/api v0.17.2 // indirect - sigs.k8s.io/kustomize/kyaml v0.17.1 // indirect - sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect + oras.land/oras-go/v2 v2.6.0 // indirect + sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2 // indirect + sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 // indirect + sigs.k8s.io/kustomize/api v0.19.0 // indirect + sigs.k8s.io/kustomize/kyaml v0.19.0 // indirect + sigs.k8s.io/randfill v1.0.0 // indirect + sigs.k8s.io/structured-merge-diff/v4 v4.6.0 // indirect ) diff --git a/go.sum b/go.sum index 92545d8c8..008283077 100644 --- a/go.sum +++ b/go.sum @@ -1,37 +1,34 @@ -cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +cel.dev/expr v0.19.1 h1:NciYrtDRIR0lNCnH1LFJegdjspNx9fI59O7TWcua/W4= +cel.dev/expr v0.19.1/go.mod h1:MrpN08Q+lEBs+bGYdLxxHkZoUSsCp0nSKTs0nTymJgw= +dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= +dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= +filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA= +filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4= github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 h1:bvDV9vkmnHYOMsOr4WLk+Vo07yKIzd94sVoIqshQ4bU= github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= -github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= -github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= +github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c h1:udKWzYgxTojEKWjV8V+WSxDXJ4NFATAsZjh8iIbsQIg= +github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= -github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= +github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= +github.com/BurntSushi/toml v1.5.0 h1:W5quZX/G/csjUnuI8SUYlsHs9M38FC7znL0lIO+DvMg= +github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/DATA-DOG/go-sqlmock v1.5.2 h1:OcvFkGmslmlZibjAjaHm3L//6LiuBgolP7OputlJIzU= github.com/DATA-DOG/go-sqlmock v1.5.2/go.mod h1:88MAG/4G7SMwSE3CeA0ZKzrT5CiOU3OJ+JlNzwDqpNU= github.com/MakeNowJust/heredoc v1.0.0 h1:cXCdzVdstXyiTqTvfqk9SDHpKNjxuom+DOlyEeQ4pzQ= github.com/MakeNowJust/heredoc v1.0.0/go.mod h1:mG5amYoWBHf8vpLOuehzbGGw0EHxpZZ6lCpQ4fNJ8LE= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= -github.com/Masterminds/semver/v3 v3.2.0/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= -github.com/Masterminds/semver/v3 v3.2.1 h1:RN9w6+7QoMeJVGyfmbcgs28Br8cvmnucEXnY0rYXWg0= -github.com/Masterminds/semver/v3 v3.2.1/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= -github.com/Masterminds/sprig/v3 v3.2.3 h1:eL2fZNezLomi0uOLqjQoN6BfsDD+fyLtgbJMAj9n6YA= -github.com/Masterminds/sprig/v3 v3.2.3/go.mod h1:rXcFaZ2zZbLRJv/xSysmlgIM1u11eBaRMhvYXJNkGuM= +github.com/Masterminds/semver/v3 v3.3.0 h1:B8LGeaivUe71a5qox1ICM/JLl0NqZSW5CHyL+hmvYS0= +github.com/Masterminds/semver/v3 v3.3.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM= +github.com/Masterminds/sprig/v3 v3.3.0 h1:mQh0Yrg1XPo6vjYXgtf5OtijNAKJRNcTdOOGZe3tPhs= +github.com/Masterminds/sprig/v3 v3.3.0/go.mod h1:Zy1iXRYNqNLUolqCpL4uhk6SHUMAOSCzdgBfDb35Lz0= github.com/Masterminds/squirrel v1.5.4 h1:uUcX/aBc8O7Fg9kaISIUsHXdKuqehiXAMQTYX8afzqM= github.com/Masterminds/squirrel v1.5.4/go.mod h1:NNaOrjSoIDfDA40n7sr2tPNZRfjzjA400rg+riTZj10= -github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= -github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= -github.com/Microsoft/hcsshim v0.11.4 h1:68vKo2VN8DE9AdN4tnkWnmdhqdbpUFM8OF3Airm7fz8= -github.com/Microsoft/hcsshim v0.11.4/go.mod h1:smjE4dvqPX9Zldna+t5FG3rnoHhaB7QYxPRqGcpAD9w= -github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d h1:UrqY+r/OJnIp5u0s1SbQ8dVfLCZJsnvazdBP5hS4iRs= -github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= github.com/TylerBrock/colorjson v0.0.0-20200706003622-8a50f05110d2 h1:ZBbLwSJqkHBuFDA6DUhhse0IGJ7T5bemHyNILUjvOq4= github.com/TylerBrock/colorjson v0.0.0-20200706003622-8a50f05110d2/go.mod h1:VSw57q4QFiWDbRnjdX8Cb3Ow0SFncRw+bA/ofY6Q83w= github.com/agiledragon/gomonkey/v2 v2.10.1/go.mod h1:ap1AmDzcVOAz1YpeJ3TCzIgstoaWLA6jbbgxfB4w2iY= github.com/ajg/form v1.5.1 h1:t9c7v8JUKu/XxOGBU0yjNpaMloxGEJhUkqFRq0ibGeU= github.com/ajg/form v1.5.1/go.mod h1:uL1WgH+h2mgNtvBq0339dVnzXdBETtL2LeUXaIv25UY= -github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= -github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/andybalholm/brotli v1.0.4 h1:V7DdXeJtZscaqfNuAdSRuRFzuiKlHSC/Zh3zl9qY3JY= github.com/andybalholm/brotli v1.0.4/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig= github.com/antlr4-go/antlr/v4 v4.13.0 h1:lxCg3LAv+EUK6t1i0y1V6/SLeUi0eKEKdhQAlS8TVTI= @@ -42,10 +39,78 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPd github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 h1:DklsrG3dyBCFEj5IhUbnKptjxatkF07cF2ak3yi77so= github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= -github.com/aws/aws-sdk-go v1.44.245 h1:KtY2s4q31/kn33AdV63R5t77mdxsI7rq3YT7Mgo805M= -github.com/aws/aws-sdk-go v1.44.245/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI= -github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= -github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= +github.com/aws/aws-sdk-go-v2 v1.32.5 h1:U8vdWJuY7ruAkzaOdD7guwJjD06YSKmnKCJs7s3IkIo= +github.com/aws/aws-sdk-go-v2 v1.32.5/go.mod h1:P5WJBrYqqbWVaOxgH0X/FYYD47/nooaPOZPlQdmiN2U= +github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7 h1:lL7IfaFzngfx0ZwUGOZdsFFnQ5uLvR0hWqqhyE7Q9M8= +github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7/go.mod h1:QraP0UcVlQJsmHfioCrveWOC1nbiWUl3ej08h4mXWoc= +github.com/aws/aws-sdk-go-v2/config v1.28.5 h1:Za41twdCXbuyyWv9LndXxZZv3QhTG1DinqlFsSuvtI0= +github.com/aws/aws-sdk-go-v2/config v1.28.5/go.mod h1:4VsPbHP8JdcdUDmbTVgNL/8w9SqOkM5jyY8ljIxLO3o= +github.com/aws/aws-sdk-go-v2/credentials v1.17.46 h1:AU7RcriIo2lXjUfHFnFKYsLCwgbz1E7Mm95ieIRDNUg= +github.com/aws/aws-sdk-go-v2/credentials v1.17.46/go.mod h1:1FmYyLGL08KQXQ6mcTlifyFXfJVCNJTVGuQP4m0d/UA= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.20 h1:sDSXIrlsFSFJtWKLQS4PUWRvrT580rrnuLydJrCQ/yA= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.20/go.mod h1:WZ/c+w0ofps+/OUqMwWgnfrgzZH1DZO1RIkktICsqnY= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.41 h1:hqcxMc2g/MwwnRMod9n6Bd+t+9Nf7d5qRg7RaXKPd6o= +github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.41/go.mod h1:d1eH0VrttvPmrCraU68LOyNdu26zFxQFjrVSb5vdhog= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.24 h1:4usbeaes3yJnCFC7kfeyhkdkPtoRYPa/hTmCqMpKpLI= +github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.24/go.mod h1:5CI1JemjVwde8m2WG3cz23qHKPOxbpkq0HaoreEgLIY= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.24 h1:N1zsICrQglfzaBnrfM0Ys00860C+QFwu6u/5+LomP+o= +github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.24/go.mod h1:dCn9HbJ8+K31i8IQ8EWmWj0EiIk0+vKiHNMxTTYveAg= +github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 h1:VaRN3TlFdd6KxX1x3ILT5ynH6HvKgqdiXoTxAF4HQcQ= +github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1/go.mod h1:FbtygfRFze9usAadmnGJNc8KsP346kEe+y2/oyhGAGc= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.24 h1:JX70yGKLj25+lMC5Yyh8wBtvB01GDilyRuJvXJ4piD0= +github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.24/go.mod h1:+Ln60j9SUTD0LEwnhEB0Xhg61DHqplBrbZpLgyjoEHg= +github.com/aws/aws-sdk-go-v2/service/acm v1.30.6 h1:fDg0RlN30Xf/yYzEUL/WXqhmgFsjVb/I3230oCfyI5w= +github.com/aws/aws-sdk-go-v2/service/acm v1.30.6/go.mod h1:zRR6jE3v/TcbfO8C2P+H0Z+kShiKKVaVyoIl8NQRjyg= +github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.0 h1:1KzQVZi7OTixxaVJ8fWaJAUBjme+iQ3zBOCZhE4RgxQ= +github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.0/go.mod h1:I1+/2m+IhnK5qEbhS3CrzjeiVloo9sItE/2K+so0fkU= +github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.44.0 h1:OREVd94+oXW5a+3SSUAo4K0L5ci8cucCLu+PSiek8OU= +github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.44.0/go.mod h1:Qbr4yfpNqVNl69l/GEDK+8wxLf/vHi0ChoiSDzD7thU= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.37.1 h1:vucMirlM6D+RDU8ncKaSZ/5dGrXNajozVwpmWNPn2gQ= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.37.1/go.mod h1:fceORfs010mNxZbQhfqUjUeHlTwANmIT4mvHamuUaUg= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.193.0 h1:RhSoBFT5/8tTmIseJUXM6INTXTQDF8+0oyxWBnozIms= +github.com/aws/aws-sdk-go-v2/service/ec2 v1.193.0/go.mod h1:mzj8EEjIHSN2oZRXiw1Dd+uB4HZTl7hC8nBzX9IZMWw= +github.com/aws/aws-sdk-go-v2/service/ecr v1.36.6 h1:zg+3FGHA0PBs0KM25qE/rOf2o5zsjNa1g/Qq83+SDI0= +github.com/aws/aws-sdk-go-v2/service/ecr v1.36.6/go.mod h1:ZSq54Z9SIsOTf1Efwgw1msilSs4XVEfVQiP9nYVnKpM= +github.com/aws/aws-sdk-go-v2/service/ecs v1.52.0 h1:7/vgFWplkusJN/m+3QOa+W9FNRqa8ujMPNmdufRaJpg= +github.com/aws/aws-sdk-go-v2/service/ecs v1.52.0/go.mod h1:dPTOvmjJQ1T7Q+2+Xs2KSPrMvx+p0rpyV+HsQVnUK4o= +github.com/aws/aws-sdk-go-v2/service/iam v1.38.1 h1:hfkzDZHBp9jAT4zcd5mtqckpU4E3Ax0LQaEWWk1VgN8= +github.com/aws/aws-sdk-go-v2/service/iam v1.38.1/go.mod h1:u36ahDtZcQHGmVm/r+0L1sfKX4fzLEMdCqiKRKkUMVM= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1 h1:iXtILhvDxB6kPvEXgsDhGaZCSC6LQET5ZHSdJozeI0Y= +github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1/go.mod h1:9nu0fVANtYiAePIBh2/pFUSwtJ402hLnp854CNoDOeE= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.5 h1:gvZOjQKPxFXy1ft3QnEyXmT+IqneM9QAUWlM3r0mfqw= +github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.5/go.mod h1:DLWnfvIcm9IET/mmjdxeXbBKmTCm0ZB8p1za9BVteM8= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.5 h1:3Y457U2eGukmjYjeHG6kanZpDzJADa2m0ADqnuePYVQ= +github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.5/go.mod h1:CfwEHGkTjYZpkQ/5PvcbEtT7AJlG68KkEvmtwU8z3/U= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.5 h1:wtpJ4zcwrSbwhECWQoI/g6WM9zqCcSpHDJIWSbMLOu4= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.5/go.mod h1:qu/W9HXQbbQ4+1+JcZp0ZNPV31ym537ZJN+fiS7Ti8E= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.5 h1:P1doBzv5VEg1ONxnJss1Kh5ZG/ewoIE4MQtKKc6Crgg= +github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.5/go.mod h1:NOP+euMW7W3Ukt28tAxPuoWao4rhhqJD3QEBk7oCg7w= +github.com/aws/aws-sdk-go-v2/service/kms v1.37.6 h1:CZImQdb1QbU9sGgJ9IswhVkxAcjkkD1eQTMA1KHWk+E= +github.com/aws/aws-sdk-go-v2/service/kms v1.37.6/go.mod h1:YJDdlK0zsyxVBxGU48AR/Mi8DMrGdc1E3Yij4fNrONA= +github.com/aws/aws-sdk-go-v2/service/lambda v1.69.0 h1:BXt75frE/FYtAmEDBJRBa2HexOw+oAZWZl6QknZEFgg= +github.com/aws/aws-sdk-go-v2/service/lambda v1.69.0/go.mod h1:guz2K3x4FKSdDaoeB+TPVgJNU9oj2gftbp5cR8ela1A= +github.com/aws/aws-sdk-go-v2/service/rds v1.91.0 h1:eqHz3Uih+gb0vLE5Cc4Xf733vOxsxDp6GFUUVQU4d7w= +github.com/aws/aws-sdk-go-v2/service/rds v1.91.0/go.mod h1:h2jc7IleH3xHY7y+h8FH7WAZcz3IVLOB6/jXotIQ/qU= +github.com/aws/aws-sdk-go-v2/service/route53 v1.46.2 h1:wmt05tPp/CaRZpPV5B4SaJ5TwkHKom07/BzHoLdkY1o= +github.com/aws/aws-sdk-go-v2/service/route53 v1.46.2/go.mod h1:d+K9HESMpGb1EU9/UmmpInbGIUcAkwmcY6ZO/A3zZsw= +github.com/aws/aws-sdk-go-v2/service/s3 v1.69.0 h1:Q2ax8S21clKOnHhhr933xm3JxdJebql+R7aNo7p7GBQ= +github.com/aws/aws-sdk-go-v2/service/s3 v1.69.0/go.mod h1:ralv4XawHjEMaHOWnTFushl0WRqim/gQWesAMF6hTow= +github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.6 h1:1KDMKvOKNrpD667ORbZ/+4OgvUoaok1gg/MLzrHF9fw= +github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.6/go.mod h1:DmtyfCfONhOyVAJ6ZMTrDSFIeyCBlEO93Qkfhxwbxu0= +github.com/aws/aws-sdk-go-v2/service/sns v1.33.6 h1:lEUtRHICiXsd7VRwRjXaY7MApT2X4Ue0Mrwe6XbyBro= +github.com/aws/aws-sdk-go-v2/service/sns v1.33.6/go.mod h1:SODr0Lu3lFdT0SGsGX1TzFTapwveBrT5wztVoYtppm8= +github.com/aws/aws-sdk-go-v2/service/sqs v1.37.1 h1:39WvSrVq9DD6UHkD+fx5x19P5KpRQfNdtgReDVNbelc= +github.com/aws/aws-sdk-go-v2/service/sqs v1.37.1/go.mod h1:3gwPzC9LER/BTQdQZ3r6dUktb1rSjABF1D3Sr6nS7VU= +github.com/aws/aws-sdk-go-v2/service/ssm v1.56.0 h1:mADKqoZaodipGgiZfuAjtlcr4IVBtXPZKVjkzUZCCYM= +github.com/aws/aws-sdk-go-v2/service/ssm v1.56.0/go.mod h1:l9qF25TzH95FhcIak6e4vt79KE4I7M2Nf59eMUVjj6c= +github.com/aws/aws-sdk-go-v2/service/sso v1.24.6 h1:3zu537oLmsPfDMyjnUS2g+F2vITgy5pB74tHI+JBNoM= +github.com/aws/aws-sdk-go-v2/service/sso v1.24.6/go.mod h1:WJSZH2ZvepM6t6jwu4w/Z45Eoi75lPN7DcydSRtJg6Y= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.5 h1:K0OQAsDywb0ltlFrZm0JHPY3yZp/S9OaoLU33S7vPS8= +github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.5/go.mod h1:ORITg+fyuMoeiQFiVGoqB3OydVTLkClw/ljbblMq6Cc= +github.com/aws/aws-sdk-go-v2/service/sts v1.33.1 h1:6SZUVRQNvExYlMLbHdlKB48x0fLbc2iVROyaNEwBHbU= +github.com/aws/aws-sdk-go-v2/service/sts v1.33.1/go.mod h1:GqWyYCwLXnlUB1lOAXQyNSPqPLQJvmo8J0DWBzp9mtg= +github.com/aws/smithy-go v1.22.1 h1:/HPHZQ0g7f4eUeK6HKglFz8uwVfZKgoI25rb/J+dnro= +github.com/aws/smithy-go v1.22.1/go.mod h1:irrKGvNn1InZwb2d7fkIRNucdfwR8R+Ts3wxYa/cJHg= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= @@ -55,81 +120,60 @@ github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc h1:biVzkmvwrH8 github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= github.com/bshuster-repo/logrus-logstash-hook v1.0.0 h1:e+C0SB5R1pu//O4MQ3f9cFuPGoOVeF2fE4Og9otCc70= github.com/bshuster-repo/logrus-logstash-hook v1.0.0/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= -github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd h1:rFt+Y/IK1aEZkEHchZRSq9OQbsSzIT/OrI8YFFmRIng= -github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8= -github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b h1:otBG+dV+YK+Soembjv71DPz3uX/V/6MMlSyD9JBQ6kQ= -github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= -github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0 h1:nvj0OLI3YqYXer/kZD8Ri1aaunCxIEsOst1BVJswV0o= -github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE= github.com/cch123/supermonkey v1.0.1 h1:sPNQhaqMpfpERGb1oNoPcYV5tGln72SLlG2q2ozpzqg= github.com/cch123/supermonkey v1.0.1/go.mod h1:d5jXTCyG6nu/pu0vYmoC0P/l0eBGesv3oQQ315uNBOA= github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= -github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/chai2010/gettext-go v1.0.2 h1:1Lwwip6Q2QGsAdl/ZKPCwTe9fe0CjlUbqj5bFNSjIRk= github.com/chai2010/gettext-go v1.0.2/go.mod h1:y+wnP2cHYaVj19NZhYKAwEMH2CI1gNHeQQ+5AjwawxA= -github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= -github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= -github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= -github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= -github.com/containerd/cgroups v1.1.0 h1:v8rEWFl6EoqHB+swVNjVoCJE8o3jX7e8nqBGPLaDFBM= -github.com/containerd/cgroups v1.1.0/go.mod h1:6ppBcbh/NOOUU+dMKrykgaBnK9lCIBxHqJDGwsa1mIw= -github.com/containerd/containerd v1.7.15 h1:afEHXdil9iAm03BmhjzKyXnnEBtjaLJefdU7DV0IFes= -github.com/containerd/containerd v1.7.15/go.mod h1:ISzRRTMF8EXNpJlTzyr2XMhN+j9K302C21/+cr3kUnY= -github.com/containerd/continuity v0.4.2 h1:v3y/4Yz5jwnvqPKJJ+7Wf93fyWoCB3F5EclWG023MDM= -github.com/containerd/continuity v0.4.2/go.mod h1:F6PTNCKepoxEaXLQp3wDAjygEnImnZ/7o4JzpodfroQ= +github.com/containerd/containerd v1.7.27 h1:yFyEyojddO3MIGVER2xJLWoCIn+Up4GaHFquP7hsFII= +github.com/containerd/containerd v1.7.27/go.mod h1:xZmPnl75Vc+BLGt4MIfu6bp+fy03gdHAn9bz+FreFR0= +github.com/containerd/errdefs v0.3.0 h1:FSZgGOeK4yuT/+DnF07/Olde/q4KBoMsaamhXxIMDp4= +github.com/containerd/errdefs v0.3.0/go.mod h1:+YBYIdtsnF4Iw6nWZhJcqGSg/dwvV7tyJ/kCkyJ2k+M= github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo= +github.com/containerd/platforms v0.2.1 h1:zvwtM3rz2YHPQsF2CHYM8+KtB5dvhISiXh5ZpSBQv6A= +github.com/containerd/platforms v0.2.1/go.mod h1:XHCb+2/hzowdiut9rkudds9bE5yJ7npe7dG/wG+uFPw= github.com/coreos/go-semver v0.3.1 h1:yi21YpKnrx1gt5R+la8n5WgS0kCrsPp33dmEyHReZr4= github.com/coreos/go-semver v0.3.1/go.mod h1:irMmmIw/7yzSRPWryHsK7EYSg09caPQL03VsM8rvUec= github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs= github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4= -github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cpuguy83/go-md2man/v2 v2.0.6 h1:XJtiaUW6dEEqVuZiMTn1ldk455QWwEIsMIJlo5vtkx0= +github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= -github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= -github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/cyphar/filepath-securejoin v0.4.1 h1:JyxxyPEaktOD+GAnqIqTf9A8tHyAG22rowi7HkoSU1s= +github.com/cyphar/filepath-securejoin v0.4.1/go.mod h1:Sdj7gXlvMcPZsbhwhQ33GguGLDGQL7h7bg04C/+u9jI= github.com/davecgh/go-spew v0.0.0-20161028175848-04cdfd42973b/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2 h1:aBfCb7iqHmDEIp6fBvC/hQUddQfg+3qdYjwzaiP9Hnc= -github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2/go.mod h1:WHNsWjnIn2V1LYOrME7e8KxSeKunYHsxEm4am0BUtcI= -github.com/distribution/reference v0.5.0 h1:/FUIFXtfc/x2gpa5/VGfiGLuOIdYa1t65IKK2OFGvA0= -github.com/distribution/reference v0.5.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= -github.com/docker/cli v25.0.1+incompatible h1:mFpqnrS6Hsm3v1k7Wa/BO23oz0k121MTbTO1lpcGSkU= -github.com/docker/cli v25.0.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= -github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk= -github.com/docker/distribution v2.8.3+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/docker v26.1.4+incompatible h1:vuTpXDuoga+Z38m1OZHzl7NKisKWaWlhjQk7IDPSLsU= -github.com/docker/docker v26.1.4+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= -github.com/docker/docker-credential-helpers v0.7.0 h1:xtCHsjxogADNZcdv1pKUHXryefjlVRqWqIhk/uXJp0A= -github.com/docker/docker-credential-helpers v0.7.0/go.mod h1:rETQfLdHNT3foU5kuNkFR1R1V12OJRRO5lzt2D1b5X0= -github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj1Br63c= -github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= +github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= +github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= +github.com/distribution/distribution/v3 v3.0.0 h1:q4R8wemdRQDClzoNNStftB2ZAfqOiN6UX90KJc4HjyM= +github.com/distribution/distribution/v3 v3.0.0/go.mod h1:tRNuFoZsUdyRVegq8xGNeds4KLjwLCRin/tTo6i1DhU= +github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= +github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= +github.com/docker/docker-credential-helpers v0.8.2 h1:bX3YxiGzFP5sOXWc3bTPEXdEaZSeVMrFgOr3T+zrFAo= +github.com/docker/docker-credential-helpers v0.8.2/go.mod h1:P3ci7E3lwkZg6XiHdRKft1KckHiO9a2rNtyFbZ/ry9M= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c h1:+pKlWGMw7gf6bQ+oDZB4KHQFypsfjYlq/C4rfL7D3g8= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= github.com/docker/go-metrics v0.0.1 h1:AgB/0SvBxihN0X8OR4SjsblXkbMvalQ8cjmtKQ2rQV8= github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw= -github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1 h1:ZClxb8laGDf5arXfYcAtECDFgAgHklGI8CxgjHnXKJ4= -github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= github.com/emicklei/go-restful/v3 v3.12.0 h1:y2DdzBAURM29NFF94q6RaY4vjIH1rtwDapwQtU84iWk= github.com/emicklei/go-restful/v3 v3.12.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= -github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= -github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lShz4oaXpDTX2bLe7ls= -github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v5.9.11+incompatible h1:ixHHqfcGvxhWkniF1tWxBHA0yb4Z+d1UQi45df52xW8= +github.com/evanphx/json-patch v5.9.11+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/evanphx/json-patch/v5 v5.9.0 h1:kcBlZQbplgElYIlo/n1hJbls2z/1awpXxpRi0/FOJfg= github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= -github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d h1:105gxyaGwCFad8crR9dcMQWvV9Hvulu6hwUh4tWPJnM= -github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d/go.mod h1:ZZMPRZwes7CROmyNKgQzC3XPs6L/G2EJLHddWejkmf4= +github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f h1:Wl78ApPPB2Wvf/TIe2xdyJxTlb6obmF18d8QdkxNDu4= +github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f/go.mod h1:OSYXu++VVOHnXeitef/D8n/6y4QV8uLHSFXX4NeXMGc= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI= @@ -137,8 +181,8 @@ github.com/fatih/structs v1.1.0 h1:Q7juDM0QtcnhCpeyLGQKyg4TOIghuNXrkL32pHAUMxo= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/foxcpp/go-mockdns v1.0.0 h1:7jBqxd3WDWwi/6WhDvacvH1XsN3rOLXyHM1uhvIx6FI= -github.com/foxcpp/go-mockdns v1.0.0/go.mod h1:lgRN6+KxQBawyIghpnl5CezHFGS9VLzvtVlwxvzXTQ4= +github.com/foxcpp/go-mockdns v1.1.0 h1:jI0rD8M0wuYAxL7r/ynTrCQQq0BVqfB99Vgk7DlmewI= +github.com/foxcpp/go-mockdns v1.1.0/go.mod h1:IhLeSFGed3mJIAXPH2aiRQB+kqz7oqu8ld2qVbOu7Wk= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= @@ -154,9 +198,6 @@ github.com/go-errors/errors v1.4.2 h1:J6MZopCL4uSllY1OfXM374weqZFFItUbrImctkmUxI github.com/go-errors/errors v1.4.2/go.mod h1:sIVyrIiJhuEF+Pj9Ebtd6P/rEYROXFi3BopGUQ5a5Og= github.com/go-gorp/gorp/v3 v3.1.0 h1:ItKF/Vbuj31dmV4jxA1qblpSwkl9g1typ24xoe70IGs= github.com/go-gorp/gorp/v3 v3.1.0/go.mod h1:dLEjIyyRNiXvNZ8PSmzpt1GsWAUK8kjVhEpjH8TixEw= -github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= -github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= -github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= @@ -174,89 +215,58 @@ github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvSc github.com/go-playground/locales v0.14.0/go.mod h1:sawfccIbzZTqEDETgFXqTho0QybSa7l++s0DH+LDiLs= github.com/go-playground/universal-translator v0.18.0/go.mod h1:UvRDBj+xPUEGrFYl+lu/H90nyDXpg0fqeB/AQUGNTVA= github.com/go-playground/validator/v10 v10.10.0/go.mod h1:74x4gJWsvQexRdW8Pn3dXSGrTK4nAUsbPlLADvpJkos= -github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= -github.com/go-sql-driver/mysql v1.7.1 h1:lUIinVbN1DY0xBg0eMOzmmtGoHwWBbvnWubQUrtU8EI= -github.com/go-sql-driver/mysql v1.7.1/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= -github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= +github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpvNJ1Y= +github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= -github.com/gobuffalo/logger v1.0.6 h1:nnZNpxYo0zx+Aj9RfMPBm+x9zAU2OayFh/xrAWi34HU= -github.com/gobuffalo/logger v1.0.6/go.mod h1:J31TBEHR1QLV2683OXTAItYIg8pv2JMHnF/quuAbMjs= -github.com/gobuffalo/packd v1.0.1 h1:U2wXfRr4E9DH8IdsDLlRFwTZTK7hLfq9qT/QHXGVe/0= -github.com/gobuffalo/packd v1.0.1/go.mod h1:PP2POP3p3RXGz7Jh6eYEf93S7vA2za6xM7QT85L4+VY= -github.com/gobuffalo/packr/v2 v2.8.3 h1:xE1yzvnO56cUC0sTpKR3DIbxZgB54AftTFMhB2XEWlY= -github.com/gobuffalo/packr/v2 v2.8.3/go.mod h1:0SahksCVcx4IMnigTjiFuyldmTrdTctXsOdiU5KwbKc= github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= github.com/goccy/go-json v0.9.7/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= -github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= -github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= -github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= -github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= -github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= -github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= -github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= -github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= -github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= -github.com/gomodule/redigo v1.8.2 h1:H5XSIre1MB5NbPYFp+i1NBbb5qN1W8Y8YAQoAYbkm8k= -github.com/gomodule/redigo v1.8.2/go.mod h1:P9dn9mFrCBvWhGE1wpxx6fgq7BAeLBk+UUUzlpkBYO0= -github.com/google/btree v1.1.2 h1:xf4v41cLI2Z6FxbKm+8Bu+m8ifhj15JuZ9sa0jZCMUU= -github.com/google/btree v1.1.2/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= -github.com/google/cel-go v0.20.1 h1:nDx9r8S3L4pE61eDdt8igGj8rf5kjYR3ILxWIpWNi84= -github.com/google/cel-go v0.20.1/go.mod h1:kWcIzTsPX0zmQ+H3TirHstLLf9ep5QTsZBN9u4dOYLg= -github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= -github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= -github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= -github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/btree v1.1.3 h1:CVpQJjYgC4VbzxeGVHfvZrv1ctoYCAI8vbl07Fcxlyg= +github.com/google/btree v1.1.3/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= +github.com/google/cel-go v0.23.2 h1:UdEe3CvQh3Nv+E/j9r1Y//WO0K0cSyD7/y0bzyLIMI4= +github.com/google/cel-go v0.23.2/go.mod h1:52Pb6QsDbC5kvgxvZhiL9QX1oZEkcUF/ZqaPx1J5Wwo= +github.com/google/gnostic-models v0.6.9 h1:MU/8wDLif2qCXZmzncUQ/BOfxWfthHi63KqpoNbWqVw= +github.com/google/gnostic-models v0.6.9/go.mod h1:CiWsm0s6BSQd1hRn8/QmxqB6BesYcbSZxsz9b0KuDBw= github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= -github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= +github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 h1:FKHo8hFI3A+7w0aUQuYXQ+6EN5stWmeY/AZqtM8xk9k= -github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= -github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/gorilla/handlers v1.5.1 h1:9lRY6j8DEeeBT10CvO9hGW0gmky0BprnvDI5vfhUHH4= -github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv/4g96P1Q= -github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI= -github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= -github.com/gorilla/websocket v1.5.1 h1:gmztn0JnHVt9JZquRuzLw3g4wouNVzKL15iLr/zn/QY= -github.com/gorilla/websocket v1.5.1/go.mod h1:x3kM2JMyaluk02fnUJpQuwD2dCS5NDG2ZHL0uE0tcaY= +github.com/gorilla/handlers v1.5.2 h1:cLTUSsNkgcwhgRqvCNmdbRWG0A3N4F+M2nWKdScwyEE= +github.com/gorilla/handlers v1.5.2/go.mod h1:dX+xVpaxdSw+q0Qek8SSsl3dfMk3jNddUkMzo0GtH0w= +github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= +github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= +github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 h1:JeSE6pjso5THxAzdVpqr6/geYxZytqFMBCOtn/ujyeo= +github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674/go.mod h1:r4w70xmWCQKmi1ONH4KIaBptdivuRPyosB9RmPlGEwA= github.com/gosuri/uitable v0.0.4 h1:IG2xLKRvErL3uhY6e1BylFzG+aJiwQviDDTfOKeKTpY= github.com/gosuri/uitable v0.0.4/go.mod h1:tKR86bXuXPZazfOTG1FIzvjIdXzd0mo4Vtn16vt0PJo= -github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 h1:pdN6V1QBWetyv/0+wjACpqVH+eVULgEjkurDLq3goeM= -github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 h1:bkypFPDjIYGfCYD5mRBvpqxfYX1YCS1PXdKYWi8FsN0= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0/go.mod h1:P+Lt/0by1T8bfcF3z737NnSbmxQAppXMRziHUxPOC8k= +github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 h1:+ngKgrYPPJrOjhax5N+uePQ0Fh1Z7PheYoUI/0nzkPA= +github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.24.0 h1:TmHmbvxPmaegwhDubVz0lICL0J5Ka2vwTzhoePEXsGE= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.24.0/go.mod h1:qztMSjm835F2bXf+5HKAPIS5qsmQDqZna/PgVt4rWtI= github.com/gruntwork-io/go-commons v0.8.0 h1:k/yypwrPqSeYHevLlEDmvmgQzcyTwrlZGRaxEM6G0ro= github.com/gruntwork-io/go-commons v0.8.0/go.mod h1:gtp0yTtIBExIZp7vyIV9I0XQkVwiQZze678hvDXof78= -github.com/gruntwork-io/terratest v0.47.0 h1:xIy1pT7NbGVlMLDZEHl3+3iSnvffh8tN2pL6idn448c= -github.com/gruntwork-io/terratest v0.47.0/go.mod h1:oywHw1cFKXSYvKPm27U7quZVzDUlA22H2xUrKCe26xM= +github.com/gruntwork-io/terratest v0.50.0 h1:AbBJ7IRCpLZ9H4HBrjeoWESITv8nLjN6/f1riMNcAsw= +github.com/gruntwork-io/terratest v0.50.0/go.mod h1:see0lbKvAqz6rvzvN2wyfuFQQG4PWcAb2yHulF6B2q4= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= @@ -274,45 +284,47 @@ github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/golang-lru v1.0.2 h1:dV3g9Z/unq5DpblPpw+Oqcv4dU/1omnb4Ok8iPY6p1c= github.com/hashicorp/golang-lru v1.0.2/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= +github.com/hashicorp/golang-lru/arc/v2 v2.0.5 h1:l2zaLDubNhW4XO3LnliVj0GXO3+/CGNJAg1dcN2Fpfw= +github.com/hashicorp/golang-lru/arc/v2 v2.0.5/go.mod h1:ny6zBSQZi2JxIeYcv7kt2sH2PXJtirBN7RDhRpxPkxU= +github.com/hashicorp/golang-lru/v2 v2.0.5 h1:wW7h1TG88eUIJ2i69gaE3uNVtEPIagzhGvHgwfx2Vm4= +github.com/hashicorp/golang-lru/v2 v2.0.5/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyfM2/ZepoAG6RGpeM= github.com/hokaccha/go-prettyjson v0.0.0-20211117102719-0474bc63780f h1:7LYC+Yfkj3CTRcShK0KOL/w6iTiKyqqBA9a41Wnggw8= github.com/hokaccha/go-prettyjson v0.0.0-20211117102719-0474bc63780f/go.mod h1:pFlLw2CfqZiIBOx6BuCeRLCrfxBJipTY0nIOF/VbGcI= github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= -github.com/huandu/xstrings v1.4.0 h1:D17IlohoQq4UcpqD7fDk80P7l+lwAmlFaBHgOipl2FU= -github.com/huandu/xstrings v1.4.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= -github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= -github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= -github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= +github.com/huandu/xstrings v1.5.0 h1:2ag3IFq9ZDANvthTwTiqSSZLjDc+BedvHPAp5tJy2TI= +github.com/huandu/xstrings v1.5.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/imkira/go-interpol v1.1.0 h1:KIiKr0VSG2CUW1hl1jpiyuzuJeKUUpC8iM1AIE7N1Vk= github.com/imkira/go-interpol v1.1.0/go.mod h1:z0h2/2T3XF8kyEPpRgJ3kmNv+C43p+I/CoI+jC3w2iA= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/incubator4/go-resty-expr v0.1.1 h1:9ur1M+p0wDzL1bprdGzHugGkfK0Yd3Ba/ijcgvL+a1k= github.com/incubator4/go-resty-expr v0.1.1/go.mod h1:w9YQkQLUs1cArOb4O7SGJwJL/L8kuAo6y5CVS2o9eag= +github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM= +github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= +github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 h1:iCEnooe7UlwOQYpKFhBabPMi4aNAfoODPEFNiAnClxo= +github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761/go.mod h1:5TJZWKEWniPve33vlWYSoGYefn3gLQRzjfDlhSJ9ZKM= +github.com/jackc/pgx/v5 v5.7.1 h1:x7SYsPBYDkHDksogeSmZZ5xzThcTgRz++I5E+ePFUcs= +github.com/jackc/pgx/v5 v5.7.1/go.mod h1:e7O26IywZZ+naJtWWos6i6fvWK+29etgITqrqHLfoZA= +github.com/jackc/puddle/v2 v2.2.2 h1:PR8nw+E/1w0GLuRFSmiioY6UooMp6KJv0/61nB7icHo= +github.com/jackc/puddle/v2 v2.2.2/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4= github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= -github.com/jmoiron/sqlx v1.3.5 h1:vFFPA71p1o5gAeqtEAwLU4dnX2napprKtHr7PYIcN3g= -github.com/jmoiron/sqlx v1.3.5/go.mod h1:nRVWtLre0KfCLJvgxzCsLVMogSvQ1zNJtpYr2Ccp0mQ= +github.com/jmoiron/sqlx v1.4.0 h1:1PLqN7S1UYp5t4SrVVnt4nUVNemrDAtxlulVe+Qgm3o= +github.com/jmoiron/sqlx v1.4.0/go.mod h1:ZrZ7UsYB/weZdl2Bxg6jCRO9c3YHl8r3ahlKmRT4JLY= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= -github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= -github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= -github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= -github.com/karrick/godirwalk v1.16.1 h1:DynhcF+bztK8gooS0+NDJFrdNZjJ3gzVzC545UNA9iw= -github.com/karrick/godirwalk v1.16.1/go.mod h1:j4mkqPuvaLI8mp1DroR3P6ad7cyYd4c1qeJ3RV7ULlk= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/klauspost/compress v1.15.0/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= -github.com/klauspost/compress v1.17.4 h1:Ej5ixsIri7BrIjBkRZLTo6ghwrEtHFk7ijlczPW4fZ4= -github.com/klauspost/compress v1.17.4/go.mod h1:/dCuZOvVtNoHsyb+cuJD3itjs3NbnF6KH9zAO4BDxPM= +github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo= +github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= -github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= @@ -322,24 +334,19 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= +github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 h1:SOEGU9fKiNWd/HOJuq6+3iTQz8KNCLtVX6idSoTLdUw= github.com/lann/builder v0.0.0-20180802200727-47ae307949d0/go.mod h1:dXGbAdH5GtBTC4WfIxhKZfyBF/HBFgRZSWwZ9g/He9o= github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 h1:P6pPBnrTSX3DEVR4fDembhRWSsG5rVo6hYhAB/ADZrk= github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0/go.mod h1:vmVJ0l/dxyfGW6FmdpVm2joNMFikkuWg0EoCKLGUMNw= github.com/leodido/go-urn v1.2.1/go.mod h1:zt4jvISO2HfUBqxjfIshjdMTYS56ZS/qv49ictyFfxY= -github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de h1:9TO3cAIGXtEhnIaL+V+BEER86oLrvS+kWobKpbJuye0= github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de/go.mod h1:zAbeS9B/r2mtpb6U+EI2rYA5OAXxsYw6wTamcNW+zcE= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= -github.com/markbates/errx v1.1.0 h1:QDFeR+UP95dO12JgW+tgi2UVfo0V8YBHiUIOaeBPiEI= -github.com/markbates/errx v1.1.0/go.mod h1:PLa46Oex9KNbVDZhKel8v1OT7hD5JZ2eI7AHhA0wswc= -github.com/markbates/oncer v1.0.0 h1:E83IaVAHygyndzPimgUYJjbshhDTALZyXxvk9FOlQRY= -github.com/markbates/oncer v1.0.0/go.mod h1:Z59JA581E9GP6w96jai+TGqafHPW+cPfRxz2aSZ0mcI= -github.com/markbates/safe v1.0.1 h1:yjZkbvRM6IzKj9tlu/zMJLS0n/V351OZWRnF3QfaUxI= -github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= @@ -349,59 +356,48 @@ github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27k github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= -github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= -github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= -github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= -github.com/mattn/go-sqlite3 v1.14.19 h1:fhGleo2h1p8tVChob4I9HpmVFIAkKGpiukdrgQbWfGI= -github.com/mattn/go-sqlite3 v1.14.19/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= +github.com/mattn/go-runewidth v0.0.9 h1:Lm995f3rfxdpd6TSmuVCHVb/QhupuXlYr8sCI/QdE+0= +github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= +github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU= +github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= github.com/mattn/go-zglob v0.0.1/go.mod h1:9fxibJccNxU2cnpIKLRRFA7zX7qhkJIQWBb449FYHOo= github.com/mattn/go-zglob v0.0.2-0.20190814121620-e3c945676326 h1:ofNAzWCcyTALn2Zv40+8XitdzCgXY6e9qvXwN9W0YXg= github.com/mattn/go-zglob v0.0.2-0.20190814121620-e3c945676326/go.mod h1:9fxibJccNxU2cnpIKLRRFA7zX7qhkJIQWBb449FYHOo= -github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= github.com/miekg/dns v1.1.62 h1:cN8OuEF1/x5Rq6Np+h1epln8OiyPWV+lROx9LxcGgIQ= github.com/miekg/dns v1.1.62/go.mod h1:mvDlcItzm+br7MToIKqkglaGhlFMHJ9DTNNWONWXbNQ= -github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw= github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s= github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0= -github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ= github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= -github.com/moby/locker v1.0.1 h1:fOXqR41zeveg4fFODix+1Ch4mj/gT0NE1XJbp/epuBg= -github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= -github.com/moby/spdystream v0.4.0 h1:Vy79D6mHeJJjiPdFEL2yku1kl0chZpJfZcPpb16BRl8= -github.com/moby/spdystream v0.4.0/go.mod h1:xBAYlnt/ay+11ShkdFKNAG7LsyK/tmNBVvVOwrfMgdI= -github.com/moby/sys/mountinfo v0.6.2 h1:BzJjoreD5BMFNmD9Rus6gdd1pLuecOFPt8wC+Vygl78= -github.com/moby/sys/mountinfo v0.6.2/go.mod h1:IJb6JQeOklcdMU9F5xQ8ZALD+CUr5VlGpwtX+VE0rpI= -github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= -github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= +github.com/moby/spdystream v0.5.0 h1:7r0J1Si3QO/kjRitvSLVVFUjxMEb/YLj6S9FF62JBCU= +github.com/moby/spdystream v0.5.0/go.mod h1:xBAYlnt/ay+11ShkdFKNAG7LsyK/tmNBVvVOwrfMgdI= +github.com/moby/term v0.5.2 h1:6qk3FJAFDs6i/q3W/pQ97SX192qKfZgGjCQqfCJkgzQ= +github.com/moby/term v0.5.2/go.mod h1:d3djjFCrjnB+fl8NJux+EJzu0msscUP+f8it8hPkFLc= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 h1:n6/2gBQ3RWajuToeY6ZtZTIKv2v7ThUy5KKusIT0yc0= github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00/go.mod h1:Pm3mSP3c5uWn86xMLZ5Sa7JB9GsEZySvHYXCTK4E9q4= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= -github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f h1:y5//uYreIhSUg3J1GEMiLbxo1LJaP8RfCpH6pymGZus= github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/onsi/ginkgo v1.10.1 h1:q/mM8GF/n0shIN8SaAZ0V+jnLPzen6WIVZdiwrRlMlo= github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo/v2 v2.20.0 h1:PE84V2mHqoT1sglvHc8ZdQtPcwmvvt29WLEEO3xmdZw= -github.com/onsi/ginkgo/v2 v2.20.0/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI= -github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k= -github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY= +github.com/onsi/ginkgo/v2 v2.21.0 h1:7rg/4f3rB88pb5obDgNZrNHrQ4e6WpjonchcpuBRnZM= +github.com/onsi/ginkgo/v2 v2.21.0/go.mod h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo= +github.com/onsi/gomega v1.35.1 h1:Cwbd75ZBPxFSuZ6T+rN/WCb/gOc6YgFBXLlZLhC7Ds4= +github.com/onsi/gomega v1.35.1/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= -github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= -github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= +github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJwooC2xJA040= +github.com/opencontainers/image-spec v1.1.1/go.mod h1:qpqAh3Dmcf36wStyyWU+kCeDgrGnAve2nCC8+7h8Q0M= github.com/pelletier/go-toml/v2 v2.0.1/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= github.com/peterbourgon/diskv v2.0.1+incompatible h1:UBdAOUP5p4RWqPBg048CAvpKN+vxiaj6gdUUzhl4XmI= github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= @@ -409,7 +405,6 @@ github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5 h1:Ii+DKncOVM8Cu1H github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5/go.mod h1:iIss55rKnNBTvrwdmkUpLnDpZoAHvWaiq5+iMmen4AE= github.com/pkg/diff v0.0.0-20200914180035-5b29258ca4f7/go.mod h1:zO8QMzTeZd5cpnIkz/Gn6iK0jDfGicM1nynOkkPIl28= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= -github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -419,36 +414,28 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRI github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/poy/onpar v1.1.2 h1:QaNrNiZx0+Nar5dLgTVp5mXkyoVFIbepjyEoGSnhbAY= github.com/poy/onpar v1.1.2/go.mod h1:6X8FLNoxyr9kkmnlqpK6LSoiOtrO6MICtWwEuWkLjzg= -github.com/pquerna/otp v1.2.0 h1:/A3+Jn+cagqayeR3iHs/L62m5ue7710D35zl1zJ1kok= -github.com/pquerna/otp v1.2.0/go.mod h1:dkJfzwRKNiegxyNb54X/3fLwhCynbMspSyWKnvi1AEg= -github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= -github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= -github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g= -github.com/prometheus/client_golang v1.19.1 h1:wZWJDwK+NameRJuPGDhlnFgx8e8HN3XHQeLaYJFJBOE= -github.com/prometheus/client_golang v1.19.1/go.mod h1:mP78NwGzrVks5S2H6ab8+ZZGJLZUq1hoULYBAYBw1Ho= -github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= -github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= -github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/pquerna/otp v1.4.0 h1:wZvl1TIVxKRThZIBiwOOHOGP/1+nZyWBil9Y2XNEDzg= +github.com/pquerna/otp v1.4.0/go.mod h1:dkJfzwRKNiegxyNb54X/3fLwhCynbMspSyWKnvi1AEg= +github.com/prometheus/client_golang v1.22.0 h1:rb93p9lokFEsctTys46VnV1kLCDpVZ0a/Y92Vm0Zc6Q= +github.com/prometheus/client_golang v1.22.0/go.mod h1:R7ljNsLXhuQXYZYtw6GAE9AZg8Y7vEW5scdCXrWRXC0= github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E= github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= -github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= -github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= -github.com/prometheus/common v0.55.0 h1:KEi6DK7lXW/m7Ig5i47x0vRzuBsHuvJdi5ee6Y3G1dc= -github.com/prometheus/common v0.55.0/go.mod h1:2SECS4xJG1kd8XF9IcM1gMX6510RAEL65zxzNImwdc8= -github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= -github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= +github.com/prometheus/common v0.62.0 h1:xasJaQlnWAeyHdUBeGjXmutelfJHWMRr+Fg4QszZ2Io= +github.com/prometheus/common v0.62.0/go.mod h1:vyBcEuLSvWos9B1+CyL7JZ2up+uFzXhkqml0W5zIY1I= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= -github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= -github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= +github.com/redis/go-redis/extra/rediscmd/v9 v9.0.5 h1:EaDatTxkdHG+U3Bk4EUr+DZ7fOGwTfezUiUJMaIcaho= +github.com/redis/go-redis/extra/rediscmd/v9 v9.0.5/go.mod h1:fyalQWdtzDBECAQFBJuQe5bzQ02jGd5Qcbgb97Flm7U= +github.com/redis/go-redis/extra/redisotel/v9 v9.0.5 h1:EfpWLLCyXw8PSM2/XNJLjI3Pb27yVE+gIAfeqp8LUCc= +github.com/redis/go-redis/extra/redisotel/v9 v9.0.5/go.mod h1:WZjPDy7VNzn77AAfnAfVjZNvfJTYfPetfZk5yoSTLaQ= +github.com/redis/go-redis/v9 v9.7.3 h1:YpPyAayJV+XErNsatSElgRZZVCwXX9QzkKYNvO7x0wM= +github.com/redis/go-redis/v9 v9.7.3/go.mod h1:bGUrSggJ9X9GUmZpZNEOQKaANxSGgOEBRltRTZHSvrA= github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.8.0/go.mod h1:WmiCO8CzOY8rg0OYDC4/i/2WRWAB6poM+XZ2dLUbcbE= -github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= -github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= -github.com/rubenv/sql-migrate v1.5.2 h1:bMDqOnrJVV/6JQgQ/MxOpU+AdO8uzYYA/TxFUBzFtS0= -github.com/rubenv/sql-migrate v1.5.2/go.mod h1:H38GW8Vqf8F0Su5XignRyaRcbXbJunSWxs+kmzlg0Is= +github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= +github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= +github.com/rubenv/sql-migrate v1.8.0 h1:dXnYiJk9k3wetp7GfQbKJcPHjVJL6YK19tKj8t2Ns0o= +github.com/rubenv/sql-migrate v1.8.0/go.mod h1:F2bGFBwCU+pnmbtNYDeKvSuvL6lBVtXDXUUv5t+u1qw= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= @@ -459,26 +446,23 @@ github.com/sanity-io/litter v1.5.5/go.mod h1:9gzJgR2i4ZpjZHsKvUXIRQVk7P+yM3e+jAF github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= -github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= -github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= -github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= +github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k= +github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME= github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= -github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/sony/sonyflake v1.1.0/go.mod h1:LORtCywH/cq10ZbyfhKrHYgAUGH7mOBa76enV9txy/Y= -github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= -github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= -github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= -github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= -github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= -github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= -github.com/stoewer/go-strcase v1.2.0 h1:Z2iHWqGXH00XYgqDmNgQbIBxf3wrNq0F3feEy0ainaU= -github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= +github.com/spf13/cast v1.7.0 h1:ntdiHjuueXFgm5nzDRdOS4yfT43P5Fnud6DH50rz/7w= +github.com/spf13/cast v1.7.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= +github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo= +github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0= +github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o= +github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/stoewer/go-strcase v1.3.0 h1:g0eASXYtp+yvN9fK8sH94oCIk0fau9uV1/ZdJ0AVEzs= +github.com/stoewer/go-strcase v1.3.0/go.mod h1:fAH5hQ5pehh+j3nZfvwdk2RgEgQjAoM8wodgtPmh1xo= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= @@ -489,20 +473,21 @@ github.com/stretchr/testify v0.0.0-20161117074351-18a02ba4a312/go.mod h1:a8OnRci github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= -github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/tailscale/depaware v0.0.0-20210622194025-720c4b409502/go.mod h1:p9lPsd+cx33L3H9nNoecRRxPssFKUwwI50I3pZ0yT+8= github.com/ugorji/go v1.2.7/go.mod h1:nF9osbDWLy6bDVv/Rtoh6QgnvNDpmCalQV5urGCCS6M= github.com/ugorji/go/codec v1.2.7/go.mod h1:WGN1fab3R1fzQlVQTkfxVtIBhWDRqOviHU95kRgeqEY= github.com/urfave/cli v1.22.2/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= -github.com/urfave/cli v1.22.14 h1:ebbhrRiGK2i4naQJr+1Xj92HXZCrK7MsyTS/ob3HnAk= -github.com/urfave/cli v1.22.14/go.mod h1:X0eDS6pD6Exaclxm99NJ3FiCDRED7vIHpx2mDOHLvkA= +github.com/urfave/cli v1.22.16 h1:MH0k6uJxdwdeWQTwhSO42Pwr4YLrNLwBtg1MRgTqPdQ= +github.com/urfave/cli v1.22.16/go.mod h1:EeJR6BKodywf4zciqrdw6hpCPk68JO9z5LazXZMn5Po= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= github.com/valyala/fasthttp v1.34.0 h1:d3AAQJ2DRcxJYHm7OXNXtXt2as1vMDfxeIcFvhmGGm4= @@ -529,39 +514,58 @@ github.com/yudai/pp v2.0.1+incompatible h1:Q4//iY4pNF6yPLZIigmvcl7k/bPgrcTPIFIcm github.com/yudai/pp v2.0.1+incompatible/go.mod h1:PuxR/8QJ7cyCkFp/aUDS+JY727OFEZkTdatxwunjIkc= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= -github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43 h1:+lm10QQTNSBd8DVTNGHx7o/IKu9HYDvLMffDhbyLccI= -github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs= -github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50 h1:hlE8//ciYMztlGpl/VA+Zm1AcTPHYkHJPbHqE6WJUXE= -github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA= -github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f h1:ERexzlUfuTvpE74urLSbIQW0Z/6hF9t8U4NsJLaioAY= -github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= -go.etcd.io/etcd/api/v3 v3.5.15 h1:3KpLJir1ZEBrYuV2v+Twaa/e2MdDCEZ/70H+lzEiwsk= -go.etcd.io/etcd/api/v3 v3.5.15/go.mod h1:N9EhGzXq58WuMllgH9ZvnEr7SI9pS0k0+DHZezGp7jM= -go.etcd.io/etcd/client/pkg/v3 v3.5.15 h1:fo0HpWz/KlHGMCC+YejpiCmyWDEuIpnTDzpJLB5fWlA= -go.etcd.io/etcd/client/pkg/v3 v3.5.15/go.mod h1:mXDI4NAOwEiszrHCb0aqfAYNCrZP4e9hRca3d1YK8EU= -go.etcd.io/etcd/client/v3 v3.5.15 h1:23M0eY4Fd/inNv1ZfU3AxrbbOdW79r9V9Rl62Nm6ip4= -go.etcd.io/etcd/client/v3 v3.5.15/go.mod h1:CLSJxrYjvLtHsrPKsy7LmZEE+DK2ktfd2bN4RhBMwlU= -go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= -go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 h1:4K4tsIXefpVJtvA/8srF4V4y0akAoPHkIslgAkjixJA= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0/go.mod h1:jjdQuTGVsXV4vSs+CJ2qYDeDPf9yIJV23qlIzBm73Vg= -go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= -go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0 h1:3Q/xZUyC1BBkualc9ROb4G8qkH90LXEIICcs5zv1OYY= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0/go.mod h1:s75jGIWA9OfCMzF0xr+ZgfrB5FEbbV7UuYo32ahUiFI= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0 h1:qFffATk0X+HD+f1Z8lswGiOQYKHRlzfmdJm0wEaVrFA= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0/go.mod h1:MOiCmryaYtc+V0Ei+Tx9o5S1ZjA7kzLucuVuyzBZloQ= -go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= -go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= -go.opentelemetry.io/otel/sdk v1.28.0 h1:b9d7hIry8yZsgtbmM0DKyPWMMUMlK9NEKuIG4aBqWyE= -go.opentelemetry.io/otel/sdk v1.28.0/go.mod h1:oYj7ClPUA7Iw3m+r7GeEjz0qckQRJK2B8zjcZEfu7Pg= -go.opentelemetry.io/otel/trace v1.28.0 h1:GhQ9cUuQGmNDd5BTCP2dAvv75RdMxEfTmYejp+lkx9g= -go.opentelemetry.io/otel/trace v1.28.0/go.mod h1:jPyXzNPg6da9+38HEwElrQiHlVMTnVfM3/yv2OlIHaI= -go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= -go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= -go.starlark.net v0.0.0-20230525235612-a134d8f9ddca h1:VdD38733bfYv5tUZwEIskMM93VanwNIi5bIKnDrJdEY= -go.starlark.net v0.0.0-20230525235612-a134d8f9ddca/go.mod h1:jxU+3+j+71eXOW14274+SmmuW82qJzl6iZSeqEtTGds= +go.etcd.io/etcd/api/v3 v3.5.21 h1:A6O2/JDb3tvHhiIz3xf9nJ7REHvtEFJJ3veW3FbCnS8= +go.etcd.io/etcd/api/v3 v3.5.21/go.mod h1:c3aH5wcvXv/9dqIw2Y810LDXJfhSYdHQ0vxmP3CCHVY= +go.etcd.io/etcd/client/pkg/v3 v3.5.21 h1:lPBu71Y7osQmzlflM9OfeIV2JlmpBjqBNlLtcoBqUTc= +go.etcd.io/etcd/client/pkg/v3 v3.5.21/go.mod h1:BgqT/IXPjK9NkeSDjbzwsHySX3yIle2+ndz28nVsjUs= +go.etcd.io/etcd/client/v3 v3.5.21 h1:T6b1Ow6fNjOLOtM0xSoKNQt1ASPCLWrF9XMHcH9pEyY= +go.etcd.io/etcd/client/v3 v3.5.21/go.mod h1:mFYy67IOqmbRf/kRUvsHixzo3iG+1OF2W2+jVIQRAnU= +go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= +go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= +go.opentelemetry.io/contrib/bridges/prometheus v0.57.0 h1:UW0+QyeyBVhn+COBec3nGhfnFe5lwB0ic1JBVjzhk0w= +go.opentelemetry.io/contrib/bridges/prometheus v0.57.0/go.mod h1:ppciCHRLsyCio54qbzQv0E4Jyth/fLWDTJYfvWpcSVk= +go.opentelemetry.io/contrib/exporters/autoexport v0.57.0 h1:jmTVJ86dP60C01K3slFQa2NQ/Aoi7zA+wy7vMOKD9H4= +go.opentelemetry.io/contrib/exporters/autoexport v0.57.0/go.mod h1:EJBheUMttD/lABFyLXhce47Wr6DPWYReCzaZiXadH7g= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.58.0 h1:yd02MEjBdJkG3uabWP9apV+OuWRIXGDuJEUJbOHmCFU= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.58.0/go.mod h1:umTcuxiv1n/s/S6/c2AT/g2CQ7u5C59sHDNmfSwgz7Q= +go.opentelemetry.io/otel v1.33.0 h1:/FerN9bax5LoK51X/sI0SVYrjSE0/yUL7DpxW4K3FWw= +go.opentelemetry.io/otel v1.33.0/go.mod h1:SUUkR6csvUQl+yjReHu5uM3EtVV7MBm5FHKRlNx4I8I= +go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.8.0 h1:WzNab7hOOLzdDF/EoWCt4glhrbMPVMOO5JYTmpz36Ls= +go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.8.0/go.mod h1:hKvJwTzJdp90Vh7p6q/9PAOd55dI6WA6sWj62a/JvSs= +go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.8.0 h1:S+LdBGiQXtJdowoJoQPEtI52syEP/JYBUpjO49EQhV8= +go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.8.0/go.mod h1:5KXybFvPGds3QinJWQT7pmXf+TN5YIa7CNYObWRkj50= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 h1:j7ZSD+5yn+lo3sGV69nW04rRR0jhYnBwjuX3r0HvnK0= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0/go.mod h1:WXbYJTUaZXAbYd8lbgGuvih0yuCfOFC5RJoYnoLcGz8= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.32.0 h1:t/Qur3vKSkUCcDVaSumWF2PKHt85pc7fRvFuoVT8qFU= +go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.32.0/go.mod h1:Rl61tySSdcOJWoEgYZVtmnKdA0GeKrSqkHC1t+91CH8= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.33.0 h1:Vh5HayB/0HHfOQA7Ctx69E/Y/DcQSMPpKANYVMQ7fBA= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.33.0/go.mod h1:cpgtDBaqD/6ok/UG0jT15/uKjAY8mRA53diogHBg3UI= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.33.0 h1:5pojmb1U1AogINhN3SurB+zm/nIcusopeBNp42f45QM= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.33.0/go.mod h1:57gTHJSE5S1tqg+EKsLPlTWhpHMsWlVmer+LA926XiA= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.32.0 h1:cMyu9O88joYEaI47CnQkxO1XZdpoTF9fEnW2duIddhw= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.32.0/go.mod h1:6Am3rn7P9TVVeXYG+wtcGE7IE1tsQ+bP3AuWcKt/gOI= +go.opentelemetry.io/otel/exporters/prometheus v0.54.0 h1:rFwzp68QMgtzu9PgP3jm9XaMICI6TsofWWPcBDKwlsU= +go.opentelemetry.io/otel/exporters/prometheus v0.54.0/go.mod h1:QyjcV9qDP6VeK5qPyKETvNjmaaEc7+gqjh4SS0ZYzDU= +go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.8.0 h1:CHXNXwfKWfzS65yrlB2PVds1IBZcdsX8Vepy9of0iRU= +go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.8.0/go.mod h1:zKU4zUgKiaRxrdovSS2amdM5gOc59slmo/zJwGX+YBg= +go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.32.0 h1:SZmDnHcgp3zwlPBS2JX2urGYe/jBKEIT6ZedHRUyCz8= +go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.32.0/go.mod h1:fdWW0HtZJ7+jNpTKUR0GpMEDP69nR8YBJQxNiVCE3jk= +go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.32.0 h1:cC2yDI3IQd0Udsux7Qmq8ToKAx1XCilTQECZ0KDZyTw= +go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.32.0/go.mod h1:2PD5Ex6z8CFzDbTdOlwyNIUywRr1DN0ospafJM1wJ+s= +go.opentelemetry.io/otel/log v0.8.0 h1:egZ8vV5atrUWUbnSsHn6vB8R21G2wrKqNiDt3iWertk= +go.opentelemetry.io/otel/log v0.8.0/go.mod h1:M9qvDdUTRCopJcGRKg57+JSQ9LgLBrwwfC32epk5NX8= +go.opentelemetry.io/otel/metric v1.33.0 h1:r+JOocAyeRVXD8lZpjdQjzMadVZp2M4WmQ+5WtEnklQ= +go.opentelemetry.io/otel/metric v1.33.0/go.mod h1:L9+Fyctbp6HFTddIxClbQkjtubW6O9QS3Ann/M82u6M= +go.opentelemetry.io/otel/sdk v1.33.0 h1:iax7M131HuAm9QkZotNHEfstof92xM+N8sr3uHXc2IM= +go.opentelemetry.io/otel/sdk v1.33.0/go.mod h1:A1Q5oi7/9XaMlIWzPSxLRWOI8nG3FnzHJNbiENQuihM= +go.opentelemetry.io/otel/sdk/log v0.8.0 h1:zg7GUYXqxk1jnGF/dTdLPrK06xJdrXgqgFLnI4Crxvs= +go.opentelemetry.io/otel/sdk/log v0.8.0/go.mod h1:50iXr0UVwQrYS45KbruFrEt4LvAdCaWWgIrsN3ZQggo= +go.opentelemetry.io/otel/sdk/metric v1.32.0 h1:rZvFnvmvawYb0alrYkjraqJq0Z4ZUJAiyYCU9snn1CU= +go.opentelemetry.io/otel/sdk/metric v1.32.0/go.mod h1:PWeZlq0zt9YkYAp3gjKZ0eicRYvOh1Gd+X99x6GHpCQ= +go.opentelemetry.io/otel/trace v1.33.0 h1:cCJuF7LRjUFso9LPnEAHJDB2pqzp+hbO8eu1qqW2d/s= +go.opentelemetry.io/otel/trace v1.33.0/go.mod h1:uIcdVUZMpTAmz0tI1z04GoVSezK37CbGV4fr1f2nBck= +go.opentelemetry.io/proto/otlp v1.4.0 h1:TA9WRvW6zMwP+Ssb6fLoUIuirti1gGbP28GcKG1jgeg= +go.opentelemetry.io/proto/otlp v1.4.0/go.mod h1:PPBWZIP98o2ElSqI35IHfu7hIhSwvc5N38Jw8pXuGFY= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= @@ -574,66 +578,41 @@ go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= golang.org/x/arch v0.0.0-20200826200359-b19915210f00/go.mod h1:flIaEI6LNU6xOCD5PaJvn9wGP0agmIOqjrtsKGRguv4= golang.org/x/arch v0.6.0 h1:S0JTfE48HbRj80+4tbvZDYsJ3tGv6BUU3XxyZ7CirAc= golang.org/x/arch v0.6.0/go.mod h1:FEVrYAQjsQXMVJ1nsMoVVXPZg6p2JE2mx8psSWTDQys= -golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= -golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= -golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= -golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/crypto v0.39.0 h1:SHs+kF4LP+f+p14esP5jAoDpHU8Gu/v9lFRK6IT5imM= +golang.org/x/crypto v0.39.0/go.mod h1:L+Xg3Wf6HoL4Bn4238Z6ft6KfEpN0tJGo53AAPC632U= golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8= golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY= -golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= -golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= -golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= -golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/mod v0.25.0 h1:n7a+ZbQKQA/Ysbyb0/6IbB1H/X41mKgbhfv7AfG/44w= +golang.org/x/mod v0.25.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= -golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= -golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= -golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= -golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= -golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= -golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY= +golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds= +golang.org/x/oauth2 v0.28.0 h1:CrgCKl8PPAVtLnU3c+EDw6x11699EWlsDeWNWKdIOkc= +golang.org/x/oauth2 v0.28.0/go.mod h1:onh5ek6nERTohokkhCD/y2cV4Do3fxFHFuAejCkRWT8= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= -golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sync v0.15.0 h1:KWH3jNZsfyT6xfAfKiz6MRNmd46ByHDYaZ7KSkCtdW8= +golang.org/x/sync v0.15.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -644,77 +623,47 @@ golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg= -golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw= +golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.0.0-20220526004731-065cf7ba2467/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= -golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU= -golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk= +golang.org/x/term v0.32.0 h1:DR4lr0TjUs3epypdhTOkMmuF5CDFJ/8pOnbzMZPQ7bg= +golang.org/x/term v0.32.0/go.mod h1:uZG1FhGx848Sqfsq4/DlJr3xGGsYMu/L5GW4abiaEPQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= -golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= -golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= -golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= +golang.org/x/text v0.26.0 h1:P42AVeLghgTYr4+xUnTRKDMqpar+PtX7KWuNQL21L8M= +golang.org/x/text v0.26.0/go.mod h1:QK15LZJUUQVJxhz7wXgxSy/CJaTFjd0G+YLonydOVQA= +golang.org/x/time v0.9.0 h1:EsRrnYcQiGH+5FfbgvV4AP7qEZstoyrHB0DzarOQ4ZY= +golang.org/x/time v0.9.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= -golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20201211185031-d93e913c1a58/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= -golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= +golang.org/x/tools v0.33.0 h1:4qz2S3zmRxbGIhDIAgjxvFutSvH5EfnsYrRBj0UI0bc= +golang.org/x/tools v0.33.0/go.mod h1:CIJMaWEY88juyUfo7UbgPqbC8rU2OqfAV1h2Qp0oMYI= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw= gomodules.xyz/jsonpatch/v2 v2.4.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY= -google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= -google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= -google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= -google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= -google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 h1:+rdxYoE3E5htTEWIe15GlN6IfvbURM//Jt0mmkmm6ZU= -google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117/go.mod h1:OimBR/bc1wPO9iV4NC2bpyjy3VnAwZh5EBPQdtaE5oo= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 h1:BwIjyKYGsK9dMCBOorzRri8MQwmi7mT9rGHsCEinZkA= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= -google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= -google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= -google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= -google.golang.org/grpc v1.66.2 h1:3QdXkuq3Bkh7w+ywLdLvM56cmGvQHUMZpiCzt6Rqaoo= -google.golang.org/grpc v1.66.2/go.mod h1:s3/l6xSSCURdVfAnL+TqCNMyTDAGN6+lZeVxnZR128Y= -google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= -google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= -google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= -google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= -google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= -google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= -google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= -google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= +google.golang.org/genproto/googleapis/api v0.0.0-20241209162323-e6fa225c2576 h1:CkkIfIt50+lT6NHAVoRYEyAvQGFM7xEwXUUywFvEb3Q= +google.golang.org/genproto/googleapis/api v0.0.0-20241209162323-e6fa225c2576/go.mod h1:1R3kvZ1dtP3+4p4d3G8uJ8rFk/fWlScl38vanWACI08= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241209162323-e6fa225c2576 h1:8ZmaLZE4XWrtU3MyClkYqqtl6Oegr3235h7jxsDyqCY= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241209162323-e6fa225c2576/go.mod h1:5uTbfoYQed2U9p3KIj2/Zzm02PYhndfdmML0qC3q3FU= +google.golang.org/grpc v1.68.1 h1:oI5oTa11+ng8r8XMMN7jAOmWfPZWbYpCFaMUTACxkM0= +google.golang.org/grpc v1.68.1/go.mod h1:+q1XYFJjShcqn0QZHvCyeR4CXPA+llXIeUIfIe00waw= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= -google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= -gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= +google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM= +google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -729,62 +678,59 @@ gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= -gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gotest.tools/v3 v3.4.0 h1:ZazjZUfuVeZGLAmlKKuyv3IKP5orXcwtOwDQH6YVr6o= -gotest.tools/v3 v3.4.0/go.mod h1:CtbdzLSsqVhDgMtKsx03ird5YTGB3ar27v0u/yKBW5g= -helm.sh/helm/v3 v3.15.4 h1:UFHd6oZ1IN3FsUZ7XNhOQDyQ2QYknBNWRHH57e9cbHY= -helm.sh/helm/v3 v3.15.4/go.mod h1:phOwlxqGSgppCY/ysWBNRhG3MtnpsttOzxaTK+Mt40E= -honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -k8s.io/api v0.31.1 h1:Xe1hX/fPW3PXYYv8BlozYqw63ytA92snr96zMW9gWTU= -k8s.io/api v0.31.1/go.mod h1:sbN1g6eY6XVLeqNsZGLnI5FwVseTrZX7Fv3O26rhAaI= -k8s.io/apiextensions-apiserver v0.31.1 h1:L+hwULvXx+nvTYX/MKM3kKMZyei+UiSXQWciX/N6E40= -k8s.io/apiextensions-apiserver v0.31.1/go.mod h1:tWMPR3sgW+jsl2xm9v7lAyRF1rYEK71i9G5dRtkknoQ= -k8s.io/apimachinery v0.31.1 h1:mhcUBbj7KUjaVhyXILglcVjuS4nYXiwC+KKFBgIVy7U= -k8s.io/apimachinery v0.31.1/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo= -k8s.io/apiserver v0.31.1 h1:Sars5ejQDCRBY5f7R3QFHdqN3s61nhkpaX8/k1iEw1c= -k8s.io/apiserver v0.31.1/go.mod h1:lzDhpeToamVZJmmFlaLwdYZwd7zB+WYRYIboqA1kGxM= -k8s.io/cli-runtime v0.30.3 h1:aG69oRzJuP2Q4o8dm+f5WJIX4ZBEwrvdID0+MXyUY6k= -k8s.io/cli-runtime v0.30.3/go.mod h1:hwrrRdd9P84CXSKzhHxrOivAR9BRnkMt0OeP5mj7X30= -k8s.io/client-go v0.31.1 h1:f0ugtWSbWpxHR7sjVpQwuvw9a3ZKLXX0u0itkFXufb0= -k8s.io/client-go v0.31.1/go.mod h1:sKI8871MJN2OyeqRlmA4W4KM9KBdBUpDLu/43eGemCg= -k8s.io/component-base v0.31.1 h1:UpOepcrX3rQ3ab5NB6g5iP0tvsgJWzxTyAo20sgYSy8= -k8s.io/component-base v0.31.1/go.mod h1:WGeaw7t/kTsqpVTaCoVEtillbqAhF2/JgvO0LDOMa0w= +helm.sh/helm/v3 v3.18.4 h1:pNhnHM3nAmDrxz6/UC+hfjDY4yeDATQCka2/87hkZXQ= +helm.sh/helm/v3 v3.18.4/go.mod h1:WVnwKARAw01iEdjpEkP7Ii1tT1pTPYfM1HsakFKM3LI= +k8s.io/api v0.33.2 h1:YgwIS5jKfA+BZg//OQhkJNIfie/kmRsO0BmNaVSimvY= +k8s.io/api v0.33.2/go.mod h1:fhrbphQJSM2cXzCWgqU29xLDuks4mu7ti9vveEnpSXs= +k8s.io/apiextensions-apiserver v0.33.2 h1:6gnkIbngnaUflR3XwE1mCefN3YS8yTD631JXQhsU6M8= +k8s.io/apiextensions-apiserver v0.33.2/go.mod h1:IvVanieYsEHJImTKXGP6XCOjTwv2LUMos0YWc9O+QP8= +k8s.io/apimachinery v0.33.2 h1:IHFVhqg59mb8PJWTLi8m1mAoepkUNYmptHsV+Z1m5jY= +k8s.io/apimachinery v0.33.2/go.mod h1:BHW0YOu7n22fFv/JkYOEfkUYNRN0fj0BlvMFWA7b+SM= +k8s.io/apiserver v0.33.2 h1:KGTRbxn2wJagJowo29kKBp4TchpO1DRO3g+dB/KOJN4= +k8s.io/apiserver v0.33.2/go.mod h1:9qday04wEAMLPWWo9AwqCZSiIn3OYSZacDyu/AcoM/M= +k8s.io/cli-runtime v0.33.2 h1:koNYQKSDdq5AExa/RDudXMhhtFasEg48KLS2KSAU74Y= +k8s.io/cli-runtime v0.33.2/go.mod h1:gnhsAWpovqf1Zj5YRRBBU7PFsRc6NkEkwYNQE+mXL88= +k8s.io/client-go v0.33.2 h1:z8CIcc0P581x/J1ZYf4CNzRKxRvQAwoAolYPbtQes+E= +k8s.io/client-go v0.33.2/go.mod h1:9mCgT4wROvL948w6f6ArJNb7yQd7QsvqavDeZHvNmHo= +k8s.io/component-base v0.33.2 h1:sCCsn9s/dG3ZrQTX/Us0/Sx2R0G5kwa0wbZFYoVp/+0= +k8s.io/component-base v0.33.2/go.mod h1:/41uw9wKzuelhN+u+/C59ixxf4tYQKW7p32ddkYNe2k= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f h1:0LQagt0gDpKqvIkAMPaRGcXawNMouPECM1+F9BVxEaM= -k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f/go.mod h1:S9tOR0FxgyusSNR+MboCuiDpVWkAifZvaYI1Q2ubgro= -k8s.io/kubectl v0.30.3 h1:YIBBvMdTW0xcDpmrOBzcpUVsn+zOgjMYIu7kAq+yqiI= -k8s.io/kubectl v0.30.3/go.mod h1:IcR0I9RN2+zzTRUa1BzZCm4oM0NLOawE6RzlDvd1Fpo= -k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A= -k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff h1:/usPimJzUKKu+m+TE36gUyGcf03XZEP0ZIKgKj35LS4= +k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff/go.mod h1:5jIi+8yX4RIb8wk3XwBo5Pq2ccx4FP10ohkbSKCZoK8= +k8s.io/kubectl v0.33.2 h1:7XKZ6DYCklu5MZQzJe+CkCjoGZwD1wWl7t/FxzhMz7Y= +k8s.io/kubectl v0.33.2/go.mod h1:8rC67FB8tVTYraovAGNi/idWIK90z2CHFNMmGJZJ3KI= +k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 h1:M3sRQVHv7vB20Xc2ybTt7ODCeFj6JSWYFzOFnYeS6Ro= +k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= moul.io/http2curl/v2 v2.3.0 h1:9r3JfDzWPcbIklMOs2TnIFzDYvfAZvjeavG6EzP7jYs= moul.io/http2curl/v2 v2.3.0/go.mod h1:RW4hyBjTWSYDOxapodpNEtX0g5Eb16sxklBqmd2RHcE= -oras.land/oras-go v1.2.5 h1:XpYuAwAb0DfQsunIyMfeET92emK8km3W4yEzZvUbsTo= -oras.land/oras-go v1.2.5/go.mod h1:PuAwRShRZCsZb7g8Ar3jKKQR/2A/qN+pkYxIOd/FAoo= +oras.land/oras-go/v2 v2.6.0 h1:X4ELRsiGkrbeox69+9tzTu492FMUu7zJQW6eJU+I2oc= +oras.land/oras-go/v2 v2.6.0/go.mod h1:magiQDfG6H1O9APp+rOsvCPcW1GD2MM7vgnKY0Y+u1o= rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= -sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 h1:2770sDpzrjjsAtVhSeUFseziht227YAWYHLGNM8QPwY= -sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3/go.mod h1:Ve9uj1L+deCXFrPOk1LpFXqTg7LCFzFso6PA48q/XZw= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2 h1:jpcvIRr3GLoUoEKRkHKSmGjxb6lWwrBlJsXc+eUYQHM= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2/go.mod h1:Ve9uj1L+deCXFrPOk1LpFXqTg7LCFzFso6PA48q/XZw= sigs.k8s.io/controller-runtime v0.19.0 h1:nWVM7aq+Il2ABxwiCizrVDSlmDcshi9llbaFbC0ji/Q= sigs.k8s.io/controller-runtime v0.19.0/go.mod h1:iRmWllt8IlaLjvTTDLhRBXIEtkCK6hwVBJJsYS9Ajf4= sigs.k8s.io/gateway-api v1.2.0 h1:LrToiFwtqKTKZcZtoQPTuo3FxhrrhTgzQG0Te+YGSo8= sigs.k8s.io/gateway-api v1.2.0/go.mod h1:EpNfEXNjiYfUJypf0eZ0P5iXA9ekSGWaS1WgPaM42X0= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= -sigs.k8s.io/kustomize/api v0.17.2 h1:E7/Fjk7V5fboiuijoZHgs4aHuexi5Y2loXlVOAVAG5g= -sigs.k8s.io/kustomize/api v0.17.2/go.mod h1:UWTz9Ct+MvoeQsHcJ5e+vziRRkwimm3HytpZgIYqye0= -sigs.k8s.io/kustomize/kyaml v0.17.1 h1:TnxYQxFXzbmNG6gOINgGWQt09GghzgTP6mIurOgrLCQ= -sigs.k8s.io/kustomize/kyaml v0.17.1/go.mod h1:9V0mCjIEYjlXuCdYsSXvyoy2BTsLESH7TlGV81S282U= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= +sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 h1:/Rv+M11QRah1itp8VhT6HoVx1Ray9eB4DBr+K+/sCJ8= +sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3/go.mod h1:18nIHnGi6636UCz6m8i4DhaJ65T6EruyzmoQqI2BVDo= +sigs.k8s.io/kustomize/api v0.19.0 h1:F+2HB2mU1MSiR9Hp1NEgoU2q9ItNOaBJl0I4Dlus5SQ= +sigs.k8s.io/kustomize/api v0.19.0/go.mod h1:/BbwnivGVcBh1r+8m3tH1VNxJmHSk1PzP5fkP6lbL1o= +sigs.k8s.io/kustomize/kyaml v0.19.0 h1:RFge5qsO1uHhwJsu3ipV7RNolC7Uozc0jUBC/61XSlA= +sigs.k8s.io/kustomize/kyaml v0.19.0/go.mod h1:FeKD5jEOH+FbZPpqUghBP8mrLjJ3+zD3/rf9NNu1cwY= +sigs.k8s.io/randfill v0.0.0-20250304075658-069ef1bbf016/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY= +sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU= +sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY= +sigs.k8s.io/structured-merge-diff/v4 v4.6.0 h1:IUA9nvMmnKWcj5jl84xn+T5MnlZKThmUW1TdblaLVAc= +sigs.k8s.io/structured-merge-diff/v4 v4.6.0/go.mod h1:dDy58f92j70zLsuZVuUX5Wp9vtxXpaZnkPGWeqDfCps= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= diff --git a/test/e2e/apisix/status.go b/test/e2e/apisix/status.go index 1c72e4128..7bc0b6a53 100644 --- a/test/e2e/apisix/status.go +++ b/test/e2e/apisix/status.go @@ -39,10 +39,6 @@ var _ = Describe("Test CRD Status", Label("apisix.apache.org", "v2", "apisixrout applier = framework.NewApplier(s.GinkgoT, s.K8sClient, s.CreateResourceFromString) ) - assertion := func(actualOrCtx any, args ...any) AsyncAssertion { - return Eventually(actualOrCtx).WithArguments(args...).WithTimeout(30 * time.Second).ProbeEvery(time.Second) - } - Context("Test ApisixRoute Sync Status", func() { BeforeEach(func() { By("create GatewayProxy") @@ -95,22 +91,16 @@ spec: - name: non-existent-plugin enable: true ` - - getRequest := func(path string) func() int { - return func() int { - return s.NewAPISIXClient().GET(path).WithHost("httpbin").Expect().Raw().StatusCode - } - } - It("unknown plugin", func() { if os.Getenv("PROVIDER_TYPE") == "apisix-standalone" { Skip("apisix standalone does not validate unknown plugins") } By("apply ApisixRoute with valid plugin") - applier.MustApplyAPIv2(types.NamespacedName{Namespace: s.Namespace(), Name: "default"}, &apiv2.ApisixRoute{}, arWithInvalidPlugin) + err := s.CreateResourceFromString(arWithInvalidPlugin) + Expect(err).NotTo(HaveOccurred(), "creating ApisixRoute with valid plugin") By("check ApisixRoute status") - assertion(func() string { + s.RetryAssertion(func() string { output, _ := s.GetOutputFromString("ar", "default", "-o", "yaml") return output }).Should( @@ -124,67 +114,62 @@ spec: By("Update ApisixRoute") applier.MustApplyAPIv2(types.NamespacedName{Namespace: s.Namespace(), Name: "default"}, &apiv2.ApisixRoute{}, ar) - By("check ApisixRoute status") - assertion(func() string { - output, _ := s.GetOutputFromString("ar", "default", "-o", "yaml") - return output - }).Should( - And( - ContainSubstring(`status: "True"`), - ContainSubstring(`reason: Accepted`), - ), - ) - By("check route in APISIX") - assertion(getRequest("/get")).Should(Equal(200), "should be able to access the route") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin", + Check: scaffold.WithExpectedStatus(200), + }) }) It("dataplane unavailable", func() { By("apply ApisixRoute") applier.MustApplyAPIv2(types.NamespacedName{Namespace: s.Namespace(), Name: "default"}, &apiv2.ApisixRoute{}, ar) - By("check ApisixRoute status") - assertion(func() string { - output, _ := s.GetOutputFromString("ar", "default", "-o", "yaml") - return output - }).Should( - And( - ContainSubstring(`status: "True"`), - ContainSubstring(`reason: Accepted`), - ), - ) - By("check route in APISIX") - assertion(getRequest("/get")).Should(Equal(200), "should be able to access the route") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Headers: map[string]string{"Host": "httpbin"}, + Check: scaffold.WithExpectedStatus(200), + }) s.Deployer.ScaleDataplane(0) By("check ApisixRoute status") - assertion(func() string { + s.RetryAssertion(func() string { output, _ := s.GetOutputFromString("ar", "default", "-o", "yaml") return output - }).Should( - And( - ContainSubstring(`status: "False"`), - ContainSubstring(`reason: SyncFailed`), - ), - ) + }).WithTimeout(80 * time.Second). + Should( + And( + ContainSubstring(`status: "False"`), + ContainSubstring(`reason: SyncFailed`), + ), + ) s.Deployer.ScaleDataplane(1) By("check ApisixRoute status after scaling up") - assertion(func() string { + s.RetryAssertion(func() string { output, _ := s.GetOutputFromString("ar", "default", "-o", "yaml") return output - }).Should( - And( - ContainSubstring(`status: "True"`), - ContainSubstring(`reason: Accepted`), - ), - ) + }).WithTimeout(80 * time.Second). + Should( + And( + ContainSubstring(`status: "True"`), + ContainSubstring(`reason: Accepted`), + ), + ) By("check route in APISIX") - assertion(getRequest("/get")).Should(Equal(200), "should be able to access the route") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin", + Check: scaffold.WithExpectedStatus(200), + }) }) }) @@ -276,67 +261,55 @@ spec: AfterEach(func() { _ = s.DeleteResource("Gateway", "apisix") }) - getRequest := func(path string) func() int { - return func() int { - return s.NewAPISIXClient().GET(path).WithHost("httpbin").Expect().Raw().StatusCode - } - } - var resourceApplied = func(resourType, resourceName, resourceRaw string, observedGeneration int) { - Expect(s.CreateResourceFromString(resourceRaw)). - NotTo(HaveOccurred(), fmt.Sprintf("creating %s", resourType)) - - Eventually(func() string { - hryaml, err := s.GetResourceYaml(resourType, resourceName) - Expect(err).NotTo(HaveOccurred(), fmt.Sprintf("getting %s yaml", resourType)) - return hryaml - }, "8s", "2s"). - Should( - SatisfyAll( - ContainSubstring(`status: "True"`), - ContainSubstring(fmt.Sprintf("observedGeneration: %d", observedGeneration)), - ), - fmt.Sprintf("checking %s condition status", resourType), - ) - time.Sleep(5 * time.Second) - } It("dataplane unavailable", func() { By("Create HTTPRoute") - resourceApplied("HTTPRoute", "httpbin", httproute, 1) + err := s.CreateResourceFromString(httproute) + Expect(err).NotTo(HaveOccurred(), "creating HTTPRoute") By("check route in APISIX") - assertion(getRequest("/get")).Should(Equal(200), "should be able to access the route") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin", + Check: scaffold.WithExpectedStatus(200), + }) s.Deployer.ScaleDataplane(0) - time.Sleep(10 * time.Second) By("check ApisixRoute status") - assertion(func() string { + s.RetryAssertion(func() string { output, _ := s.GetOutputFromString("httproute", "httpbin", "-o", "yaml") return output - }).Should( - And( - ContainSubstring(`status: "False"`), - ContainSubstring(`reason: SyncFailed`), - ), - ) + }).WithTimeout(80 * time.Second). + Should( + And( + ContainSubstring(`status: "False"`), + ContainSubstring(`reason: SyncFailed`), + ), + ) s.Deployer.ScaleDataplane(1) - time.Sleep(10 * time.Second) By("check ApisixRoute status after scaling up") - assertion(func() string { + s.RetryAssertion(func() string { output, _ := s.GetOutputFromString("httproute", "httpbin", "-o", "yaml") return output - }).Should( - And( - ContainSubstring(`status: "True"`), - ContainSubstring(`reason: Accepted`), - ), - ) + }).WithTimeout(80 * time.Second). + Should( + And( + ContainSubstring(`status: "True"`), + ContainSubstring(`reason: Accepted`), + ), + ) By("check route in APISIX") - assertion(getRequest("/get")).Should(Equal(200), "should be able to access the route") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin", + Check: scaffold.WithExpectedStatus(200), + }) }) }) }) diff --git a/test/e2e/crds/backendtrafficpolicy.go b/test/e2e/crds/backendtrafficpolicy.go index 4dc2ca922..82b88a201 100644 --- a/test/e2e/crds/backendtrafficpolicy.go +++ b/test/e2e/crds/backendtrafficpolicy.go @@ -19,7 +19,6 @@ package gatewayapi import ( "fmt" - "time" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" @@ -130,33 +129,55 @@ spec: }) It("should rewrite upstream host", func() { s.ResourceApplied("BackendTrafficPolicy", "httpbin", createUpstreamHost, 1) - s.NewAPISIXClient(). - GET("/headers"). - WithHost("httpbin.org"). - Expect(). - Status(200). - Body().Contains("httpbin.example.com") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/headers", + Host: "httpbin.org", + Headers: map[string]string{ + "Host": "httpbin.org", + }, + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(200), + scaffold.WithExpectedBodyContains( + "httpbin.example.com", + ), + }, + }) s.ResourceApplied("BackendTrafficPolicy", "httpbin", updateUpstreamHost, 2) - s.NewAPISIXClient(). - GET("/headers"). - WithHost("httpbin.org"). - Expect(). - Status(200). - Body().Contains("httpbin.update.example.com") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/headers", + Host: "httpbin.org", + Headers: map[string]string{ + "Host": "httpbin.org", + }, + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(200), + scaffold.WithExpectedBodyContains( + "httpbin.update.example.com", + ), + }, + }) err := s.DeleteResourceFromString(createUpstreamHost) Expect(err).NotTo(HaveOccurred(), "deleting BackendTrafficPolicy") - time.Sleep(5 * time.Second) - s.NewAPISIXClient(). - GET("/headers"). - WithHost("httpbin.org"). - Expect(). - Status(200). - Body(). - NotContains("httpbin.update.example.com"). - NotContains("httpbin.example.com") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/headers", + Host: "httpbin.org", + Headers: map[string]string{ + "Host": "httpbin.org", + }, + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(200), + scaffold.WithExpectedBodyNotContains( + "httpbin.update.example.com", + "httpbin.example.com", + ), + }, + }) }) }) }) @@ -231,7 +252,6 @@ spec: By("create Ingress with GatewayProxy IngressClass") err = s.CreateResourceFromString(defaultIngress) Expect(err).NotTo(HaveOccurred(), "creating Ingress with GatewayProxy IngressClass") - time.Sleep(5 * time.Second) } Context("Rewrite Upstream Host", func() { @@ -265,34 +285,36 @@ spec: BeforeEach(beforeEach) It("should rewrite upstream host", func() { + reqAssert := &scaffold.RequestAssert{ + Method: "GET", + Path: "/headers", + Host: "httpbin.org", + Headers: map[string]string{ + "Host": "httpbin.org", + }, + } s.ResourceApplied("BackendTrafficPolicy", "httpbin", createUpstreamHost, 1) - s.NewAPISIXClient(). - GET("/headers"). - WithHost("httpbin.org"). - Expect(). - Status(200). - Body().Contains("httpbin.example.com") + s.RequestAssert(reqAssert.SetChecks( + scaffold.WithExpectedStatus(200), + scaffold.WithExpectedBodyContains("httpbin.example.com"), + )) s.ResourceApplied("BackendTrafficPolicy", "httpbin", updateUpstreamHost, 2) - s.NewAPISIXClient(). - GET("/headers"). - WithHost("httpbin.org"). - Expect(). - Status(200). - Body().Contains("httpbin.update.example.com") + s.RequestAssert(reqAssert.SetChecks( + scaffold.WithExpectedStatus(200), + scaffold.WithExpectedBodyContains("httpbin.update.example.com"), + )) err := s.DeleteResourceFromString(createUpstreamHost) Expect(err).NotTo(HaveOccurred(), "deleting BackendTrafficPolicy") - time.Sleep(5 * time.Second) - s.NewAPISIXClient(). - GET("/headers"). - WithHost("httpbin.org"). - Expect(). - Status(200). - Body(). - NotContains("httpbin.update.example.com"). - NotContains("httpbin.example.com") + s.RequestAssert(reqAssert.SetChecks( + scaffold.WithExpectedStatus(200), + scaffold.WithExpectedBodyNotContains( + "httpbin.update.example.com", + "httpbin.example.com", + ), + )) }) }) }) diff --git a/test/e2e/crds/consumer.go b/test/e2e/crds/consumer.go index 879d60489..26b8554f5 100644 --- a/test/e2e/crds/consumer.go +++ b/test/e2e/crds/consumer.go @@ -19,8 +19,6 @@ package gatewayapi import ( "fmt" - "net/http" - "time" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" @@ -161,35 +159,47 @@ spec: s.ResourceApplied("Consumer", "consumer-sample", limitCountConsumer, 1) s.ResourceApplied("Consumer", "consumer-sample2", unlimitConsumer, 1) - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key"). - WithHost("httpbin.org"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key"). - WithHost("httpbin.org"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key", + }, + Check: scaffold.WithExpectedStatus(200), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key", + }, + Check: scaffold.WithExpectedStatus(200), + }) By("trigger limit-count") - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key"). - WithHost("httpbin.org"). - Expect(). - Status(503) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key", + }, + Check: scaffold.WithExpectedStatus(503), + }) for i := 0; i < 10; i++ { - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key2"). - WithHost("httpbin.org"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key2", + }, + Check: scaffold.WithExpectedStatus(200), + }) } }) }) @@ -244,72 +254,98 @@ spec: It("Create/Update/Delete", func() { s.ResourceApplied("Consumer", "consumer-sample", defaultCredential, 1) - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key"). - WithHost("httpbin.org"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key2"). - WithHost("httpbin.org"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - GET("/get"). - WithBasicAuth("sample-user", "sample-password"). - WithHost("httpbin.org"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key", + }, + Check: scaffold.WithExpectedStatus(200), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key2", + }, + Check: scaffold.WithExpectedStatus(200), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password", + }, + Check: scaffold.WithExpectedStatus(200), + }) By("update Consumer") s.ResourceApplied("Consumer", "consumer-sample", updateCredential, 2) - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key"). - WithHost("httpbin.org"). - Expect(). - Status(401) - - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key2"). - WithHost("httpbin.org"). - Expect(). - Status(401) - - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "consumer-key"). - WithHost("httpbin.org"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - GET("/get"). - WithBasicAuth("sample-user", "sample-password"). - WithHost("httpbin.org"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key", + }, + Check: scaffold.WithExpectedStatus(401), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key2", + }, + Check: scaffold.WithExpectedStatus(401), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "consumer-key", + }, + Check: scaffold.WithExpectedStatus(200), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password", + }, + Check: scaffold.WithExpectedStatus(200), + }) By("delete Consumer") err := s.DeleteResourceFromString(updateCredential) Expect(err).NotTo(HaveOccurred(), "deleting Consumer") - time.Sleep(5 * time.Second) - - s.NewAPISIXClient(). - GET("/get"). - WithBasicAuth("sample-user", "sample-password"). - WithHost("httpbin.org"). - Expect(). - Status(401) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password", + }, + Check: scaffold.WithExpectedStatus(401), + }) }) - }) + }) Context("SecretRef", func() { var keyAuthSecret = ` apiVersion: v1 @@ -370,61 +406,79 @@ spec: Expect(err).NotTo(HaveOccurred(), "creating basic-auth secret") s.ResourceApplied("Consumer", "consumer-sample", defaultConsumer, 1) - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key"). - WithHost("httpbin.org"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - GET("/get"). - WithBasicAuth("sample-user", "sample-password"). - WithHost("httpbin.org"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key", + }, + Check: scaffold.WithExpectedStatus(200), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password", + }, + Check: scaffold.WithExpectedStatus(200), + }) // update basic-auth password err = s.CreateResourceFromString(basicAuthSecret2) Expect(err).NotTo(HaveOccurred(), "creating basic-auth secret") // use the old password will get 401 - Eventually(func() int { - return s.NewAPISIXClient(). - GET("/get"). - WithBasicAuth("sample-user", "sample-password"). - WithHost("httpbin.org"). - Expect(). - Raw().StatusCode - }).WithTimeout(8 * time.Second).ProbeEvery(time.Second). - Should(Equal(http.StatusUnauthorized)) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password", + }, + Check: scaffold.WithExpectedStatus(401), + }) // use the new password will get 200 - s.NewAPISIXClient(). - GET("/get"). - WithBasicAuth("sample-user", "sample-password-new"). - WithHost("httpbin.org"). - Expect(). - Status(http.StatusOK) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password-new", + }, + Check: scaffold.WithExpectedStatus(200), + }) By("delete consumer") err = s.DeleteResourceFromString(defaultConsumer) Expect(err).NotTo(HaveOccurred(), "deleting consumer") - time.Sleep(5 * time.Second) - - s.NewAPISIXClient(). - GET("/get"). - WithHeader("apikey", "sample-key"). - WithHost("httpbin.org"). - Expect(). - Status(401) - - s.NewAPISIXClient(). - GET("/get"). - WithBasicAuth("sample-user", "sample-password"). - WithHost("httpbin.org"). - Expect(). - Status(401) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + Headers: map[string]string{ + "apikey": "sample-key", + }, + Check: scaffold.WithExpectedStatus(401), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password", + }, + Check: scaffold.WithExpectedStatus(401), + }) }) }) @@ -471,12 +525,16 @@ spec: s.ResourceApplied("Consumer", "consumer-sample", defaultCredential, 1) // verify basic-auth works - s.NewAPISIXClient(). - GET("/get"). - WithBasicAuth("sample-user", "sample-password"). - WithHost("httpbin.org"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password", + }, + Check: scaffold.WithExpectedStatus(200), + }) By("create additional gateway group to get new admin key") var err error @@ -490,26 +548,35 @@ spec: Expect(err).NotTo(HaveOccurred(), "creating APISIX client for additional gateway group") By("Consumer not found for additional gateway group") - client. - GET("/get"). - WithBasicAuth("sample-user", "sample-password"). - WithHost("httpbin.org"). - Expect(). - Status(404) + s.RequestAssert(&scaffold.RequestAssert{ + Client: client, + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password", + }, + Check: scaffold.WithExpectedStatus(404), + }) By("update GatewayProxy with new admin key") updatedProxy := fmt.Sprintf(updatedGatewayProxy, s.Deployer.GetAdminEndpoint(resources.DataplaneService), resources.AdminAPIKey) err = s.CreateResourceFromString(updatedProxy) Expect(err).NotTo(HaveOccurred(), "updating GatewayProxy") - time.Sleep(5 * time.Second) By("verify Consumer works for additional gateway group") - client. - GET("/get"). - WithBasicAuth("sample-user", "sample-password"). - WithHost("httpbin.org"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Client: client, + Method: "GET", + Path: "/get", + Host: "httpbin.org", + BasicAuth: &scaffold.BasicAuth{ + Username: "sample-user", + Password: "sample-password", + }, + Check: scaffold.WithExpectedStatus(200), + }) }) }) }) diff --git a/test/e2e/framework/manifests/apisix.yaml b/test/e2e/framework/manifests/apisix.yaml index affa4bfb5..6b4adbbc8 100644 --- a/test/e2e/framework/manifests/apisix.yaml +++ b/test/e2e/framework/manifests/apisix.yaml @@ -93,6 +93,13 @@ spec: volumeMounts: - name: config-writable mountPath: /usr/local/apisix/conf + readinessProbe: + failureThreshold: 6 + initialDelaySeconds: 10 + periodSeconds: 10 + successThreshold: 1 + tcpSocket: + port: 9080 volumes: - name: config-source configMap: diff --git a/test/e2e/framework/manifests/ingress.yaml b/test/e2e/framework/manifests/ingress.yaml index 37504809b..f6dc990aa 100644 --- a/test/e2e/framework/manifests/ingress.yaml +++ b/test/e2e/framework/manifests/ingress.yaml @@ -68,7 +68,7 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: - name: apisix-ingress-manager-role + name: {{ .Namespace }}-apisix-ingress-manager-role rules: - apiGroups: - "" @@ -244,7 +244,7 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: - name: apisix-ingress-metrics-auth-role + name: {{ .Namespace }}-apisix-ingress-metrics-auth-role rules: - apiGroups: - authentication.k8s.io @@ -262,7 +262,7 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: - name: apisix-ingress-metrics-reader + name: {{ .Namespace }}-apisix-ingress-metrics-reader rules: - nonResourceURLs: - /metrics @@ -280,7 +280,7 @@ metadata: roleRef: apiGroup: rbac.authorization.k8s.io kind: Role - name: apisix-ingress-leader-election-role + name: {{ .Namespace }}-apisix-ingress-leader-election-role subjects: - kind: ServiceAccount name: apisix-ingress-controller-manager @@ -292,11 +292,11 @@ metadata: labels: app.kubernetes.io/managed-by: kustomize app.kubernetes.io/name: apisix-ingress - name: apisix-ingress-manager-rolebinding + name: {{ .Namespace }}-apisix-ingress-manager-rolebinding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole - name: apisix-ingress-manager-role + name: {{ .Namespace }}-apisix-ingress-manager-role subjects: - kind: ServiceAccount name: apisix-ingress-controller-manager @@ -305,11 +305,11 @@ subjects: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: - name: apisix-ingress-metrics-auth-rolebinding + name: {{ .Namespace }}-apisix-ingress-metrics-auth-rolebinding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole - name: apisix-ingress-metrics-auth-role + name: {{ .Namespace }}-apisix-ingress-metrics-auth-role subjects: - kind: ServiceAccount name: apisix-ingress-controller-manager @@ -320,14 +320,13 @@ apiVersion: v1 kind: ConfigMap metadata: name: ingress-config + namespace: {{ .Namespace }} data: config.yaml: | log_level: "debug" - controller_name: {{ .ControllerName | default "apisix.apache.org/apisix-ingress-controller" }} - leader_election_id: "apisix-ingress-controller-leader" - + exec_adc_timeout: 5s provider: type: {{ .ProviderType | default "apisix-standalone" }} sync_period: {{ .ProviderSyncPeriod | default "0s" }} diff --git a/test/e2e/gatewayapi/gatewayproxy.go b/test/e2e/gatewayapi/gatewayproxy.go index dfcbba9be..f8fc56f77 100644 --- a/test/e2e/gatewayapi/gatewayproxy.go +++ b/test/e2e/gatewayapi/gatewayproxy.go @@ -123,25 +123,6 @@ spec: port: 80 ` - var resourceApplied = func(resourceType, resourceName, resourceRaw string, observedGeneration int) { - Expect(s.CreateResourceFromString(resourceRaw)). - NotTo(HaveOccurred(), fmt.Sprintf("creating %s", resourceType)) - - Eventually(func() string { - hryaml, err := s.GetResourceYaml(resourceType, resourceName) - Expect(err).NotTo(HaveOccurred(), fmt.Sprintf("getting %s yaml", resourceType)) - return hryaml - }).WithTimeout(8*time.Second).ProbeEvery(2*time.Second). - Should( - SatisfyAll( - ContainSubstring(`status: "True"`), - ContainSubstring(fmt.Sprintf("observedGeneration: %d", observedGeneration)), - ), - fmt.Sprintf("checking %s condition status", resourceType), - ) - time.Sleep(3 * time.Second) - } - var ( gatewayClassName string ) @@ -176,43 +157,40 @@ spec: Expect(gwyaml).To(ContainSubstring("message: the gateway has been accepted by the apisix-ingress-controller"), "checking Gateway condition message") }) - AfterEach(func() { - By("Clean up resources") - _ = s.DeleteResourceFromString(fmt.Sprintf(httpRouteForTest, "apisix")) - _ = s.DeleteResourceFromString(fmt.Sprintf(gatewayWithProxy, gatewayClassName)) - _ = s.DeleteResourceFromString(fmt.Sprintf(gatewayProxyWithEnabledPlugin, s.Deployer.GetAdminEndpoint(), s.AdminKey())) - }) - Context("Test Gateway with enabled GatewayProxy plugin", func() { It("Should apply plugin configuration when enabled", func() { By("Create HTTPRoute for Gateway with GatewayProxy") - resourceApplied("HTTPRoute", "test-route", fmt.Sprintf(httpRouteForTest, "apisix"), 1) + s.ResourceApplied("HTTPRoute", "test-route", fmt.Sprintf(httpRouteForTest, "apisix"), 1) By("Check if the plugin is applied") - resp := s.NewAPISIXClient(). - GET("/get"). - WithHost("example.com"). - Expect(). - Status(200) - - resp.Header("X-Proxy-Test").IsEqual("enabled") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "example.com", + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(200), + scaffold.WithExpectedHeader("X-Proxy-Test", "enabled"), + }, + }) By("Update GatewayProxy with disabled plugin") err := s.CreateResourceFromString(fmt.Sprintf(gatewayProxyWithDisabledPlugin, s.Deployer.GetAdminEndpoint(), s.AdminKey())) Expect(err).NotTo(HaveOccurred(), "updating GatewayProxy with disabled plugin") - time.Sleep(5 * time.Second) By("Create HTTPRoute for Gateway with GatewayProxy") - resourceApplied("HTTPRoute", "test-route", fmt.Sprintf(httpRouteForTest, "apisix"), 1) + s.ResourceApplied("HTTPRoute", "test-route", fmt.Sprintf(httpRouteForTest, "apisix"), 1) By("Check if the plugin is not applied") - resp = s.NewAPISIXClient(). - GET("/get"). - WithHost("example.com"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "example.com", + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(200), + scaffold.WithExpectedHeader("X-Proxy-Test", ""), + }, + }) - resp.Header("X-Proxy-Test").IsEmpty() }) }) @@ -238,20 +216,19 @@ spec: By("Update GatewayProxy with invalid endpoint") err := s.CreateResourceFromString(fmt.Sprintf(gatewayProxyWithInvalidEndpoint, s.Deployer.GetAdminEndpoint(), s.AdminKey())) Expect(err).NotTo(HaveOccurred(), "creating GatewayProxy with enabled plugin") - time.Sleep(5 * time.Second) By("Create HTTPRoute") - resourceApplied("HTTPRoute", "test-route", fmt.Sprintf(httpRouteForTest, "apisix"), 1) - - expectRequest := func() bool { - resp := s.NewAPISIXClient(). - GET("/get"). - WithHost("example.com"). - Expect().Raw() - return resp.StatusCode == 200 && resp.Header.Get("X-Proxy-Test") == "" - } - - Eventually(expectRequest).WithTimeout(8 * time.Second).ProbeEvery(time.Second).Should(BeTrue()) + s.ResourceApplied("HTTPRoute", "test-route", fmt.Sprintf(httpRouteForTest, "apisix"), 1) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "example.com", + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(200), + scaffold.WithExpectedHeader("X-Proxy-Test", ""), + }, + }) }) }) @@ -311,12 +288,10 @@ spec: err := s.CreateResourceFromString(gatewayProxyWithValidProvider) Expect(err).NotTo(HaveOccurred(), "creating GatewayProxy with valid provider") - Eventually(func() string { - gpYaml, err := s.GetResourceYaml("GatewayProxy", "apisix-proxy-config") - Expect(err).NotTo(HaveOccurred(), "getting GatewayProxy yaml") + s.RetryAssertion(func() string { + gpYaml, _ := s.GetResourceYaml("GatewayProxy", "apisix-proxy-config") return gpYaml - }).WithTimeout(8*time.Second).ProbeEvery(2*time.Second). - Should(ContainSubstring(`"type":"ControlPlane"`), "checking GatewayProxy is applied") + }).Should(ContainSubstring(`"type":"ControlPlane"`), "checking GatewayProxy is applied") }) }) }) diff --git a/test/e2e/gatewayapi/httproute.go b/test/e2e/gatewayapi/httproute.go index 01e30ee89..11e990a96 100644 --- a/test/e2e/gatewayapi/httproute.go +++ b/test/e2e/gatewayapi/httproute.go @@ -24,7 +24,6 @@ import ( "strings" "time" - "github.com/gruntwork-io/terratest/modules/retry" . "github.com/onsi/ginkgo/v2" . "github.com/onsi/gomega" "github.com/pkg/errors" @@ -131,86 +130,80 @@ spec: name: apisix-proxy-config ` - var ResourceApplied = func(resourType, resourceName, resourceRaw string, observedGeneration int) { - Expect(s.CreateResourceFromString(resourceRaw)). - NotTo(HaveOccurred(), fmt.Sprintf("creating %s", resourType)) - - Eventually(func() string { - hryaml, err := s.GetResourceYaml(resourType, resourceName) - Expect(err).NotTo(HaveOccurred(), fmt.Sprintf("getting %s yaml", resourType)) - return hryaml - }, "8s", "2s"). - Should( - SatisfyAll( - ContainSubstring(`status: "True"`), - ContainSubstring(fmt.Sprintf("observedGeneration: %d", observedGeneration)), - ), - fmt.Sprintf("checking %s condition status", resourType), - ) - time.Sleep(5 * time.Second) - } - var beforeEachHTTP = func() { - By("create GatewayProxy") - err := s.CreateResourceFromString(getGatewayProxySpec()) - Expect(err).NotTo(HaveOccurred(), "creating GatewayProxy") - time.Sleep(5 * time.Second) - - By("create GatewayClass") - gatewayClassName := fmt.Sprintf("apisix-%d", time.Now().Unix()) - err = s.CreateResourceFromStringWithNamespace(fmt.Sprintf(gatewayClassYaml, gatewayClassName, s.GetControllerName()), "") - Expect(err).NotTo(HaveOccurred(), "creating GatewayClass") - time.Sleep(5 * time.Second) - - By("check GatewayClass condition") - gcyaml, err := s.GetResourceYaml("GatewayClass", gatewayClassName) - Expect(err).NotTo(HaveOccurred(), "getting GatewayClass yaml") - Expect(gcyaml).To(ContainSubstring(`status: "True"`), "checking GatewayClass condition status") - Expect(gcyaml).To(ContainSubstring("message: the gatewayclass has been accepted by the apisix-ingress-controller"), "checking GatewayClass condition message") - - By("create Gateway") - err = s.CreateResourceFromStringWithNamespace(fmt.Sprintf(defaultGateway, gatewayClassName), s.Namespace()) - Expect(err).NotTo(HaveOccurred(), "creating Gateway") - time.Sleep(5 * time.Second) - - By("check Gateway condition") - gwyaml, err := s.GetResourceYaml("Gateway", "apisix") - Expect(err).NotTo(HaveOccurred(), "getting Gateway yaml") - Expect(gwyaml).To(ContainSubstring(`status: "True"`), "checking Gateway condition status") - Expect(gwyaml).To(ContainSubstring("message: the gateway has been accepted by the apisix-ingress-controller"), "checking Gateway condition message") + Expect(s.CreateResourceFromString(getGatewayProxySpec())). + NotTo(HaveOccurred(), "creating GatewayProxy") + + gatewayClassName := fmt.Sprintf("apisix-%d", time.Now().Nanosecond()) + Expect(s.CreateResourceFromStringWithNamespace(fmt.Sprintf(gatewayClassYaml, gatewayClassName, s.GetControllerName()), "")). + NotTo(HaveOccurred(), "creating GatewayClass") + + s.RetryAssertion(func() string { + gcyaml, _ := s.GetResourceYaml("GatewayClass", gatewayClassName) + return gcyaml + }).Should( + And( + ContainSubstring(`status: "True"`), + ContainSubstring("message: the gatewayclass has been accepted by the apisix-ingress-controller"), + ), + "check GatewayClass condition", + ) + + Expect(s.CreateResourceFromStringWithNamespace(fmt.Sprintf(defaultGateway, gatewayClassName), s.Namespace())). + NotTo(HaveOccurred(), "creating Gateway") + + s.RetryAssertion(func() string { + gcyaml, _ := s.GetResourceYaml("Gateway", "apisix") + return gcyaml + }).Should( + And( + ContainSubstring(`status: "True"`), + ContainSubstring("message: the gateway has been accepted by the apisix-ingress-controlle"), + ), + "check Gateway condition status", + ) } var beforeEachHTTPS = func() { By("create GatewayProxy") err := s.CreateResourceFromString(getGatewayProxySpec()) Expect(err).NotTo(HaveOccurred(), "creating GatewayProxy") - time.Sleep(5 * time.Second) secretName := _secretName createSecret(s, secretName) - By("create GatewayClass") - gatewayClassName := fmt.Sprintf("apisix-%d", time.Now().Unix()) - err = s.CreateResourceFromStringWithNamespace(fmt.Sprintf(gatewayClassYaml, gatewayClassName, s.GetControllerName()), "") - Expect(err).NotTo(HaveOccurred(), "creating GatewayClass") - time.Sleep(5 * time.Second) - By("check GatewayClass condition") - gcyaml, err := s.GetResourceYaml("GatewayClass", gatewayClassName) - Expect(err).NotTo(HaveOccurred(), "getting GatewayClass yaml") - Expect(gcyaml).To(ContainSubstring(`status: "True"`), "checking GatewayClass condition status") - Expect(gcyaml).To(ContainSubstring("message: the gatewayclass has been accepted by the apisix-ingress-controller"), "checking GatewayClass condition message") + By("create GatewayClass") + gatewayClassName := fmt.Sprintf("apisix-%d", time.Now().Nanosecond()) + Expect(s.CreateResourceFromStringWithNamespace(fmt.Sprintf(gatewayClassYaml, gatewayClassName, s.GetControllerName()), "")). + NotTo(HaveOccurred(), "creating GatewayClass") + + s.RetryAssertion(func() string { + gcyaml, _ := s.GetResourceYaml("GatewayClass", gatewayClassName) + return gcyaml + }).Should( + And( + ContainSubstring(`status: "True"`), + ContainSubstring("message: the gatewayclass has been accepted by the apisix-ingress-controller"), + ), + "check GatewayClass condition", + ) By("create Gateway") err = s.CreateResourceFromStringWithNamespace(fmt.Sprintf(defaultGatewayHTTPS, gatewayClassName), s.Namespace()) Expect(err).NotTo(HaveOccurred(), "creating Gateway") - time.Sleep(5 * time.Second) - By("check Gateway condition") - gwyaml, err := s.GetResourceYaml("Gateway", "apisix") - Expect(err).NotTo(HaveOccurred(), "getting Gateway yaml") - Expect(gwyaml).To(ContainSubstring(`status: "True"`), "checking Gateway condition status") - Expect(gwyaml).To(ContainSubstring("message: the gateway has been accepted by the apisix-ingress-controller"), "checking Gateway condition message") + s.RetryAssertion(func() string { + gcyaml, _ := s.GetResourceYaml("Gateway", "apisix") + return gcyaml + }).Should( + And( + ContainSubstring(`status: "True"`), + ContainSubstring("message: the gateway has been accepted by the apisix-ingress-controlle"), + ), + "check Gateway condition status", + ) } + Context("HTTPRoute with HTTPS Gateway", func() { var exactRouteByGet = ` apiVersion: gateway.networking.k8s.io/v1 @@ -236,24 +229,26 @@ spec: It("Create/Updtea/Delete HTTPRoute", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) + s.ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) By("access dataplane to check the HTTPRoute") - s.NewAPISIXHttpsClient("api6.com"). - GET("/get"). - WithHost("api6.com"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "api6.com", + Check: scaffold.WithExpectedStatus(200), + }) + By("delete HTTPRoute") err := s.DeleteResourceFromString(exactRouteByGet) Expect(err).NotTo(HaveOccurred(), "deleting HTTPRoute") - time.Sleep(5 * time.Second) - s.NewAPISIXHttpsClient("api6.com"). - GET("/get"). - WithHost("api6.com"). - Expect(). - Status(404) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "api6.com", + Check: scaffold.WithExpectedStatus(404), + }) }) }) @@ -342,12 +337,17 @@ spec: additionalGatewayClassName = fmt.Sprintf("apisix-%d", time.Now().Unix()) err = s.CreateResourceFromStringWithNamespace(fmt.Sprintf(gatewayClassYaml, additionalGatewayClassName, s.GetControllerName()), "") Expect(err).NotTo(HaveOccurred(), "creating additional GatewayClass") - time.Sleep(5 * time.Second) + By("Check additional GatewayClass condition") - gcyaml, err := s.GetResourceYaml("GatewayClass", additionalGatewayClassName) - Expect(err).NotTo(HaveOccurred(), "getting additional GatewayClass yaml") - Expect(gcyaml).To(ContainSubstring(`status: "True"`), "checking additional GatewayClass condition status") - Expect(gcyaml).To(ContainSubstring("message: the gatewayclass has been accepted by the apisix-ingress-controller"), "checking additional GatewayClass condition message") + s.RetryAssertion(func() string { + gcyaml, _ := s.GetResourceYaml("GatewayClass", additionalGatewayClassName) + return gcyaml + }).Should( + And( + ContainSubstring(`status: "True"`), + ContainSubstring("message: the gatewayclass has been accepted by the apisix-ingress-controller"), + ), + ) additionalGatewayProxy := fmt.Sprintf(additionalGatewayProxyYaml, s.Deployer.GetAdminEndpoint(resources.DataplaneService), resources.AdminAPIKey) err = s.CreateResourceFromStringWithNamespace(additionalGatewayProxy, resources.DataplaneService.Namespace) @@ -359,52 +359,56 @@ spec: additionalSvc.Namespace, ) Expect(err).NotTo(HaveOccurred(), "creating additional Gateway") - time.Sleep(5 * time.Second) }) It("HTTPRoute should be accessible through both gateways", func() { By("Create HTTPRoute referencing both gateways") multiGatewayRoute := fmt.Sprintf(multiGatewayHTTPRoute, s.Namespace(), additionalSvc.Namespace) - ResourceApplied("HTTPRoute", "multi-gateway-route", multiGatewayRoute, 1) + s.ResourceApplied("HTTPRoute", "multi-gateway-route", multiGatewayRoute, 1) By("Access through default gateway") - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(http.StatusOK) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) By("Access through additional gateway") client, err := s.NewAPISIXClientForGateway(additionalGatewayGroupID) Expect(err).NotTo(HaveOccurred(), "creating client for additional gateway") - client. - GET("/get"). - WithHost("httpbin-additional.example"). - Expect(). - Status(http.StatusOK) + s.RequestAssert(&scaffold.RequestAssert{ + Client: client, + Method: "GET", + Path: "/get", + Host: "httpbin-additional.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) By("Delete Additional Gateway") err = s.DeleteResourceFromStringWithNamespace(fmt.Sprintf(additionalGateway, additionalGatewayClassName), additionalSvc.Namespace) Expect(err).NotTo(HaveOccurred(), "deleting additional Gateway") - time.Sleep(5 * time.Second) By("HTTPRoute should still be accessible through default gateway") - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(http.StatusOK) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) By("HTTPRoute should not be accessible through additional gateway") client, err = s.NewAPISIXClientForGateway(additionalGatewayGroupID) Expect(err).NotTo(HaveOccurred(), "creating client for additional gateway") - client. - GET("/get"). - WithHost("httpbin-additional.example"). - Expect(). - Status(http.StatusNotFound) + s.RequestAssert(&scaffold.RequestAssert{ + Client: client, + Method: "GET", + Path: "/get", + Host: "httpbin-additional.example", + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) }) }) @@ -416,7 +420,7 @@ metadata: name: httpbin-external-domain spec: type: ExternalName - externalName: httpbin.org + externalName: httpbin-service-e2e-test --- apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute @@ -520,121 +524,136 @@ spec: It("Create/Update/Delete HTTPRoute", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) + s.ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) By("access dataplane to check the HTTPRoute") - s.NewAPISIXClient(). - GET("/get"). - Expect(). - Status(404) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) - By("delete HTTPRoute") - err := s.DeleteResourceFromString(exactRouteByGet) - Expect(err).NotTo(HaveOccurred(), "deleting HTTPRoute") - time.Sleep(5 * time.Second) + Expect(s.DeleteResourceFromString(exactRouteByGet)). + NotTo(HaveOccurred(), "deleting HTTPRoute") - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(404) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) }) It("Delete Gateway after apply HTTPRoute", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) + s.ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) By("access dataplane to check the HTTPRoute") - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(200) - - By("delete Gateway") - err := s.DeleteResource("Gateway", "apisix") - Expect(err).NotTo(HaveOccurred(), "deleting Gateway") - - Eventually(func() int { - return s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Raw().StatusCode - }).WithTimeout(5 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusNotFound)) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) + + Expect(s.DeleteResource("Gateway", "apisix")). + NotTo(HaveOccurred(), "deleting Gateway") + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) }) It("Proxy External Service", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", httprouteWithExternalName, 1) + s.ResourceApplied("HTTPRoute", "httpbin", httprouteWithExternalName, 1) By("checking the external service response") - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.external"). - Expect(). - Status(http.StatusOK) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.external", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) }) It("Match Port", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", invalidBackendPort, 1) + s.ResourceApplied("HTTPRoute", "httpbin", invalidBackendPort, 1) - serviceResources, err := s.DefaultDataplaneResource().Service().List(context.Background()) - Expect(err).NotTo(HaveOccurred(), "listing services") - Expect(serviceResources).To(HaveLen(1), "checking service length") + s.RetryAssertion(func() error { + serviceResources, err := s.DefaultDataplaneResource().Service().List(context.Background()) + if err != nil { + return errors.Wrap(err, "listing services") + } + if len(serviceResources) != 1 { + return fmt.Errorf("expected 1 service, got %d", len(serviceResources)) + } - serviceResource := serviceResources[0] - nodes := serviceResource.Upstream.Nodes - Expect(nodes).To(HaveLen(1), "checking nodes length") - Expect(nodes[0].Port).To(Equal(80)) + serviceResource := serviceResources[0] + nodes := serviceResource.Upstream.Nodes + if len(nodes) != 1 { + return fmt.Errorf("expected 1 node, got %d", len(nodes)) + } + if nodes[0].Port != 80 { + return fmt.Errorf("expected node port 80, got %d", nodes[0].Port) + } + return nil + }).Should(Succeed(), "checking service port") }) It("Delete HTTPRoute during restart", func() { By("create HTTPRoute httpbin") - ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) + s.ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) By("create HTTPRoute httpbin2") - ResourceApplied("HTTPRoute", "httpbin2", exactRouteByGet2, 1) + s.ResourceApplied("HTTPRoute", "httpbin2", exactRouteByGet2, 1) - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin2.example"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin2.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) s.Deployer.ScaleIngress(0) - By("delete HTTPRoute httpbin2") - err := s.DeleteResource("HTTPRoute", "httpbin2") - Expect(err).NotTo(HaveOccurred(), "deleting HTTPRoute httpbin2") + Expect(s.DeleteResource("HTTPRoute", "httpbin2")). + NotTo(HaveOccurred(), "deleting HTTPRoute httpbin2") s.Deployer.ScaleIngress(1) - time.Sleep(1 * time.Minute) - - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin2.example"). - Expect(). - Status(404) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Timeout: 1 * time.Minute, + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin2.example", + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) }) }) @@ -755,92 +774,106 @@ spec: It("HTTPRoute Exact Match", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) + s.ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) By("access daataplane to check the HTTPRoute") - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - GET("/get/xxx"). - WithHost("httpbin.example"). - Expect(). - Status(404) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get/xxx", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) }) It("HTTPRoute Prefix Match", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", prefixRouteByStatus, 1) + s.ResourceApplied("HTTPRoute", "httpbin", prefixRouteByStatus, 1) By("access daataplane to check the HTTPRoute") - s.NewAPISIXClient(). - GET("/status/200"). - WithHost("httpbin.example"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - GET("/status/201"). - WithHost("httpbin.example"). - Expect(). - Status(201) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/status/200", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/status/201", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusCreated), + }) }) It("HTTPRoute Method Match", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", methodRouteGETAndDELETEByAnything, 1) + s.ResourceApplied("HTTPRoute", "httpbin", methodRouteGETAndDELETEByAnything, 1) By("access daataplane to check the HTTPRoute") - s.NewAPISIXClient(). - GET("/anything"). - WithHost("httpbin.example"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - DELETE("/anything"). - WithHost("httpbin.example"). - Expect(). - Status(200) - - s.NewAPISIXClient(). - POST("/anything"). - WithHost("httpbin.example"). - Expect(). - Status(404) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/anything", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "DELETE", + Path: "/anything", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "POST", + Path: "/anything", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) }) It("HTTPRoute Vars Match", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", varsRoute, 1) + s.ResourceApplied("HTTPRoute", "httpbin", varsRoute, 1) By("access dataplane to check the HTTPRoute") - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(http.StatusNotFound) - - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - Expect(). - Status(http.StatusOK) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Route-Name": "httpbin", + }, + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) }) It("HTTPRoutePolicy in effect", func() { By("create HTTPRoute") s.ApplyHTTPRoute(types.NamespacedName{Namespace: s.Namespace(), Name: "httpbin"}, varsRoute) - request := func() int { - return s.NewAPISIXClient().GET("/get"). - WithHost("httpbin.example").WithHeader("X-Route-Name", "httpbin"). - Expect().Raw().StatusCode - } - Eventually(request).WithTimeout(5 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusOK)) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Route-Name": "httpbin", + }, + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) By("create HTTPRoutePolicy") s.ApplyHTTPRoutePolicy( @@ -850,16 +883,29 @@ spec: ) By("access dataplane to check the HTTPRoutePolicy") - Eventually(request).WithTimeout(5 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusNotFound)) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Route-Name": "httpbin", + }, + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - WithHeader("X-HRP-Name", "http-route-policy-0"). - WithQuery("hrp_name", "http-route-policy-0"). - Expect(). - Status(http.StatusOK) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Query: map[string]any{ + "hrp_name": "http-route-policy-0", + }, + Headers: map[string]string{ + "X-Route-Name": "httpbin", + "X-HRP-Name": "http-route-policy-0", + }, + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) By("update HTTPRoutePolicy") const changedHTTPRoutePolicy = ` @@ -886,24 +932,31 @@ spec: ) // use the old vars cannot match any route - Eventually(func() int { - return s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - WithHeader("X-HRP-Name", "http-route-policy-0"). - WithQuery("hrp_name", "http-route-policy-0"). - Expect().Raw().StatusCode - }).WithTimeout(8 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusNotFound)) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Query: map[string]any{ + "hrp_name": "http-route-policy-0", + }, + Headers: map[string]string{ + "X-Route-Name": "httpbin", + "X-HRP-Name": "http-route-policy-0", + }, + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) // use the new vars can match the route - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - WithHeader("X-HRP-Name", "new-hrp-name"). - Expect(). - Status(http.StatusOK) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Route-Name": "httpbin", + "X-HRP-Name": "new-hrp-name", + }, + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) By("delete the HTTPRoutePolicy") err := s.DeleteResource("HTTPRoutePolicy", "http-route-policy-0") @@ -913,18 +966,15 @@ spec: return err.Error() }).WithTimeout(8 * time.Second).ProbeEvery(time.Second).Should(ContainSubstring(`httproutepolicies.apisix.apache.org "http-route-policy-0" not found`)) // access the route without additional vars should be OK - message := retry.DoWithRetry(s.GinkgoT, "", 10, time.Second, func() (string, error) { - statusCode := s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - Expect().Raw().StatusCode - if statusCode != http.StatusOK { - return "", errors.Errorf("unexpected status code: %v", statusCode) - } - return "request OK", nil + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Route-Name": "httpbin", + }, + Check: scaffold.WithExpectedStatus(http.StatusOK), }) - s.Logf(message) }) It("HTTPRoutePolicy conflicts", func() { @@ -1026,13 +1076,15 @@ spec: } // assert that conflict policies are not in effect - Eventually(func() int { - return s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - Expect().Raw().StatusCode - }).WithTimeout(8 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusOK)) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Route-Name": "httpbin", + }, + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) By("delete HTTPRoutePolicies") err := s.DeleteResource("HTTPRoutePolicy", "http-route-policy-2") @@ -1048,13 +1100,15 @@ spec: }, ) } - Eventually(func() int { - return s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - Expect().Raw().StatusCode - }).WithTimeout(8 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusNotFound)) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Route-Name": "httpbin", + }, + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) By("update HTTPRoutePolicy") err = s.CreateResourceFromString(httpRoutePolicy1Priority20) @@ -1077,13 +1131,16 @@ spec: }, ) } - Eventually(func() int { - return s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - Expect().Raw().StatusCode - }).WithTimeout(8 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusOK)) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Route-Name": "httpbin", + }, + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) }) It("HTTPRoutePolicy status changes on HTTPRoute deleting", func() { @@ -1098,42 +1155,49 @@ spec: ) By("access dataplane to check the HTTPRoutePolicy") - Eventually(func() int { - return s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - Expect().Raw().StatusCode - }).WithTimeout(8 * time.Second).ProbeEvery(time.Second).Should(Equal(http.StatusNotFound)) - - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - WithHeader("X-HRP-Name", "http-route-policy-0"). - WithQuery("hrp_name", "http-route-policy-0"). - Expect(). - Status(http.StatusOK) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Route-Name": "httpbin", + }, + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Query: map[string]any{ + "hrp_name": "http-route-policy-0", + }, + Headers: map[string]string{ + "X-Route-Name": "httpbin", + "X-HRP-Name": "http-route-policy-0", + }, + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) By("delete the HTTPRoute, assert the HTTPRoutePolicy's status will be changed") - err := s.DeleteResource("HTTPRoute", "httpbin") - Expect(err).NotTo(HaveOccurred(), "deleting HTTPRoute") - message := retry.DoWithRetry(s.GinkgoT, "request the deleted route", 10, time.Second, func() (string, error) { - statusCode := s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - WithHeader("X-Route-Name", "httpbin"). - WithHeader("X-HRP-Name", "http-route-policy-0"). - WithQuery("hrp_name", "http-route-policy-0"). - Expect().Raw().StatusCode - if statusCode != http.StatusNotFound { - return "", errors.Errorf("unexpected status code: %v", statusCode) - } - return "the route is deleted", nil + Expect(s.DeleteResource("HTTPRoute", "httpbin")). + NotTo(HaveOccurred(), "deleting HTTPRoute") + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Query: map[string]any{ + "hrp_name": "http-route-policy-0", + }, + Headers: map[string]string{ + "X-Route-Name": "httpbin", + "X-HRP-Name": "http-route-policy-0", + }, + Check: scaffold.WithExpectedStatus(http.StatusNotFound), }) - s.Logf(message) - err = framework.PollUntilHTTPRoutePolicyHaveStatus(s.K8sClient, 8*time.Second, types.NamespacedName{Namespace: s.Namespace(), Name: "http-route-policy-0"}, + err := framework.PollUntilHTTPRoutePolicyHaveStatus(s.K8sClient, 8*time.Second, types.NamespacedName{Namespace: s.Namespace(), Name: "http-route-policy-0"}, func(hrp *v1alpha1.HTTPRoutePolicy) bool { return len(hrp.Status.Ancestors) == 0 }, @@ -1354,63 +1418,73 @@ spec: It("HTTPRoute RequestHeaderModifier", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", reqHeaderModifyByHeaders, 1) + s.ResourceApplied("HTTPRoute", "httpbin", reqHeaderModifyByHeaders, 1) By("access daataplane to check the HTTPRoute") - respExp := s.NewAPISIXClient(). - GET("/headers"). - WithHost("httpbin.example"). - WithHeader("X-Req-Add", "test"). - WithHeader("X-Req-Removed", "test"). - WithHeader("X-Req-Set", "test"). - Expect() - - respExp.Status(200) - respExp.Body(). - Contains(`"X-Req-Add": "test,add"`). - Contains(`"X-Req-Set": "set"`). - NotContains(`"X-Req-Removed": "remove"`) - + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/headers", + Host: "httpbin.example", + Headers: map[string]string{ + "X-Req-Add": "test", + "X-Req-Removed": "test", + "X-Req-Set": "test", + }, + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(http.StatusOK), + scaffold.WithExpectedBodyContains(`"X-Req-Add": "test,add"`, `"X-Req-Set": "set"`), + scaffold.WithExpectedBodyNotContains(`"X-Req-Removed": "remove"`), + }, + }) }) It("HTTPRoute ResponseHeaderModifier", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", respHeaderModifyByHeaders, 1) + s.ResourceApplied("HTTPRoute", "httpbin", respHeaderModifyByHeaders, 1) By("access daataplane to check the HTTPRoute") - respExp := s.NewAPISIXClient(). - GET("/headers"). - WithHost("httpbin.example"). - Expect() - - respExp.Status(200) - respExp.Header("X-Resp-Add").IsEqual("add") - respExp.Header("X-Resp-Set").IsEqual("set") - respExp.Header("Server").IsEmpty() - respExp.Body(). - NotContains(`"X-Resp-Add": "add"`). - NotContains(`"X-Resp-Set": "set"`). - NotContains(`"Server"`) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/headers", + Host: "httpbin.example", + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(http.StatusOK), + scaffold.WithExpectedHeaders(map[string]string{ + "X-Resp-Add": "add", + "X-Resp-Set": "set", + "Server": "", + }), + scaffold.WithExpectedBodyNotContains(`"X-Resp-Add": "add"`, `"X-Resp-Set": "set"`, `"Server"`), + }, + }) }) It("HTTPRoute RequestRedirect", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", httpsRedirectByHeaders, 1) - - s.NewAPISIXClient().GET("/headers"). - WithHeader("Host", "httpbin.example"). - Expect(). - Status(http.StatusFound). - Header("Location").IsEqual("https://httpbin.example:9443/headers") + s.ResourceApplied("HTTPRoute", "httpbin", httpsRedirectByHeaders, 1) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/headers", + Host: "httpbin.example", + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(http.StatusFound), + scaffold.WithExpectedHeader("Location", "https://httpbin.example:9443/headers"), + }, + }) By("update HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", hostnameRedirectByHeaders, 2) - - s.NewAPISIXClient().GET("/headers"). - WithHeader("Host", "httpbin.example"). - Expect(). - Status(http.StatusMovedPermanently). - Header("Location").IsEqual("http://httpbin.org/headers") + s.ResourceApplied("HTTPRoute", "httpbin", hostnameRedirectByHeaders, 2) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/headers", + Host: "httpbin.example", + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(http.StatusMovedPermanently), + scaffold.WithExpectedHeader("Location", "http://httpbin.org/headers"), + }, + }) }) It("HTTPRoute RequestMirror", func() { @@ -1472,78 +1546,89 @@ spec: - name: httpbin-service-e2e-test port: 80 ` - ResourceApplied("HTTPRoute", "httpbin", echoRoute, 1) - - time.Sleep(time.Second * 6) - - _ = s.NewAPISIXClient().GET("/headers"). - WithHeader("Host", "httpbin.example"). - Expect(). - Status(http.StatusOK) + s.ResourceApplied("HTTPRoute", "httpbin", echoRoute, 1) - echoLogs := s.GetDeploymentLogs("echo") - Expect(echoLogs).To(ContainSubstring("GET /headers")) + s.RetryAssertion(func() string { + resp := s.NewAPISIXClient().GET("/headers").WithHost("httpbin.example").Expect().Raw() + if resp.StatusCode != http.StatusOK { + return fmt.Sprintf("expected status OK, got %d", resp.StatusCode) + } + return s.GetDeploymentLogs("echo") + }).WithTimeout(2 * time.Minute).Should(ContainSubstring("GET /headers")) }) It("HTTPRoute URLRewrite with ReplaceFullPath And Hostname", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", replaceFullPathAndHost, 1) + s.ResourceApplied("HTTPRoute", "httpbin", replaceFullPathAndHost, 1) By("/replace/201 should be rewritten to /headers") - s.NewAPISIXClient().GET("/replace/201"). - WithHeader("Host", "httpbin.example"). - Expect(). - Status(http.StatusOK). - Body(). - Contains("replace.example.org") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/replace/201", + Host: "httpbin.example", + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(http.StatusOK), + scaffold.WithExpectedBodyContains("replace.example.org"), + }, + }) By("/replace/500 should be rewritten to /headers") - s.NewAPISIXClient().GET("/replace/500"). - WithHeader("Host", "httpbin.example"). - Expect(). - Status(http.StatusOK). - Body(). - Contains("replace.example.org") + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/replace/500", + Host: "httpbin.example", + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(http.StatusOK), + scaffold.WithExpectedBodyContains("replace.example.org"), + }, + }) }) It("HTTPRoute URLRewrite with ReplacePrefixMatch", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", replacePrefixMatch, 1) + s.ResourceApplied("HTTPRoute", "httpbin", replacePrefixMatch, 1) By("/replace/201 should be rewritten to /status/201") - s.NewAPISIXClient().GET("/replace/201"). - WithHeader("Host", "httpbin.example"). - Expect(). - Status(http.StatusCreated) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/replace/201", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusCreated), + }) By("/replace/500 should be rewritten to /status/500") - s.NewAPISIXClient().GET("/replace/500"). - WithHeader("Host", "httpbin.example"). - Expect(). - Status(http.StatusInternalServerError) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/replace/500", + Host: "httpbin.example", + Checks: []scaffold.ResponseCheckFunc{ + scaffold.WithExpectedStatus(http.StatusInternalServerError), + }, + }) }) It("HTTPRoute ExtensionRef", func() { By("create HTTPRoute") - err := s.CreateResourceFromString(echoPlugin) - Expect(err).NotTo(HaveOccurred(), "creating PluginConfig") - ResourceApplied("HTTPRoute", "httpbin", extensionRefEchoPlugin, 1) - - s.NewAPISIXClient().GET("/get"). - WithHeader("Host", "httpbin.example"). - Expect(). - Body(). - Contains("Hello, World!!") - - err = s.CreateResourceFromString(echoPluginUpdated) - Expect(err).NotTo(HaveOccurred(), "updating PluginConfig") - time.Sleep(5 * time.Second) + Expect(s.CreateResourceFromString(echoPlugin)). + NotTo(HaveOccurred(), "creating PluginConfig") + s.ResourceApplied("HTTPRoute", "httpbin", extensionRefEchoPlugin, 1) + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedBodyContains("Hello, World!!"), + }) - s.NewAPISIXClient().GET("/get"). - WithHeader("Host", "httpbin.example"). - Expect(). - Body(). - Contains("Updated") + Expect(s.CreateResourceFromString(echoPluginUpdated)). + NotTo(HaveOccurred(), "updating PluginConfig") + + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedBodyContains("Updated"), + }) }) }) @@ -1602,45 +1687,58 @@ spec: }) }) It("HTTPRoute Canary", func() { - ResourceApplied("HTTPRoute", "httpbin", sameWeiht, 1) + s.ResourceApplied("HTTPRoute", "httpbin", sameWeiht, 1) + time.Sleep(5 * time.Second) - var ( - hitNginxCnt = 0 - hitHttpbinCnt = 0 - ) - for i := 0; i < 100; i++ { - body := s.NewAPISIXClient().GET("/get"). - WithHeader("Host", "httpbin.example"). - Expect(). - Status(http.StatusOK). - Body().Raw() - - if strings.Contains(body, "Hello") { - hitNginxCnt++ - } else { - hitHttpbinCnt++ + s.RetryAssertion(func() int { + var ( + hitNginxCnt = 0 + hitHttpbinCnt = 0 + ) + for i := 0; i < 20; i++ { + resp := s.NewAPISIXClient().GET("/get"). + WithHeader("Host", "httpbin.example"). + Expect() + body := resp.Body().Raw() + status := resp.Raw().StatusCode + if status != http.StatusOK { + return -100 + } + + if strings.Contains(body, "Hello") { + hitNginxCnt++ + } else { + hitHttpbinCnt++ + } } - } - Expect(hitNginxCnt - hitHttpbinCnt).To(BeNumerically("~", 0, 2)) - - ResourceApplied("HTTPRoute", "httpbin", oneWeiht, 2) - - hitNginxCnt = 0 - hitHttpbinCnt = 0 - for i := 0; i < 100; i++ { - body := s.NewAPISIXClient().GET("/get"). - WithHeader("Host", "httpbin.example"). - Expect(). - Status(http.StatusOK). - Body().Raw() - - if strings.Contains(body, "Hello") { - hitNginxCnt++ - } else { - hitHttpbinCnt++ + return hitNginxCnt - hitHttpbinCnt + }).WithTimeout(2 * time.Minute).Should(BeNumerically("~", 0, 2)) + + s.ResourceApplied("HTTPRoute", "httpbin", oneWeiht, 2) + + s.RetryAssertion(func() int { + var ( + hitNginxCnt = 0 + hitHttpbinCnt = 0 + ) + for i := 0; i < 20; i++ { + resp := s.NewAPISIXClient().GET("/get"). + WithHeader("Host", "httpbin.example"). + Expect() + body := resp.Body().Raw() + status := resp.Raw().StatusCode + if status != http.StatusOK { + return -100 + } + + if strings.Contains(body, "Hello") { + hitNginxCnt++ + } else { + hitHttpbinCnt++ + } } - } - Expect(hitHttpbinCnt - hitNginxCnt).To(Equal(100)) + return hitHttpbinCnt - hitNginxCnt + }).WithTimeout(2 * time.Minute).Should(Equal(20)) }) }) @@ -1688,14 +1786,15 @@ spec: It("Should sync HTTPRoute when GatewayProxy is updated", func() { By("create HTTPRoute") - ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) + s.ResourceApplied("HTTPRoute", "httpbin", exactRouteByGet, 1) By("verify HTTPRoute works") - s.NewAPISIXClient(). - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) By("create additional gateway group to get new admin key") var err error @@ -1709,24 +1808,27 @@ spec: Expect(err).NotTo(HaveOccurred(), "creating APISIX client for additional gateway group") By("HTTPRoute not found for additional gateway group") - client. - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(404) + s.RequestAssert(&scaffold.RequestAssert{ + Client: client, + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusNotFound), + }) By("update GatewayProxy with new admin key") updatedProxy := fmt.Sprintf(updatedGatewayProxy, s.Deployer.GetAdminEndpoint(resources.DataplaneService), resources.AdminAPIKey) err = s.CreateResourceFromString(updatedProxy) Expect(err).NotTo(HaveOccurred(), "updating GatewayProxy") - time.Sleep(5 * time.Second) By("verify HTTPRoute works for additional gateway group") - client. - GET("/get"). - WithHost("httpbin.example"). - Expect(). - Status(200) + s.RequestAssert(&scaffold.RequestAssert{ + Client: client, + Method: "GET", + Path: "/get", + Host: "httpbin.example", + Check: scaffold.WithExpectedStatus(http.StatusOK), + }) }) }) @@ -1740,7 +1842,7 @@ metadata: name: httpbin-external-domain spec: type: ExternalName - externalName: httpbin.org + externalName: httpbin-service-e2e-test --- apiVersion: v1 kind: Service @@ -1763,7 +1865,7 @@ spec: kind: Service group: "" passHost: node - scheme: https + scheme: http --- apiVersion: gateway.networking.k8s.io/v1 kind: HTTPRoute @@ -1779,10 +1881,10 @@ spec: value: /headers backendRefs: - name: httpbin-external-domain - port: 443 + port: 80 weight: 1 - name: mockapi7-external-domain - port: 443 + port: 80 weight: 1 ` @@ -1797,22 +1899,14 @@ spec: totalRequests := 20 for i := 0; i < totalRequests; i++ { - resp := s.NewAPISIXClient().GET("/headers").Expect().Status(http.StatusOK) - - // Parse JSON response to get the Host header - var responseBody map[string]any - resp.JSON().Decode(&responseBody) - - if headers, ok := responseBody["headers"].(map[string]any); ok { - var host string - if host, ok = headers["Host"].(string); !ok { - host, ok = headers["host"].(string) - } - if ok && host != "" { - upstreamHosts[host]++ - } - Expect(ok).To(BeTrue(), "Host header should be present") - Expect(host).Should(Or(Equal("httpbin.org"), Equal("mock.api7.ai"))) + statusCode := s.NewAPISIXClient().GET("/headers").Expect().Raw().StatusCode + Expect(statusCode).To(Or(Equal(http.StatusOK), Equal(http.StatusMovedPermanently))) + + switch statusCode { + case http.StatusOK: + upstreamHosts["httpbin-service-e2e-test"]++ + case http.StatusMovedPermanently: + upstreamHosts["mock.api7.ai"]++ } time.Sleep(100 * time.Millisecond) // Small delay between requests } @@ -1825,16 +1919,4 @@ spec: } }) }) - - /* - Context("HTTPRoute Status Updated", func() { - }) - - Context("HTTPRoute ParentRefs With Multiple Gateway", func() { - }) - - - Context("HTTPRoute BackendRefs Discovery", func() { - }) - */ }) diff --git a/test/e2e/ingress/ingress.go b/test/e2e/ingress/ingress.go index 1d30bb575..6b537b989 100644 --- a/test/e2e/ingress/ingress.go +++ b/test/e2e/ingress/ingress.go @@ -186,7 +186,7 @@ metadata: name: httpbin-external-domain spec: type: ExternalName - externalName: httpbin.org + externalName: httpbin-service-e2e-test --- apiVersion: networking.k8s.io/v1 kind: Ingress diff --git a/test/e2e/scaffold/apisix_deployer.go b/test/e2e/scaffold/apisix_deployer.go index e1707e448..fb22200b2 100644 --- a/test/e2e/scaffold/apisix_deployer.go +++ b/test/e2e/scaffold/apisix_deployer.go @@ -66,7 +66,7 @@ func (s *APISIXDeployer) BeforeEach() { Namespace: s.namespace, } if s.opts.ControllerName == "" { - s.opts.ControllerName = fmt.Sprintf("%s/%d", DefaultControllerName, time.Now().Nanosecond()) + s.opts.ControllerName = fmt.Sprintf("%s/%s", DefaultControllerName, s.namespace) } s.finalizers = nil if s.label == nil { @@ -130,14 +130,14 @@ func (s *APISIXDeployer) AfterEach() { Expect(err).NotTo(HaveOccurred(), "cleaning up additional gateway") } - // if the test case is successful, just delete namespace - err := k8s.DeleteNamespaceE(s.t, s.kubectlOptions, s.namespace) - Expect(err).NotTo(HaveOccurred(), "deleting namespace "+s.namespace) - for i := len(s.finalizers) - 1; i >= 0; i-- { runWithRecover(s.finalizers[i]) } + // if the test case is successful, just delete namespace + err := k8s.DeleteNamespaceE(s.t, s.kubectlOptions, s.namespace) + Expect(err).NotTo(HaveOccurred(), "deleting namespace "+s.namespace) + // Wait for a while to prevent the worker node being overwhelming // (new cases will be run). time.Sleep(3 * time.Second) diff --git a/test/e2e/scaffold/assertion.go b/test/e2e/scaffold/assertion.go new file mode 100644 index 000000000..c8946f2fd --- /dev/null +++ b/test/e2e/scaffold/assertion.go @@ -0,0 +1,252 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + +package scaffold + +import ( + "fmt" + "net/http" + "strings" + "time" + + "github.com/gavv/httpexpect/v2" + . "github.com/onsi/gomega" //nolint:staticcheck + "github.com/onsi/gomega/types" +) + +const ( + DefaultTimeout = 12 * time.Second + DefaultInterval = 1 * time.Second +) + +type ResponseCheckFunc func(*HTTPResponse) error + +type HTTPResponse struct { + *http.Response + + Body string +} + +type BasicAuth struct { + Username string + Password string +} + +type RequestAssert struct { + Client *httpexpect.Expect + Method string + Path string + Host string + Query map[string]any + Headers map[string]string + Body []byte + BasicAuth *BasicAuth + + Timeout time.Duration + Interval time.Duration + + Check ResponseCheckFunc + Checks []ResponseCheckFunc +} + +func (c *RequestAssert) request(method, path string, body []byte) *httpexpect.Request { + switch strings.ToUpper(method) { + case "GET": + return c.Client.GET(path) + case "POST": + return c.Client.POST(path).WithBytes(body) + case "PUT": + return c.Client.PUT(path).WithBytes(body) + case "DELETE": + return c.Client.DELETE(path) + case "PATCH": + return c.Client.PATCH(path).WithBytes(body) + default: + panic("unsupported method: " + method) + } +} + +func (c *RequestAssert) WithCheck(check ResponseCheckFunc) *RequestAssert { + c.Checks = append(c.Checks, check) + return c +} + +func (c *RequestAssert) WithChecks(checks ...ResponseCheckFunc) *RequestAssert { + c.Checks = append(c.Checks, checks...) + return c +} + +func (c *RequestAssert) SetChecks(checks ...ResponseCheckFunc) *RequestAssert { + c.Checks = checks + return c +} + +func WithExpectedStatus(status int) ResponseCheckFunc { + return func(resp *HTTPResponse) error { + if resp.StatusCode != status { + return fmt.Errorf("expected %d, but got %d", status, resp.StatusCode) + } + return nil + } +} + +func WithExpectedBodyContains(expectedBodyList ...string) ResponseCheckFunc { + return func(resp *HTTPResponse) error { + for _, body := range expectedBodyList { + if !strings.Contains(resp.Body, body) { + return fmt.Errorf("expected body to contain %q, but got %q", body, resp.Body) + } + } + return nil + } +} + +func WithExpectedBodyNotContains(unexpectedBodyList ...string) ResponseCheckFunc { + return func(resp *HTTPResponse) error { + for _, unexpectedBody := range unexpectedBodyList { + if strings.Contains(resp.Body, unexpectedBody) { + return fmt.Errorf("expected body not to contain %q, but got %q", unexpectedBody, resp.Body) + } + } + return nil + } +} + +func WithExpectedHeader(key, value string) ResponseCheckFunc { + return func(resp *HTTPResponse) error { + if resp.Header.Get(key) != value { + return fmt.Errorf("expected header %q to be %q, but got %q", + key, value, resp.Header.Get(key)) + } + return nil + } +} + +func WithExpectedHeaders(expectedHeaders map[string]string) ResponseCheckFunc { + return func(resp *HTTPResponse) error { + for key, expectedValue := range expectedHeaders { + actualValue := resp.Header.Get(key) + if actualValue != expectedValue { + return fmt.Errorf("expected header %q to be %q, but got %q", + key, expectedValue, actualValue) + } + } + return nil + } +} + +func (s *Scaffold) RequestAssert(r *RequestAssert) bool { + if r.Client == nil { + r.Client = s.NewAPISIXClient() + } + if r.Method == "" { + if len(r.Body) > 0 { + r.Method = "POST" + } else { + r.Method = "GET" + } + } + if r.Timeout == 0 { + r.Timeout = DefaultTimeout + } + if r.Interval == 0 { + r.Interval = DefaultInterval + } + if r.Check == nil && len(r.Checks) == 0 { + r.Check = WithExpectedStatus(http.StatusOK) + } else if r.Check != nil { + r.Checks = append(r.Checks, r.Check) + } + + return EventuallyWithOffset(1, func() error { + req := r.request(r.Method, r.Path, r.Body) + if len(r.Headers) > 0 { + req = req.WithHeaders(r.Headers) + } + if r.Host != "" { + req = req.WithHost(r.Host) + } + if len(r.Query) > 0 { + for key, value := range r.Query { + req = req.WithQuery(key, value) + } + } + if r.BasicAuth != nil { + req = req.WithBasicAuth(r.BasicAuth.Username, r.BasicAuth.Password) + } + expResp := req.Expect() + + resp := &HTTPResponse{ + Response: expResp.Raw(), + Body: expResp.Body().Raw(), + } + + for _, check := range r.Checks { + if err := check(resp); err != nil { + return fmt.Errorf("response check failed: %w", err) + } + } + return nil + }).WithTimeout(r.Timeout).ProbeEvery(r.Interval).Should(Succeed()) +} + +// RetryAssertion provides a reusable Eventually-based assertion +type RetryAssertion struct { + timeout time.Duration + interval time.Duration + + args []any + actualOrCtx any +} + +// NewRetryAssertion creates a RetryAssertion with defaults +func (s *Scaffold) RetryAssertion(actualOrCtx any, args ...any) *RetryAssertion { + return &RetryAssertion{ + timeout: DefaultTimeout, + interval: DefaultInterval, + args: args, + actualOrCtx: actualOrCtx, + } +} + +// WithTimeout sets the timeout +func (r *RetryAssertion) WithTimeout(timeout time.Duration) *RetryAssertion { + r.timeout = timeout + return r +} + +// WithInterval sets the polling interval +func (r *RetryAssertion) WithInterval(interval time.Duration) *RetryAssertion { + r.interval = interval + return r +} + +// Should runs the Eventually assertion with the given matcher +func (r *RetryAssertion) Should(matcher types.GomegaMatcher, optionalDescription ...any) bool { + return EventuallyWithOffset(1, r.actualOrCtx, r.args...). + WithTimeout(r.timeout). + ProbeEvery(r.interval). + Should(matcher, optionalDescription...) +} + +// ShouldNot runs the Eventually assertion with the given matcher +func (r *RetryAssertion) ShouldNot(matcher types.GomegaMatcher, optionalDescription ...any) bool { + return EventuallyWithOffset(1, r.actualOrCtx, r.args...). + WithTimeout(r.timeout). + ProbeEvery(r.interval). + ShouldNot(matcher, optionalDescription...) +} diff --git a/test/e2e/scaffold/k8s.go b/test/e2e/scaffold/k8s.go index 890552c7a..0612d4c09 100644 --- a/test/e2e/scaffold/k8s.go +++ b/test/e2e/scaffold/k8s.go @@ -184,19 +184,17 @@ func (s *Scaffold) ResourceApplied(resourType, resourceName, resourceRaw string, Expect(s.CreateResourceFromString(resourceRaw)). NotTo(HaveOccurred(), fmt.Sprintf("creating %s", resourType)) - Eventually(func() string { + s.RetryAssertion(func() string { hryaml, err := s.GetResourceYaml(resourType, resourceName) Expect(err).NotTo(HaveOccurred(), fmt.Sprintf("getting %s yaml", resourType)) return hryaml - }).WithTimeout(8*time.Second).ProbeEvery(2*time.Second). - Should( - SatisfyAll( - ContainSubstring(`status: "True"`), - ContainSubstring(fmt.Sprintf("observedGeneration: %d", observedGeneration)), - ), - fmt.Sprintf("checking %s condition status", resourType), - ) - time.Sleep(3 * time.Second) + }).Should( + SatisfyAll( + ContainSubstring(`status: "True"`), + ContainSubstring(fmt.Sprintf("observedGeneration: %d", observedGeneration)), + ), + fmt.Sprintf("checking %s condition status", resourType), + ) } func (s *Scaffold) ApplyDefaultGatewayResource( From bd557b44d0c2ca635f912a252f96cb27e9398fb7 Mon Sep 17 00:00:00 2001 From: Ashing Zheng Date: Thu, 17 Jul 2025 10:31:37 +0800 Subject: [PATCH 3/5] fix: remove duplicate sync func (#2476) Signed-off-by: ashing --- internal/manager/run.go | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/internal/manager/run.go b/internal/manager/run.go index 54ee31c8b..b48746c16 100644 --- a/internal/manager/run.go +++ b/internal/manager/run.go @@ -21,7 +21,6 @@ import ( "context" "crypto/tls" "os" - "time" "github.com/go-logr/logr" "k8s.io/apimachinery/pkg/runtime" @@ -172,36 +171,6 @@ func Run(ctx context.Context, logger logr.Logger) error { return err } - go func() { - setupLog.Info("starting provider sync") - initalSyncDelay := config.ControllerConfig.ProviderConfig.InitSyncDelay.Duration - time.AfterFunc(initalSyncDelay, func() { - setupLog.Info("trying to initialize provider") - if err := provider.Sync(ctx); err != nil { - setupLog.Error(err, "unable to sync resources to provider") - return - } - }) - - syncPeriod := config.ControllerConfig.ProviderConfig.SyncPeriod.Duration - if syncPeriod < 1 { - return - } - ticker := time.NewTicker(syncPeriod) - defer ticker.Stop() - for { - select { - case <-ticker.C: - if err := provider.Sync(ctx); err != nil { - setupLog.Error(err, "unable to sync resources to provider") - return - } - case <-ctx.Done(): - return - } - } - }() - setupLog.Info("check ReferenceGrants is enabled") _, err = mgr.GetRESTMapper().KindsFor(schema.GroupVersionResource{ Group: v1beta1.GroupVersion.Group, From a13bd28f4a37e5a3941e618faa353262cf18e6ad Mon Sep 17 00:00:00 2001 From: ashing Date: Tue, 22 Jul 2025 00:28:58 +0800 Subject: [PATCH 4/5] fix: r Signed-off-by: ashing --- go.mod | 232 +++++++++---------- go.sum | 690 +++++++++++++++++++++++++++++++-------------------------- 2 files changed, 474 insertions(+), 448 deletions(-) diff --git a/go.mod b/go.mod index 02b6be3d4..05aeda446 100644 --- a/go.mod +++ b/go.mod @@ -1,115 +1,84 @@ module github.com/apache/apisix-ingress-controller -go 1.24.0 +go 1.22.0 -toolchain go1.24.1 +toolchain go1.22.5 require ( - github.com/Masterminds/sprig/v3 v3.3.0 + github.com/Masterminds/sprig/v3 v3.2.3 github.com/api7/gopkg v0.2.1-0.20230601092738-0f3730f9b57a github.com/gavv/httpexpect/v2 v2.16.0 github.com/go-logr/logr v1.4.2 github.com/go-logr/zapr v1.3.0 github.com/google/uuid v1.6.0 - github.com/gruntwork-io/terratest v0.50.0 + github.com/gruntwork-io/terratest v0.47.0 github.com/hashicorp/go-memdb v1.3.4 github.com/hashicorp/go-multierror v1.1.1 github.com/incubator4/go-resty-expr v0.1.1 - github.com/onsi/ginkgo/v2 v2.21.0 - github.com/onsi/gomega v1.35.1 + github.com/onsi/ginkgo/v2 v2.20.0 + github.com/onsi/gomega v1.34.1 github.com/pkg/errors v0.9.1 github.com/samber/lo v1.47.0 - github.com/spf13/cobra v1.9.1 - github.com/stretchr/testify v1.10.0 + github.com/spf13/cobra v1.8.1 + github.com/stretchr/testify v1.9.0 github.com/xeipuuv/gojsonschema v1.2.0 - go.etcd.io/etcd/client/v3 v3.5.21 + go.etcd.io/etcd/client/v3 v3.5.15 go.uber.org/multierr v1.11.0 go.uber.org/zap v1.27.0 golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 - golang.org/x/net v0.40.0 + golang.org/x/net v0.28.0 gopkg.in/yaml.v3 v3.0.1 - helm.sh/helm/v3 v3.18.4 - k8s.io/api v0.33.2 - k8s.io/apiextensions-apiserver v0.33.2 - k8s.io/apimachinery v0.33.2 - k8s.io/client-go v0.33.2 - k8s.io/kubectl v0.33.2 - k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 + helm.sh/helm/v3 v3.15.4 + k8s.io/api v0.31.1 + k8s.io/apiextensions-apiserver v0.31.1 + k8s.io/apimachinery v0.31.1 + k8s.io/client-go v0.31.1 + k8s.io/kubectl v0.30.3 + k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 sigs.k8s.io/controller-runtime v0.19.0 sigs.k8s.io/gateway-api v1.2.0 sigs.k8s.io/yaml v1.4.0 ) require ( - cel.dev/expr v0.19.1 // indirect - dario.cat/mergo v1.0.1 // indirect - filippo.io/edwards25519 v1.1.0 // indirect - github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c // indirect - github.com/BurntSushi/toml v1.5.0 // indirect + github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 // indirect + github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect + github.com/BurntSushi/toml v1.3.2 // indirect github.com/MakeNowJust/heredoc v1.0.0 // indirect github.com/Masterminds/goutils v1.1.1 // indirect - github.com/Masterminds/semver/v3 v3.3.0 // indirect + github.com/Masterminds/semver/v3 v3.2.1 // indirect github.com/Masterminds/squirrel v1.5.4 // indirect + github.com/Microsoft/hcsshim v0.11.4 // indirect github.com/TylerBrock/colorjson v0.0.0-20200706003622-8a50f05110d2 // indirect github.com/ajg/form v1.5.1 // indirect github.com/andybalholm/brotli v1.0.4 // indirect github.com/antlr4-go/antlr/v4 v4.13.0 // indirect github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect - github.com/aws/aws-sdk-go-v2 v1.32.5 // indirect - github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7 // indirect - github.com/aws/aws-sdk-go-v2/config v1.28.5 // indirect - github.com/aws/aws-sdk-go-v2/credentials v1.17.46 // indirect - github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.20 // indirect - github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.41 // indirect - github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.24 // indirect - github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.24 // indirect - github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 // indirect - github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.24 // indirect - github.com/aws/aws-sdk-go-v2/service/acm v1.30.6 // indirect - github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.0 // indirect - github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.44.0 // indirect - github.com/aws/aws-sdk-go-v2/service/dynamodb v1.37.1 // indirect - github.com/aws/aws-sdk-go-v2/service/ec2 v1.193.0 // indirect - github.com/aws/aws-sdk-go-v2/service/ecr v1.36.6 // indirect - github.com/aws/aws-sdk-go-v2/service/ecs v1.52.0 // indirect - github.com/aws/aws-sdk-go-v2/service/iam v1.38.1 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.5 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.5 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.5 // indirect - github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.5 // indirect - github.com/aws/aws-sdk-go-v2/service/kms v1.37.6 // indirect - github.com/aws/aws-sdk-go-v2/service/lambda v1.69.0 // indirect - github.com/aws/aws-sdk-go-v2/service/rds v1.91.0 // indirect - github.com/aws/aws-sdk-go-v2/service/route53 v1.46.2 // indirect - github.com/aws/aws-sdk-go-v2/service/s3 v1.69.0 // indirect - github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.6 // indirect - github.com/aws/aws-sdk-go-v2/service/sns v1.33.6 // indirect - github.com/aws/aws-sdk-go-v2/service/sqs v1.37.1 // indirect - github.com/aws/aws-sdk-go-v2/service/ssm v1.56.0 // indirect - github.com/aws/aws-sdk-go-v2/service/sso v1.24.6 // indirect - github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.5 // indirect - github.com/aws/aws-sdk-go-v2/service/sts v1.33.1 // indirect - github.com/aws/smithy-go v1.22.1 // indirect + github.com/aws/aws-sdk-go v1.44.245 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/blang/semver/v4 v4.0.0 // indirect github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc // indirect github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/chai2010/gettext-go v1.0.2 // indirect - github.com/containerd/containerd v1.7.27 // indirect - github.com/containerd/errdefs v0.3.0 // indirect + github.com/containerd/containerd v1.7.15 // indirect github.com/containerd/log v0.1.0 // indirect - github.com/containerd/platforms v0.2.1 // indirect github.com/coreos/go-semver v0.3.1 // indirect github.com/coreos/go-systemd/v22 v22.5.0 // indirect - github.com/cpuguy83/go-md2man/v2 v2.0.6 // indirect - github.com/cyphar/filepath-securejoin v0.4.1 // indirect + github.com/cpuguy83/go-md2man/v2 v2.0.4 // indirect + github.com/cyphar/filepath-securejoin v0.2.4 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect + github.com/distribution/reference v0.5.0 // indirect + github.com/docker/cli v25.0.1+incompatible // indirect + github.com/docker/distribution v2.8.3+incompatible // indirect + github.com/docker/docker v26.1.4+incompatible // indirect + github.com/docker/docker-credential-helpers v0.7.0 // indirect + github.com/docker/go-connections v0.5.0 // indirect + github.com/docker/go-metrics v0.0.1 // indirect github.com/emicklei/go-restful/v3 v3.12.0 // indirect - github.com/evanphx/json-patch v5.9.11+incompatible // indirect + github.com/evanphx/json-patch v5.9.0+incompatible // indirect github.com/evanphx/json-patch/v5 v5.9.0 // indirect - github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f // indirect + github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d // indirect github.com/fatih/color v1.17.0 // indirect github.com/fatih/structs v1.1.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect @@ -121,40 +90,40 @@ require ( github.com/go-openapi/jsonpointer v0.21.0 // indirect github.com/go-openapi/jsonreference v0.21.0 // indirect github.com/go-openapi/swag v0.23.0 // indirect - github.com/go-sql-driver/mysql v1.8.1 // indirect + github.com/go-sql-driver/mysql v1.7.1 // indirect github.com/go-task/slim-sprig/v3 v3.0.0 // indirect github.com/gobwas/glob v0.2.3 // indirect github.com/gogo/protobuf v1.3.2 // indirect + github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.4 // indirect - github.com/google/btree v1.1.3 // indirect - github.com/google/cel-go v0.23.2 // indirect - github.com/google/gnostic-models v0.6.9 // indirect - github.com/google/go-cmp v0.7.0 // indirect + github.com/google/btree v1.1.2 // indirect + github.com/google/cel-go v0.20.1 // indirect + github.com/google/gnostic-models v0.6.8 // indirect + github.com/google/go-cmp v0.6.0 // indirect github.com/google/go-querystring v1.1.0 // indirect - github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db // indirect + github.com/google/gofuzz v1.2.0 // indirect + github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 // indirect github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect - github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 // indirect + github.com/gorilla/mux v1.8.0 // indirect + github.com/gorilla/websocket v1.5.1 // indirect github.com/gosuri/uitable v0.0.4 // indirect - github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect - github.com/grpc-ecosystem/grpc-gateway/v2 v2.24.0 // indirect + github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 // indirect + github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 // indirect github.com/gruntwork-io/go-commons v0.8.0 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-immutable-radix v1.3.1 // indirect github.com/hashicorp/go-uuid v1.0.1 // indirect github.com/hashicorp/golang-lru v1.0.2 // indirect github.com/hpcloud/tail v1.0.0 // indirect - github.com/huandu/xstrings v1.5.0 // indirect + github.com/huandu/xstrings v1.4.0 // indirect + github.com/imdario/mergo v0.3.16 // indirect github.com/imkira/go-interpol v1.1.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect - github.com/jackc/pgpassfile v1.0.0 // indirect - github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect - github.com/jackc/pgx/v5 v5.7.1 // indirect - github.com/jackc/puddle/v2 v2.2.2 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect - github.com/jmoiron/sqlx v1.4.0 // indirect + github.com/jmoiron/sqlx v1.3.5 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/klauspost/compress v1.18.0 // indirect + github.com/klauspost/compress v1.17.4 // indirect github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect github.com/lib/pq v1.10.9 // indirect @@ -162,39 +131,42 @@ require ( github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-isatty v0.0.20 // indirect - github.com/mattn/go-runewidth v0.0.9 // indirect + github.com/mattn/go-runewidth v0.0.15 // indirect + github.com/mattn/go-sqlite3 v1.14.19 // indirect github.com/mattn/go-zglob v0.0.2-0.20190814121620-e3c945676326 // indirect github.com/miekg/dns v1.1.62 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect - github.com/moby/spdystream v0.5.0 // indirect - github.com/moby/term v0.5.2 // indirect + github.com/moby/locker v1.0.1 // indirect + github.com/moby/spdystream v0.4.0 // indirect + github.com/moby/term v0.5.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect github.com/opencontainers/go-digest v1.0.0 // indirect - github.com/opencontainers/image-spec v1.1.1 // indirect + github.com/opencontainers/image-spec v1.1.0 // indirect github.com/peterbourgon/diskv v2.0.1+incompatible // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect - github.com/pquerna/otp v1.4.0 // indirect - github.com/prometheus/client_golang v1.22.0 // indirect + github.com/pquerna/otp v1.2.0 // indirect + github.com/prometheus/client_golang v1.19.1 // indirect github.com/prometheus/client_model v0.6.1 // indirect - github.com/prometheus/common v0.62.0 // indirect + github.com/prometheus/common v0.55.0 // indirect github.com/prometheus/procfs v0.15.1 // indirect - github.com/rubenv/sql-migrate v1.8.0 // indirect + github.com/rivo/uniseg v0.4.4 // indirect + github.com/rubenv/sql-migrate v1.5.2 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/sanity-io/litter v1.5.5 // indirect github.com/sergi/go-diff v1.3.1 // indirect - github.com/shopspring/decimal v1.4.0 // indirect + github.com/shopspring/decimal v1.3.1 // indirect github.com/sirupsen/logrus v1.9.3 // indirect - github.com/spf13/cast v1.7.0 // indirect - github.com/spf13/pflag v1.0.6 // indirect - github.com/stoewer/go-strcase v1.3.0 // indirect - github.com/urfave/cli v1.22.16 // indirect + github.com/spf13/cast v1.6.0 // indirect + github.com/spf13/pflag v1.0.5 // indirect + github.com/stoewer/go-strcase v1.2.0 // indirect + github.com/urfave/cli v1.22.14 // indirect github.com/valyala/bytebufferpool v1.0.0 // indirect github.com/valyala/fasthttp v1.34.0 // indirect github.com/x448/float16 v0.8.4 // indirect @@ -204,47 +176,47 @@ require ( github.com/yalp/jsonpath v0.0.0-20180802001716-5cc68e5049a0 // indirect github.com/yudai/gojsondiff v1.0.0 // indirect github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82 // indirect - go.etcd.io/etcd/api/v3 v3.5.21 // indirect - go.etcd.io/etcd/client/pkg/v3 v3.5.21 // indirect - go.opentelemetry.io/auto/sdk v1.1.0 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.58.0 // indirect - go.opentelemetry.io/otel v1.33.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.33.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.33.0 // indirect - go.opentelemetry.io/otel/metric v1.33.0 // indirect - go.opentelemetry.io/otel/sdk v1.33.0 // indirect - go.opentelemetry.io/otel/trace v1.33.0 // indirect - go.opentelemetry.io/proto/otlp v1.4.0 // indirect + go.etcd.io/etcd/api/v3 v3.5.15 // indirect + go.etcd.io/etcd/client/pkg/v3 v3.5.15 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 // indirect + go.opentelemetry.io/otel v1.28.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0 // indirect + go.opentelemetry.io/otel/metric v1.28.0 // indirect + go.opentelemetry.io/otel/sdk v1.28.0 // indirect + go.opentelemetry.io/otel/trace v1.28.0 // indirect + go.opentelemetry.io/proto/otlp v1.3.1 // indirect + go.starlark.net v0.0.0-20230525235612-a134d8f9ddca // indirect golang.org/x/arch v0.6.0 // indirect - golang.org/x/crypto v0.39.0 // indirect - golang.org/x/mod v0.25.0 // indirect - golang.org/x/oauth2 v0.28.0 // indirect - golang.org/x/sync v0.15.0 // indirect - golang.org/x/sys v0.33.0 // indirect - golang.org/x/term v0.32.0 // indirect - golang.org/x/text v0.26.0 // indirect - golang.org/x/time v0.9.0 // indirect - golang.org/x/tools v0.33.0 // indirect + golang.org/x/crypto v0.26.0 // indirect + golang.org/x/mod v0.20.0 // indirect + golang.org/x/oauth2 v0.21.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.24.0 // indirect + golang.org/x/term v0.23.0 // indirect + golang.org/x/text v0.17.0 // indirect + golang.org/x/time v0.5.0 // indirect + golang.org/x/tools v0.24.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20241209162323-e6fa225c2576 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20241209162323-e6fa225c2576 // indirect - google.golang.org/grpc v1.68.1 // indirect - google.golang.org/protobuf v1.36.5 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 // indirect + google.golang.org/grpc v1.66.2 // indirect + google.golang.org/protobuf v1.34.2 // indirect gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect gopkg.in/fsnotify.v1 v1.4.7 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect - k8s.io/apiserver v0.33.2 // indirect - k8s.io/cli-runtime v0.33.2 // indirect - k8s.io/component-base v0.33.2 // indirect + gopkg.in/yaml.v2 v2.4.0 // indirect + k8s.io/apiserver v0.31.1 // indirect + k8s.io/cli-runtime v0.30.3 // indirect + k8s.io/component-base v0.31.1 // indirect k8s.io/klog/v2 v2.130.1 // indirect - k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff // indirect + k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f // indirect moul.io/http2curl/v2 v2.3.0 // indirect - oras.land/oras-go/v2 v2.6.0 // indirect - sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2 // indirect - sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 // indirect - sigs.k8s.io/kustomize/api v0.19.0 // indirect - sigs.k8s.io/kustomize/kyaml v0.19.0 // indirect - sigs.k8s.io/randfill v1.0.0 // indirect - sigs.k8s.io/structured-merge-diff/v4 v4.6.0 // indirect + oras.land/oras-go v1.2.5 // indirect + sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 // indirect + sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect + sigs.k8s.io/kustomize/api v0.17.2 // indirect + sigs.k8s.io/kustomize/kyaml v0.17.1 // indirect + sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect ) diff --git a/go.sum b/go.sum index 008283077..92545d8c8 100644 --- a/go.sum +++ b/go.sum @@ -1,34 +1,37 @@ -cel.dev/expr v0.19.1 h1:NciYrtDRIR0lNCnH1LFJegdjspNx9fI59O7TWcua/W4= -cel.dev/expr v0.19.1/go.mod h1:MrpN08Q+lEBs+bGYdLxxHkZoUSsCp0nSKTs0nTymJgw= -dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= -dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= -filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA= -filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4= +cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 h1:bvDV9vkmnHYOMsOr4WLk+Vo07yKIzd94sVoIqshQ4bU= github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= -github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c h1:udKWzYgxTojEKWjV8V+WSxDXJ4NFATAsZjh8iIbsQIg= -github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= -github.com/BurntSushi/toml v1.5.0 h1:W5quZX/G/csjUnuI8SUYlsHs9M38FC7znL0lIO+DvMg= -github.com/BurntSushi/toml v1.5.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= +github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= +github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= github.com/DATA-DOG/go-sqlmock v1.5.2 h1:OcvFkGmslmlZibjAjaHm3L//6LiuBgolP7OputlJIzU= github.com/DATA-DOG/go-sqlmock v1.5.2/go.mod h1:88MAG/4G7SMwSE3CeA0ZKzrT5CiOU3OJ+JlNzwDqpNU= github.com/MakeNowJust/heredoc v1.0.0 h1:cXCdzVdstXyiTqTvfqk9SDHpKNjxuom+DOlyEeQ4pzQ= github.com/MakeNowJust/heredoc v1.0.0/go.mod h1:mG5amYoWBHf8vpLOuehzbGGw0EHxpZZ6lCpQ4fNJ8LE= github.com/Masterminds/goutils v1.1.1 h1:5nUrii3FMTL5diU80unEVvNevw1nH4+ZV4DSLVJLSYI= github.com/Masterminds/goutils v1.1.1/go.mod h1:8cTjp+g8YejhMuvIA5y2vz3BpJxksy863GQaJW2MFNU= -github.com/Masterminds/semver/v3 v3.3.0 h1:B8LGeaivUe71a5qox1ICM/JLl0NqZSW5CHyL+hmvYS0= -github.com/Masterminds/semver/v3 v3.3.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM= -github.com/Masterminds/sprig/v3 v3.3.0 h1:mQh0Yrg1XPo6vjYXgtf5OtijNAKJRNcTdOOGZe3tPhs= -github.com/Masterminds/sprig/v3 v3.3.0/go.mod h1:Zy1iXRYNqNLUolqCpL4uhk6SHUMAOSCzdgBfDb35Lz0= +github.com/Masterminds/semver/v3 v3.2.0/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= +github.com/Masterminds/semver/v3 v3.2.1 h1:RN9w6+7QoMeJVGyfmbcgs28Br8cvmnucEXnY0rYXWg0= +github.com/Masterminds/semver/v3 v3.2.1/go.mod h1:qvl/7zhW3nngYb5+80sSMF+FG2BjYrf8m9wsX0PNOMQ= +github.com/Masterminds/sprig/v3 v3.2.3 h1:eL2fZNezLomi0uOLqjQoN6BfsDD+fyLtgbJMAj9n6YA= +github.com/Masterminds/sprig/v3 v3.2.3/go.mod h1:rXcFaZ2zZbLRJv/xSysmlgIM1u11eBaRMhvYXJNkGuM= github.com/Masterminds/squirrel v1.5.4 h1:uUcX/aBc8O7Fg9kaISIUsHXdKuqehiXAMQTYX8afzqM= github.com/Masterminds/squirrel v1.5.4/go.mod h1:NNaOrjSoIDfDA40n7sr2tPNZRfjzjA400rg+riTZj10= +github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= +github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= +github.com/Microsoft/hcsshim v0.11.4 h1:68vKo2VN8DE9AdN4tnkWnmdhqdbpUFM8OF3Airm7fz8= +github.com/Microsoft/hcsshim v0.11.4/go.mod h1:smjE4dvqPX9Zldna+t5FG3rnoHhaB7QYxPRqGcpAD9w= +github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d h1:UrqY+r/OJnIp5u0s1SbQ8dVfLCZJsnvazdBP5hS4iRs= +github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= github.com/TylerBrock/colorjson v0.0.0-20200706003622-8a50f05110d2 h1:ZBbLwSJqkHBuFDA6DUhhse0IGJ7T5bemHyNILUjvOq4= github.com/TylerBrock/colorjson v0.0.0-20200706003622-8a50f05110d2/go.mod h1:VSw57q4QFiWDbRnjdX8Cb3Ow0SFncRw+bA/ofY6Q83w= github.com/agiledragon/gomonkey/v2 v2.10.1/go.mod h1:ap1AmDzcVOAz1YpeJ3TCzIgstoaWLA6jbbgxfB4w2iY= github.com/ajg/form v1.5.1 h1:t9c7v8JUKu/XxOGBU0yjNpaMloxGEJhUkqFRq0ibGeU= github.com/ajg/form v1.5.1/go.mod h1:uL1WgH+h2mgNtvBq0339dVnzXdBETtL2LeUXaIv25UY= +github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/andybalholm/brotli v1.0.4 h1:V7DdXeJtZscaqfNuAdSRuRFzuiKlHSC/Zh3zl9qY3JY= github.com/andybalholm/brotli v1.0.4/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig= github.com/antlr4-go/antlr/v4 v4.13.0 h1:lxCg3LAv+EUK6t1i0y1V6/SLeUi0eKEKdhQAlS8TVTI= @@ -39,78 +42,10 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPd github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs= github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 h1:DklsrG3dyBCFEj5IhUbnKptjxatkF07cF2ak3yi77so= github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= -github.com/aws/aws-sdk-go-v2 v1.32.5 h1:U8vdWJuY7ruAkzaOdD7guwJjD06YSKmnKCJs7s3IkIo= -github.com/aws/aws-sdk-go-v2 v1.32.5/go.mod h1:P5WJBrYqqbWVaOxgH0X/FYYD47/nooaPOZPlQdmiN2U= -github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7 h1:lL7IfaFzngfx0ZwUGOZdsFFnQ5uLvR0hWqqhyE7Q9M8= -github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.7/go.mod h1:QraP0UcVlQJsmHfioCrveWOC1nbiWUl3ej08h4mXWoc= -github.com/aws/aws-sdk-go-v2/config v1.28.5 h1:Za41twdCXbuyyWv9LndXxZZv3QhTG1DinqlFsSuvtI0= -github.com/aws/aws-sdk-go-v2/config v1.28.5/go.mod h1:4VsPbHP8JdcdUDmbTVgNL/8w9SqOkM5jyY8ljIxLO3o= -github.com/aws/aws-sdk-go-v2/credentials v1.17.46 h1:AU7RcriIo2lXjUfHFnFKYsLCwgbz1E7Mm95ieIRDNUg= -github.com/aws/aws-sdk-go-v2/credentials v1.17.46/go.mod h1:1FmYyLGL08KQXQ6mcTlifyFXfJVCNJTVGuQP4m0d/UA= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.20 h1:sDSXIrlsFSFJtWKLQS4PUWRvrT580rrnuLydJrCQ/yA= -github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.20/go.mod h1:WZ/c+w0ofps+/OUqMwWgnfrgzZH1DZO1RIkktICsqnY= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.41 h1:hqcxMc2g/MwwnRMod9n6Bd+t+9Nf7d5qRg7RaXKPd6o= -github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.41/go.mod h1:d1eH0VrttvPmrCraU68LOyNdu26zFxQFjrVSb5vdhog= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.24 h1:4usbeaes3yJnCFC7kfeyhkdkPtoRYPa/hTmCqMpKpLI= -github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.24/go.mod h1:5CI1JemjVwde8m2WG3cz23qHKPOxbpkq0HaoreEgLIY= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.24 h1:N1zsICrQglfzaBnrfM0Ys00860C+QFwu6u/5+LomP+o= -github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.24/go.mod h1:dCn9HbJ8+K31i8IQ8EWmWj0EiIk0+vKiHNMxTTYveAg= -github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 h1:VaRN3TlFdd6KxX1x3ILT5ynH6HvKgqdiXoTxAF4HQcQ= -github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1/go.mod h1:FbtygfRFze9usAadmnGJNc8KsP346kEe+y2/oyhGAGc= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.24 h1:JX70yGKLj25+lMC5Yyh8wBtvB01GDilyRuJvXJ4piD0= -github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.24/go.mod h1:+Ln60j9SUTD0LEwnhEB0Xhg61DHqplBrbZpLgyjoEHg= -github.com/aws/aws-sdk-go-v2/service/acm v1.30.6 h1:fDg0RlN30Xf/yYzEUL/WXqhmgFsjVb/I3230oCfyI5w= -github.com/aws/aws-sdk-go-v2/service/acm v1.30.6/go.mod h1:zRR6jE3v/TcbfO8C2P+H0Z+kShiKKVaVyoIl8NQRjyg= -github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.0 h1:1KzQVZi7OTixxaVJ8fWaJAUBjme+iQ3zBOCZhE4RgxQ= -github.com/aws/aws-sdk-go-v2/service/autoscaling v1.51.0/go.mod h1:I1+/2m+IhnK5qEbhS3CrzjeiVloo9sItE/2K+so0fkU= -github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.44.0 h1:OREVd94+oXW5a+3SSUAo4K0L5ci8cucCLu+PSiek8OU= -github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs v1.44.0/go.mod h1:Qbr4yfpNqVNl69l/GEDK+8wxLf/vHi0ChoiSDzD7thU= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.37.1 h1:vucMirlM6D+RDU8ncKaSZ/5dGrXNajozVwpmWNPn2gQ= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.37.1/go.mod h1:fceORfs010mNxZbQhfqUjUeHlTwANmIT4mvHamuUaUg= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.193.0 h1:RhSoBFT5/8tTmIseJUXM6INTXTQDF8+0oyxWBnozIms= -github.com/aws/aws-sdk-go-v2/service/ec2 v1.193.0/go.mod h1:mzj8EEjIHSN2oZRXiw1Dd+uB4HZTl7hC8nBzX9IZMWw= -github.com/aws/aws-sdk-go-v2/service/ecr v1.36.6 h1:zg+3FGHA0PBs0KM25qE/rOf2o5zsjNa1g/Qq83+SDI0= -github.com/aws/aws-sdk-go-v2/service/ecr v1.36.6/go.mod h1:ZSq54Z9SIsOTf1Efwgw1msilSs4XVEfVQiP9nYVnKpM= -github.com/aws/aws-sdk-go-v2/service/ecs v1.52.0 h1:7/vgFWplkusJN/m+3QOa+W9FNRqa8ujMPNmdufRaJpg= -github.com/aws/aws-sdk-go-v2/service/ecs v1.52.0/go.mod h1:dPTOvmjJQ1T7Q+2+Xs2KSPrMvx+p0rpyV+HsQVnUK4o= -github.com/aws/aws-sdk-go-v2/service/iam v1.38.1 h1:hfkzDZHBp9jAT4zcd5mtqckpU4E3Ax0LQaEWWk1VgN8= -github.com/aws/aws-sdk-go-v2/service/iam v1.38.1/go.mod h1:u36ahDtZcQHGmVm/r+0L1sfKX4fzLEMdCqiKRKkUMVM= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1 h1:iXtILhvDxB6kPvEXgsDhGaZCSC6LQET5ZHSdJozeI0Y= -github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.1/go.mod h1:9nu0fVANtYiAePIBh2/pFUSwtJ402hLnp854CNoDOeE= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.5 h1:gvZOjQKPxFXy1ft3QnEyXmT+IqneM9QAUWlM3r0mfqw= -github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.5/go.mod h1:DLWnfvIcm9IET/mmjdxeXbBKmTCm0ZB8p1za9BVteM8= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.5 h1:3Y457U2eGukmjYjeHG6kanZpDzJADa2m0ADqnuePYVQ= -github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.10.5/go.mod h1:CfwEHGkTjYZpkQ/5PvcbEtT7AJlG68KkEvmtwU8z3/U= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.5 h1:wtpJ4zcwrSbwhECWQoI/g6WM9zqCcSpHDJIWSbMLOu4= -github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.5/go.mod h1:qu/W9HXQbbQ4+1+JcZp0ZNPV31ym537ZJN+fiS7Ti8E= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.5 h1:P1doBzv5VEg1ONxnJss1Kh5ZG/ewoIE4MQtKKc6Crgg= -github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.5/go.mod h1:NOP+euMW7W3Ukt28tAxPuoWao4rhhqJD3QEBk7oCg7w= -github.com/aws/aws-sdk-go-v2/service/kms v1.37.6 h1:CZImQdb1QbU9sGgJ9IswhVkxAcjkkD1eQTMA1KHWk+E= -github.com/aws/aws-sdk-go-v2/service/kms v1.37.6/go.mod h1:YJDdlK0zsyxVBxGU48AR/Mi8DMrGdc1E3Yij4fNrONA= -github.com/aws/aws-sdk-go-v2/service/lambda v1.69.0 h1:BXt75frE/FYtAmEDBJRBa2HexOw+oAZWZl6QknZEFgg= -github.com/aws/aws-sdk-go-v2/service/lambda v1.69.0/go.mod h1:guz2K3x4FKSdDaoeB+TPVgJNU9oj2gftbp5cR8ela1A= -github.com/aws/aws-sdk-go-v2/service/rds v1.91.0 h1:eqHz3Uih+gb0vLE5Cc4Xf733vOxsxDp6GFUUVQU4d7w= -github.com/aws/aws-sdk-go-v2/service/rds v1.91.0/go.mod h1:h2jc7IleH3xHY7y+h8FH7WAZcz3IVLOB6/jXotIQ/qU= -github.com/aws/aws-sdk-go-v2/service/route53 v1.46.2 h1:wmt05tPp/CaRZpPV5B4SaJ5TwkHKom07/BzHoLdkY1o= -github.com/aws/aws-sdk-go-v2/service/route53 v1.46.2/go.mod h1:d+K9HESMpGb1EU9/UmmpInbGIUcAkwmcY6ZO/A3zZsw= -github.com/aws/aws-sdk-go-v2/service/s3 v1.69.0 h1:Q2ax8S21clKOnHhhr933xm3JxdJebql+R7aNo7p7GBQ= -github.com/aws/aws-sdk-go-v2/service/s3 v1.69.0/go.mod h1:ralv4XawHjEMaHOWnTFushl0WRqim/gQWesAMF6hTow= -github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.6 h1:1KDMKvOKNrpD667ORbZ/+4OgvUoaok1gg/MLzrHF9fw= -github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.6/go.mod h1:DmtyfCfONhOyVAJ6ZMTrDSFIeyCBlEO93Qkfhxwbxu0= -github.com/aws/aws-sdk-go-v2/service/sns v1.33.6 h1:lEUtRHICiXsd7VRwRjXaY7MApT2X4Ue0Mrwe6XbyBro= -github.com/aws/aws-sdk-go-v2/service/sns v1.33.6/go.mod h1:SODr0Lu3lFdT0SGsGX1TzFTapwveBrT5wztVoYtppm8= -github.com/aws/aws-sdk-go-v2/service/sqs v1.37.1 h1:39WvSrVq9DD6UHkD+fx5x19P5KpRQfNdtgReDVNbelc= -github.com/aws/aws-sdk-go-v2/service/sqs v1.37.1/go.mod h1:3gwPzC9LER/BTQdQZ3r6dUktb1rSjABF1D3Sr6nS7VU= -github.com/aws/aws-sdk-go-v2/service/ssm v1.56.0 h1:mADKqoZaodipGgiZfuAjtlcr4IVBtXPZKVjkzUZCCYM= -github.com/aws/aws-sdk-go-v2/service/ssm v1.56.0/go.mod h1:l9qF25TzH95FhcIak6e4vt79KE4I7M2Nf59eMUVjj6c= -github.com/aws/aws-sdk-go-v2/service/sso v1.24.6 h1:3zu537oLmsPfDMyjnUS2g+F2vITgy5pB74tHI+JBNoM= -github.com/aws/aws-sdk-go-v2/service/sso v1.24.6/go.mod h1:WJSZH2ZvepM6t6jwu4w/Z45Eoi75lPN7DcydSRtJg6Y= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.5 h1:K0OQAsDywb0ltlFrZm0JHPY3yZp/S9OaoLU33S7vPS8= -github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.5/go.mod h1:ORITg+fyuMoeiQFiVGoqB3OydVTLkClw/ljbblMq6Cc= -github.com/aws/aws-sdk-go-v2/service/sts v1.33.1 h1:6SZUVRQNvExYlMLbHdlKB48x0fLbc2iVROyaNEwBHbU= -github.com/aws/aws-sdk-go-v2/service/sts v1.33.1/go.mod h1:GqWyYCwLXnlUB1lOAXQyNSPqPLQJvmo8J0DWBzp9mtg= -github.com/aws/smithy-go v1.22.1 h1:/HPHZQ0g7f4eUeK6HKglFz8uwVfZKgoI25rb/J+dnro= -github.com/aws/smithy-go v1.22.1/go.mod h1:irrKGvNn1InZwb2d7fkIRNucdfwR8R+Ts3wxYa/cJHg= +github.com/aws/aws-sdk-go v1.44.245 h1:KtY2s4q31/kn33AdV63R5t77mdxsI7rq3YT7Mgo805M= +github.com/aws/aws-sdk-go v1.44.245/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI= +github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= @@ -120,60 +55,81 @@ github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc h1:biVzkmvwrH8 github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= github.com/bshuster-repo/logrus-logstash-hook v1.0.0 h1:e+C0SB5R1pu//O4MQ3f9cFuPGoOVeF2fE4Og9otCc70= github.com/bshuster-repo/logrus-logstash-hook v1.0.0/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= +github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd h1:rFt+Y/IK1aEZkEHchZRSq9OQbsSzIT/OrI8YFFmRIng= +github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8= +github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b h1:otBG+dV+YK+Soembjv71DPz3uX/V/6MMlSyD9JBQ6kQ= +github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= +github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0 h1:nvj0OLI3YqYXer/kZD8Ri1aaunCxIEsOst1BVJswV0o= +github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE= github.com/cch123/supermonkey v1.0.1 h1:sPNQhaqMpfpERGb1oNoPcYV5tGln72SLlG2q2ozpzqg= github.com/cch123/supermonkey v1.0.1/go.mod h1:d5jXTCyG6nu/pu0vYmoC0P/l0eBGesv3oQQ315uNBOA= github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= +github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/chai2010/gettext-go v1.0.2 h1:1Lwwip6Q2QGsAdl/ZKPCwTe9fe0CjlUbqj5bFNSjIRk= github.com/chai2010/gettext-go v1.0.2/go.mod h1:y+wnP2cHYaVj19NZhYKAwEMH2CI1gNHeQQ+5AjwawxA= -github.com/containerd/containerd v1.7.27 h1:yFyEyojddO3MIGVER2xJLWoCIn+Up4GaHFquP7hsFII= -github.com/containerd/containerd v1.7.27/go.mod h1:xZmPnl75Vc+BLGt4MIfu6bp+fy03gdHAn9bz+FreFR0= -github.com/containerd/errdefs v0.3.0 h1:FSZgGOeK4yuT/+DnF07/Olde/q4KBoMsaamhXxIMDp4= -github.com/containerd/errdefs v0.3.0/go.mod h1:+YBYIdtsnF4Iw6nWZhJcqGSg/dwvV7tyJ/kCkyJ2k+M= +github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= +github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= +github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= +github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/containerd/cgroups v1.1.0 h1:v8rEWFl6EoqHB+swVNjVoCJE8o3jX7e8nqBGPLaDFBM= +github.com/containerd/cgroups v1.1.0/go.mod h1:6ppBcbh/NOOUU+dMKrykgaBnK9lCIBxHqJDGwsa1mIw= +github.com/containerd/containerd v1.7.15 h1:afEHXdil9iAm03BmhjzKyXnnEBtjaLJefdU7DV0IFes= +github.com/containerd/containerd v1.7.15/go.mod h1:ISzRRTMF8EXNpJlTzyr2XMhN+j9K302C21/+cr3kUnY= +github.com/containerd/continuity v0.4.2 h1:v3y/4Yz5jwnvqPKJJ+7Wf93fyWoCB3F5EclWG023MDM= +github.com/containerd/continuity v0.4.2/go.mod h1:F6PTNCKepoxEaXLQp3wDAjygEnImnZ/7o4JzpodfroQ= github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I= github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo= -github.com/containerd/platforms v0.2.1 h1:zvwtM3rz2YHPQsF2CHYM8+KtB5dvhISiXh5ZpSBQv6A= -github.com/containerd/platforms v0.2.1/go.mod h1:XHCb+2/hzowdiut9rkudds9bE5yJ7npe7dG/wG+uFPw= github.com/coreos/go-semver v0.3.1 h1:yi21YpKnrx1gt5R+la8n5WgS0kCrsPp33dmEyHReZr4= github.com/coreos/go-semver v0.3.1/go.mod h1:irMmmIw/7yzSRPWryHsK7EYSg09caPQL03VsM8rvUec= github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs= github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/cpuguy83/go-md2man/v2 v2.0.6 h1:XJtiaUW6dEEqVuZiMTn1ldk455QWwEIsMIJlo5vtkx0= -github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= +github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4= +github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= -github.com/cyphar/filepath-securejoin v0.4.1 h1:JyxxyPEaktOD+GAnqIqTf9A8tHyAG22rowi7HkoSU1s= -github.com/cyphar/filepath-securejoin v0.4.1/go.mod h1:Sdj7gXlvMcPZsbhwhQ33GguGLDGQL7h7bg04C/+u9jI= +github.com/cyphar/filepath-securejoin v0.2.4 h1:Ugdm7cg7i6ZK6x3xDF1oEu1nfkyfH53EtKeQYTC3kyg= +github.com/cyphar/filepath-securejoin v0.2.4/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= github.com/davecgh/go-spew v0.0.0-20161028175848-04cdfd42973b/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= -github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= -github.com/distribution/distribution/v3 v3.0.0 h1:q4R8wemdRQDClzoNNStftB2ZAfqOiN6UX90KJc4HjyM= -github.com/distribution/distribution/v3 v3.0.0/go.mod h1:tRNuFoZsUdyRVegq8xGNeds4KLjwLCRin/tTo6i1DhU= -github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= -github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= -github.com/docker/docker-credential-helpers v0.8.2 h1:bX3YxiGzFP5sOXWc3bTPEXdEaZSeVMrFgOr3T+zrFAo= -github.com/docker/docker-credential-helpers v0.8.2/go.mod h1:P3ci7E3lwkZg6XiHdRKft1KckHiO9a2rNtyFbZ/ry9M= +github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2 h1:aBfCb7iqHmDEIp6fBvC/hQUddQfg+3qdYjwzaiP9Hnc= +github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2/go.mod h1:WHNsWjnIn2V1LYOrME7e8KxSeKunYHsxEm4am0BUtcI= +github.com/distribution/reference v0.5.0 h1:/FUIFXtfc/x2gpa5/VGfiGLuOIdYa1t65IKK2OFGvA0= +github.com/distribution/reference v0.5.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= +github.com/docker/cli v25.0.1+incompatible h1:mFpqnrS6Hsm3v1k7Wa/BO23oz0k121MTbTO1lpcGSkU= +github.com/docker/cli v25.0.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk= +github.com/docker/distribution v2.8.3+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/docker v26.1.4+incompatible h1:vuTpXDuoga+Z38m1OZHzl7NKisKWaWlhjQk7IDPSLsU= +github.com/docker/docker v26.1.4+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker-credential-helpers v0.7.0 h1:xtCHsjxogADNZcdv1pKUHXryefjlVRqWqIhk/uXJp0A= +github.com/docker/docker-credential-helpers v0.7.0/go.mod h1:rETQfLdHNT3foU5kuNkFR1R1V12OJRRO5lzt2D1b5X0= +github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj1Br63c= +github.com/docker/go-connections v0.5.0/go.mod h1:ov60Kzw0kKElRwhNs9UlUHAE/F9Fe6GLaXnqyDdmEXc= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c h1:+pKlWGMw7gf6bQ+oDZB4KHQFypsfjYlq/C4rfL7D3g8= github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= github.com/docker/go-metrics v0.0.1 h1:AgB/0SvBxihN0X8OR4SjsblXkbMvalQ8cjmtKQ2rQV8= github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw= +github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1 h1:ZClxb8laGDf5arXfYcAtECDFgAgHklGI8CxgjHnXKJ4= +github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= github.com/emicklei/go-restful/v3 v3.12.0 h1:y2DdzBAURM29NFF94q6RaY4vjIH1rtwDapwQtU84iWk= github.com/emicklei/go-restful/v3 v3.12.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= -github.com/evanphx/json-patch v5.9.11+incompatible h1:ixHHqfcGvxhWkniF1tWxBHA0yb4Z+d1UQi45df52xW8= -github.com/evanphx/json-patch v5.9.11+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lShz4oaXpDTX2bLe7ls= +github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/evanphx/json-patch/v5 v5.9.0 h1:kcBlZQbplgElYIlo/n1hJbls2z/1awpXxpRi0/FOJfg= github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= -github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f h1:Wl78ApPPB2Wvf/TIe2xdyJxTlb6obmF18d8QdkxNDu4= -github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f/go.mod h1:OSYXu++VVOHnXeitef/D8n/6y4QV8uLHSFXX4NeXMGc= +github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d h1:105gxyaGwCFad8crR9dcMQWvV9Hvulu6hwUh4tWPJnM= +github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d/go.mod h1:ZZMPRZwes7CROmyNKgQzC3XPs6L/G2EJLHddWejkmf4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI= @@ -181,8 +137,8 @@ github.com/fatih/structs v1.1.0 h1:Q7juDM0QtcnhCpeyLGQKyg4TOIghuNXrkL32pHAUMxo= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= -github.com/foxcpp/go-mockdns v1.1.0 h1:jI0rD8M0wuYAxL7r/ynTrCQQq0BVqfB99Vgk7DlmewI= -github.com/foxcpp/go-mockdns v1.1.0/go.mod h1:IhLeSFGed3mJIAXPH2aiRQB+kqz7oqu8ld2qVbOu7Wk= +github.com/foxcpp/go-mockdns v1.0.0 h1:7jBqxd3WDWwi/6WhDvacvH1XsN3rOLXyHM1uhvIx6FI= +github.com/foxcpp/go-mockdns v1.0.0/go.mod h1:lgRN6+KxQBawyIghpnl5CezHFGS9VLzvtVlwxvzXTQ4= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= @@ -198,6 +154,9 @@ github.com/go-errors/errors v1.4.2 h1:J6MZopCL4uSllY1OfXM374weqZFFItUbrImctkmUxI github.com/go-errors/errors v1.4.2/go.mod h1:sIVyrIiJhuEF+Pj9Ebtd6P/rEYROXFi3BopGUQ5a5Og= github.com/go-gorp/gorp/v3 v3.1.0 h1:ItKF/Vbuj31dmV4jxA1qblpSwkl9g1typ24xoe70IGs= github.com/go-gorp/gorp/v3 v3.1.0/go.mod h1:dLEjIyyRNiXvNZ8PSmzpt1GsWAUK8kjVhEpjH8TixEw= +github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= +github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= @@ -215,58 +174,89 @@ github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvSc github.com/go-playground/locales v0.14.0/go.mod h1:sawfccIbzZTqEDETgFXqTho0QybSa7l++s0DH+LDiLs= github.com/go-playground/universal-translator v0.18.0/go.mod h1:UvRDBj+xPUEGrFYl+lu/H90nyDXpg0fqeB/AQUGNTVA= github.com/go-playground/validator/v10 v10.10.0/go.mod h1:74x4gJWsvQexRdW8Pn3dXSGrTK4nAUsbPlLADvpJkos= -github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpvNJ1Y= -github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= +github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= +github.com/go-sql-driver/mysql v1.7.1 h1:lUIinVbN1DY0xBg0eMOzmmtGoHwWBbvnWubQUrtU8EI= +github.com/go-sql-driver/mysql v1.7.1/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= +github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= +github.com/gobuffalo/logger v1.0.6 h1:nnZNpxYo0zx+Aj9RfMPBm+x9zAU2OayFh/xrAWi34HU= +github.com/gobuffalo/logger v1.0.6/go.mod h1:J31TBEHR1QLV2683OXTAItYIg8pv2JMHnF/quuAbMjs= +github.com/gobuffalo/packd v1.0.1 h1:U2wXfRr4E9DH8IdsDLlRFwTZTK7hLfq9qT/QHXGVe/0= +github.com/gobuffalo/packd v1.0.1/go.mod h1:PP2POP3p3RXGz7Jh6eYEf93S7vA2za6xM7QT85L4+VY= +github.com/gobuffalo/packr/v2 v2.8.3 h1:xE1yzvnO56cUC0sTpKR3DIbxZgB54AftTFMhB2XEWlY= +github.com/gobuffalo/packr/v2 v2.8.3/go.mod h1:0SahksCVcx4IMnigTjiFuyldmTrdTctXsOdiU5KwbKc= github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= github.com/goccy/go-json v0.9.7/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= +github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= +github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= +github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= +github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= +github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= +github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= -github.com/google/btree v1.1.3 h1:CVpQJjYgC4VbzxeGVHfvZrv1ctoYCAI8vbl07Fcxlyg= -github.com/google/btree v1.1.3/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= -github.com/google/cel-go v0.23.2 h1:UdEe3CvQh3Nv+E/j9r1Y//WO0K0cSyD7/y0bzyLIMI4= -github.com/google/cel-go v0.23.2/go.mod h1:52Pb6QsDbC5kvgxvZhiL9QX1oZEkcUF/ZqaPx1J5Wwo= -github.com/google/gnostic-models v0.6.9 h1:MU/8wDLif2qCXZmzncUQ/BOfxWfthHi63KqpoNbWqVw= -github.com/google/gnostic-models v0.6.9/go.mod h1:CiWsm0s6BSQd1hRn8/QmxqB6BesYcbSZxsz9b0KuDBw= +github.com/gomodule/redigo v1.8.2 h1:H5XSIre1MB5NbPYFp+i1NBbb5qN1W8Y8YAQoAYbkm8k= +github.com/gomodule/redigo v1.8.2/go.mod h1:P9dn9mFrCBvWhGE1wpxx6fgq7BAeLBk+UUUzlpkBYO0= +github.com/google/btree v1.1.2 h1:xf4v41cLI2Z6FxbKm+8Bu+m8ifhj15JuZ9sa0jZCMUU= +github.com/google/btree v1.1.2/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= +github.com/google/cel-go v0.20.1 h1:nDx9r8S3L4pE61eDdt8igGj8rf5kjYR3ILxWIpWNi84= +github.com/google/cel-go v0.20.1/go.mod h1:kWcIzTsPX0zmQ+H3TirHstLLf9ep5QTsZBN9u4dOYLg= +github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= +github.com/google/gnostic-models v0.6.8/go.mod h1:5n7qKqH0f5wFt+aWF8CW6pZLLNOfYuF5OpfBSENuI8U= +github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= +github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= -github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo= -github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= +github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 h1:FKHo8hFI3A+7w0aUQuYXQ+6EN5stWmeY/AZqtM8xk9k= +github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= +github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/gorilla/handlers v1.5.2 h1:cLTUSsNkgcwhgRqvCNmdbRWG0A3N4F+M2nWKdScwyEE= -github.com/gorilla/handlers v1.5.2/go.mod h1:dX+xVpaxdSw+q0Qek8SSsl3dfMk3jNddUkMzo0GtH0w= -github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= -github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= -github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 h1:JeSE6pjso5THxAzdVpqr6/geYxZytqFMBCOtn/ujyeo= -github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674/go.mod h1:r4w70xmWCQKmi1ONH4KIaBptdivuRPyosB9RmPlGEwA= +github.com/gorilla/handlers v1.5.1 h1:9lRY6j8DEeeBT10CvO9hGW0gmky0BprnvDI5vfhUHH4= +github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv/4g96P1Q= +github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI= +github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= +github.com/gorilla/websocket v1.5.1 h1:gmztn0JnHVt9JZquRuzLw3g4wouNVzKL15iLr/zn/QY= +github.com/gorilla/websocket v1.5.1/go.mod h1:x3kM2JMyaluk02fnUJpQuwD2dCS5NDG2ZHL0uE0tcaY= github.com/gosuri/uitable v0.0.4 h1:IG2xLKRvErL3uhY6e1BylFzG+aJiwQviDDTfOKeKTpY= github.com/gosuri/uitable v0.0.4/go.mod h1:tKR86bXuXPZazfOTG1FIzvjIdXzd0mo4Vtn16vt0PJo= -github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 h1:+ngKgrYPPJrOjhax5N+uePQ0Fh1Z7PheYoUI/0nzkPA= -github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.24.0 h1:TmHmbvxPmaegwhDubVz0lICL0J5Ka2vwTzhoePEXsGE= -github.com/grpc-ecosystem/grpc-gateway/v2 v2.24.0/go.mod h1:qztMSjm835F2bXf+5HKAPIS5qsmQDqZna/PgVt4rWtI= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 h1:pdN6V1QBWetyv/0+wjACpqVH+eVULgEjkurDLq3goeM= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 h1:bkypFPDjIYGfCYD5mRBvpqxfYX1YCS1PXdKYWi8FsN0= +github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0/go.mod h1:P+Lt/0by1T8bfcF3z737NnSbmxQAppXMRziHUxPOC8k= github.com/gruntwork-io/go-commons v0.8.0 h1:k/yypwrPqSeYHevLlEDmvmgQzcyTwrlZGRaxEM6G0ro= github.com/gruntwork-io/go-commons v0.8.0/go.mod h1:gtp0yTtIBExIZp7vyIV9I0XQkVwiQZze678hvDXof78= -github.com/gruntwork-io/terratest v0.50.0 h1:AbBJ7IRCpLZ9H4HBrjeoWESITv8nLjN6/f1riMNcAsw= -github.com/gruntwork-io/terratest v0.50.0/go.mod h1:see0lbKvAqz6rvzvN2wyfuFQQG4PWcAb2yHulF6B2q4= +github.com/gruntwork-io/terratest v0.47.0 h1:xIy1pT7NbGVlMLDZEHl3+3iSnvffh8tN2pL6idn448c= +github.com/gruntwork-io/terratest v0.47.0/go.mod h1:oywHw1cFKXSYvKPm27U7quZVzDUlA22H2xUrKCe26xM= github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= @@ -284,47 +274,45 @@ github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/golang-lru v1.0.2 h1:dV3g9Z/unq5DpblPpw+Oqcv4dU/1omnb4Ok8iPY6p1c= github.com/hashicorp/golang-lru v1.0.2/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= -github.com/hashicorp/golang-lru/arc/v2 v2.0.5 h1:l2zaLDubNhW4XO3LnliVj0GXO3+/CGNJAg1dcN2Fpfw= -github.com/hashicorp/golang-lru/arc/v2 v2.0.5/go.mod h1:ny6zBSQZi2JxIeYcv7kt2sH2PXJtirBN7RDhRpxPkxU= -github.com/hashicorp/golang-lru/v2 v2.0.5 h1:wW7h1TG88eUIJ2i69gaE3uNVtEPIagzhGvHgwfx2Vm4= -github.com/hashicorp/golang-lru/v2 v2.0.5/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyfM2/ZepoAG6RGpeM= github.com/hokaccha/go-prettyjson v0.0.0-20211117102719-0474bc63780f h1:7LYC+Yfkj3CTRcShK0KOL/w6iTiKyqqBA9a41Wnggw8= github.com/hokaccha/go-prettyjson v0.0.0-20211117102719-0474bc63780f/go.mod h1:pFlLw2CfqZiIBOx6BuCeRLCrfxBJipTY0nIOF/VbGcI= github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/huandu/xstrings v1.5.0 h1:2ag3IFq9ZDANvthTwTiqSSZLjDc+BedvHPAp5tJy2TI= -github.com/huandu/xstrings v1.5.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= +github.com/huandu/xstrings v1.3.3/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= +github.com/huandu/xstrings v1.4.0 h1:D17IlohoQq4UcpqD7fDk80P7l+lwAmlFaBHgOipl2FU= +github.com/huandu/xstrings v1.4.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= +github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= +github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= github.com/imkira/go-interpol v1.1.0 h1:KIiKr0VSG2CUW1hl1jpiyuzuJeKUUpC8iM1AIE7N1Vk= github.com/imkira/go-interpol v1.1.0/go.mod h1:z0h2/2T3XF8kyEPpRgJ3kmNv+C43p+I/CoI+jC3w2iA= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/incubator4/go-resty-expr v0.1.1 h1:9ur1M+p0wDzL1bprdGzHugGkfK0Yd3Ba/ijcgvL+a1k= github.com/incubator4/go-resty-expr v0.1.1/go.mod h1:w9YQkQLUs1cArOb4O7SGJwJL/L8kuAo6y5CVS2o9eag= -github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM= -github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg= -github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 h1:iCEnooe7UlwOQYpKFhBabPMi4aNAfoODPEFNiAnClxo= -github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761/go.mod h1:5TJZWKEWniPve33vlWYSoGYefn3gLQRzjfDlhSJ9ZKM= -github.com/jackc/pgx/v5 v5.7.1 h1:x7SYsPBYDkHDksogeSmZZ5xzThcTgRz++I5E+ePFUcs= -github.com/jackc/pgx/v5 v5.7.1/go.mod h1:e7O26IywZZ+naJtWWos6i6fvWK+29etgITqrqHLfoZA= -github.com/jackc/puddle/v2 v2.2.2 h1:PR8nw+E/1w0GLuRFSmiioY6UooMp6KJv0/61nB7icHo= -github.com/jackc/puddle/v2 v2.2.2/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4= github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= -github.com/jmoiron/sqlx v1.4.0 h1:1PLqN7S1UYp5t4SrVVnt4nUVNemrDAtxlulVe+Qgm3o= -github.com/jmoiron/sqlx v1.4.0/go.mod h1:ZrZ7UsYB/weZdl2Bxg6jCRO9c3YHl8r3ahlKmRT4JLY= +github.com/jmoiron/sqlx v1.3.5 h1:vFFPA71p1o5gAeqtEAwLU4dnX2napprKtHr7PYIcN3g= +github.com/jmoiron/sqlx v1.3.5/go.mod h1:nRVWtLre0KfCLJvgxzCsLVMogSvQ1zNJtpYr2Ccp0mQ= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= +github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/karrick/godirwalk v1.16.1 h1:DynhcF+bztK8gooS0+NDJFrdNZjJ3gzVzC545UNA9iw= +github.com/karrick/godirwalk v1.16.1/go.mod h1:j4mkqPuvaLI8mp1DroR3P6ad7cyYd4c1qeJ3RV7ULlk= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/klauspost/compress v1.15.0/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= -github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo= -github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ= +github.com/klauspost/compress v1.17.4 h1:Ej5ixsIri7BrIjBkRZLTo6ghwrEtHFk7ijlczPW4fZ4= +github.com/klauspost/compress v1.17.4/go.mod h1:/dCuZOvVtNoHsyb+cuJD3itjs3NbnF6KH9zAO4BDxPM= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= @@ -334,19 +322,24 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= -github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 h1:SOEGU9fKiNWd/HOJuq6+3iTQz8KNCLtVX6idSoTLdUw= github.com/lann/builder v0.0.0-20180802200727-47ae307949d0/go.mod h1:dXGbAdH5GtBTC4WfIxhKZfyBF/HBFgRZSWwZ9g/He9o= github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 h1:P6pPBnrTSX3DEVR4fDembhRWSsG5rVo6hYhAB/ADZrk= github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0/go.mod h1:vmVJ0l/dxyfGW6FmdpVm2joNMFikkuWg0EoCKLGUMNw= github.com/leodido/go-urn v1.2.1/go.mod h1:zt4jvISO2HfUBqxjfIshjdMTYS56ZS/qv49ictyFfxY= +github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de h1:9TO3cAIGXtEhnIaL+V+BEER86oLrvS+kWobKpbJuye0= github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de/go.mod h1:zAbeS9B/r2mtpb6U+EI2rYA5OAXxsYw6wTamcNW+zcE= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/markbates/errx v1.1.0 h1:QDFeR+UP95dO12JgW+tgi2UVfo0V8YBHiUIOaeBPiEI= +github.com/markbates/errx v1.1.0/go.mod h1:PLa46Oex9KNbVDZhKel8v1OT7hD5JZ2eI7AHhA0wswc= +github.com/markbates/oncer v1.0.0 h1:E83IaVAHygyndzPimgUYJjbshhDTALZyXxvk9FOlQRY= +github.com/markbates/oncer v1.0.0/go.mod h1:Z59JA581E9GP6w96jai+TGqafHPW+cPfRxz2aSZ0mcI= +github.com/markbates/safe v1.0.1 h1:yjZkbvRM6IzKj9tlu/zMJLS0n/V351OZWRnF3QfaUxI= +github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0= github.com/mattn/go-colorable v0.1.4/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= @@ -356,48 +349,59 @@ github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27k github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= -github.com/mattn/go-runewidth v0.0.9 h1:Lm995f3rfxdpd6TSmuVCHVb/QhupuXlYr8sCI/QdE+0= -github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= -github.com/mattn/go-sqlite3 v1.14.22 h1:2gZY6PC6kBnID23Tichd1K+Z0oS6nE/XwU+Vz/5o4kU= -github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y= +github.com/mattn/go-runewidth v0.0.15 h1:UNAjwbU9l54TA3KzvqLGxwWjHmMgBUVhBiTjelZgg3U= +github.com/mattn/go-runewidth v0.0.15/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/mattn/go-sqlite3 v1.14.6/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU= +github.com/mattn/go-sqlite3 v1.14.19 h1:fhGleo2h1p8tVChob4I9HpmVFIAkKGpiukdrgQbWfGI= +github.com/mattn/go-sqlite3 v1.14.19/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= github.com/mattn/go-zglob v0.0.1/go.mod h1:9fxibJccNxU2cnpIKLRRFA7zX7qhkJIQWBb449FYHOo= github.com/mattn/go-zglob v0.0.2-0.20190814121620-e3c945676326 h1:ofNAzWCcyTALn2Zv40+8XitdzCgXY6e9qvXwN9W0YXg= github.com/mattn/go-zglob v0.0.2-0.20190814121620-e3c945676326/go.mod h1:9fxibJccNxU2cnpIKLRRFA7zX7qhkJIQWBb449FYHOo= +github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= github.com/miekg/dns v1.1.62 h1:cN8OuEF1/x5Rq6Np+h1epln8OiyPWV+lROx9LxcGgIQ= github.com/miekg/dns v1.1.62/go.mod h1:mvDlcItzm+br7MToIKqkglaGhlFMHJ9DTNNWONWXbNQ= +github.com/mitchellh/copystructure v1.0.0/go.mod h1:SNtv71yrdKgLRyLFxmLdkAbkKEFWgYaq1OVrnRcwhnw= github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw= github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s= github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-wordwrap v1.0.1 h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0= github.com/mitchellh/go-wordwrap v1.0.1/go.mod h1:R62XHJLzvMFRBbcrT7m7WgmE1eOyTSsCt+hzestvNj0= +github.com/mitchellh/reflectwalk v1.0.0/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= github.com/mitchellh/reflectwalk v1.0.2 h1:G2LzWKi524PWgd3mLHV8Y5k7s6XUvT0Gef6zxSIeXaQ= github.com/mitchellh/reflectwalk v1.0.2/go.mod h1:mSTlrgnPZtwu0c4WaC2kGObEpuNDbx0jmZXqmk4esnw= -github.com/moby/spdystream v0.5.0 h1:7r0J1Si3QO/kjRitvSLVVFUjxMEb/YLj6S9FF62JBCU= -github.com/moby/spdystream v0.5.0/go.mod h1:xBAYlnt/ay+11ShkdFKNAG7LsyK/tmNBVvVOwrfMgdI= -github.com/moby/term v0.5.2 h1:6qk3FJAFDs6i/q3W/pQ97SX192qKfZgGjCQqfCJkgzQ= -github.com/moby/term v0.5.2/go.mod h1:d3djjFCrjnB+fl8NJux+EJzu0msscUP+f8it8hPkFLc= +github.com/moby/locker v1.0.1 h1:fOXqR41zeveg4fFODix+1Ch4mj/gT0NE1XJbp/epuBg= +github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= +github.com/moby/spdystream v0.4.0 h1:Vy79D6mHeJJjiPdFEL2yku1kl0chZpJfZcPpb16BRl8= +github.com/moby/spdystream v0.4.0/go.mod h1:xBAYlnt/ay+11ShkdFKNAG7LsyK/tmNBVvVOwrfMgdI= +github.com/moby/sys/mountinfo v0.6.2 h1:BzJjoreD5BMFNmD9Rus6gdd1pLuecOFPt8wC+Vygl78= +github.com/moby/sys/mountinfo v0.6.2/go.mod h1:IJb6JQeOklcdMU9F5xQ8ZALD+CUr5VlGpwtX+VE0rpI= +github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= +github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 h1:n6/2gBQ3RWajuToeY6ZtZTIKv2v7ThUy5KKusIT0yc0= github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00/go.mod h1:Pm3mSP3c5uWn86xMLZ5Sa7JB9GsEZySvHYXCTK4E9q4= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f h1:y5//uYreIhSUg3J1GEMiLbxo1LJaP8RfCpH6pymGZus= github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= github.com/onsi/ginkgo v1.10.1 h1:q/mM8GF/n0shIN8SaAZ0V+jnLPzen6WIVZdiwrRlMlo= github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo/v2 v2.21.0 h1:7rg/4f3rB88pb5obDgNZrNHrQ4e6WpjonchcpuBRnZM= -github.com/onsi/ginkgo/v2 v2.21.0/go.mod h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo= -github.com/onsi/gomega v1.35.1 h1:Cwbd75ZBPxFSuZ6T+rN/WCb/gOc6YgFBXLlZLhC7Ds4= -github.com/onsi/gomega v1.35.1/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog= +github.com/onsi/ginkgo/v2 v2.20.0 h1:PE84V2mHqoT1sglvHc8ZdQtPcwmvvt29WLEEO3xmdZw= +github.com/onsi/ginkgo/v2 v2.20.0/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI= +github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k= +github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= -github.com/opencontainers/image-spec v1.1.1 h1:y0fUlFfIZhPF1W537XOLg0/fcx6zcHCJwooC2xJA040= -github.com/opencontainers/image-spec v1.1.1/go.mod h1:qpqAh3Dmcf36wStyyWU+kCeDgrGnAve2nCC8+7h8Q0M= +github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= +github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= github.com/pelletier/go-toml/v2 v2.0.1/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= github.com/peterbourgon/diskv v2.0.1+incompatible h1:UBdAOUP5p4RWqPBg048CAvpKN+vxiaj6gdUUzhl4XmI= github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= @@ -405,6 +409,7 @@ github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5 h1:Ii+DKncOVM8Cu1H github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5/go.mod h1:iIss55rKnNBTvrwdmkUpLnDpZoAHvWaiq5+iMmen4AE= github.com/pkg/diff v0.0.0-20200914180035-5b29258ca4f7/go.mod h1:zO8QMzTeZd5cpnIkz/Gn6iK0jDfGicM1nynOkkPIl28= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= +github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -414,28 +419,36 @@ github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRI github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/poy/onpar v1.1.2 h1:QaNrNiZx0+Nar5dLgTVp5mXkyoVFIbepjyEoGSnhbAY= github.com/poy/onpar v1.1.2/go.mod h1:6X8FLNoxyr9kkmnlqpK6LSoiOtrO6MICtWwEuWkLjzg= -github.com/pquerna/otp v1.4.0 h1:wZvl1TIVxKRThZIBiwOOHOGP/1+nZyWBil9Y2XNEDzg= -github.com/pquerna/otp v1.4.0/go.mod h1:dkJfzwRKNiegxyNb54X/3fLwhCynbMspSyWKnvi1AEg= -github.com/prometheus/client_golang v1.22.0 h1:rb93p9lokFEsctTys46VnV1kLCDpVZ0a/Y92Vm0Zc6Q= -github.com/prometheus/client_golang v1.22.0/go.mod h1:R7ljNsLXhuQXYZYtw6GAE9AZg8Y7vEW5scdCXrWRXC0= +github.com/pquerna/otp v1.2.0 h1:/A3+Jn+cagqayeR3iHs/L62m5ue7710D35zl1zJ1kok= +github.com/pquerna/otp v1.2.0/go.mod h1:dkJfzwRKNiegxyNb54X/3fLwhCynbMspSyWKnvi1AEg= +github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g= +github.com/prometheus/client_golang v1.19.1 h1:wZWJDwK+NameRJuPGDhlnFgx8e8HN3XHQeLaYJFJBOE= +github.com/prometheus/client_golang v1.19.1/go.mod h1:mP78NwGzrVks5S2H6ab8+ZZGJLZUq1hoULYBAYBw1Ho= +github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E= github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= -github.com/prometheus/common v0.62.0 h1:xasJaQlnWAeyHdUBeGjXmutelfJHWMRr+Fg4QszZ2Io= -github.com/prometheus/common v0.62.0/go.mod h1:vyBcEuLSvWos9B1+CyL7JZ2up+uFzXhkqml0W5zIY1I= +github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= +github.com/prometheus/common v0.55.0 h1:KEi6DK7lXW/m7Ig5i47x0vRzuBsHuvJdi5ee6Y3G1dc= +github.com/prometheus/common v0.55.0/go.mod h1:2SECS4xJG1kd8XF9IcM1gMX6510RAEL65zxzNImwdc8= +github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc= github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk= -github.com/redis/go-redis/extra/rediscmd/v9 v9.0.5 h1:EaDatTxkdHG+U3Bk4EUr+DZ7fOGwTfezUiUJMaIcaho= -github.com/redis/go-redis/extra/rediscmd/v9 v9.0.5/go.mod h1:fyalQWdtzDBECAQFBJuQe5bzQ02jGd5Qcbgb97Flm7U= -github.com/redis/go-redis/extra/redisotel/v9 v9.0.5 h1:EfpWLLCyXw8PSM2/XNJLjI3Pb27yVE+gIAfeqp8LUCc= -github.com/redis/go-redis/extra/redisotel/v9 v9.0.5/go.mod h1:WZjPDy7VNzn77AAfnAfVjZNvfJTYfPetfZk5yoSTLaQ= -github.com/redis/go-redis/v9 v9.7.3 h1:YpPyAayJV+XErNsatSElgRZZVCwXX9QzkKYNvO7x0wM= -github.com/redis/go-redis/v9 v9.7.3/go.mod h1:bGUrSggJ9X9GUmZpZNEOQKaANxSGgOEBRltRTZHSvrA= +github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= +github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.8.0/go.mod h1:WmiCO8CzOY8rg0OYDC4/i/2WRWAB6poM+XZ2dLUbcbE= -github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= -github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= -github.com/rubenv/sql-migrate v1.8.0 h1:dXnYiJk9k3wetp7GfQbKJcPHjVJL6YK19tKj8t2Ns0o= -github.com/rubenv/sql-migrate v1.8.0/go.mod h1:F2bGFBwCU+pnmbtNYDeKvSuvL6lBVtXDXUUv5t+u1qw= +github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= +github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= +github.com/rubenv/sql-migrate v1.5.2 h1:bMDqOnrJVV/6JQgQ/MxOpU+AdO8uzYYA/TxFUBzFtS0= +github.com/rubenv/sql-migrate v1.5.2/go.mod h1:H38GW8Vqf8F0Su5XignRyaRcbXbJunSWxs+kmzlg0Is= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= @@ -446,23 +459,26 @@ github.com/sanity-io/litter v1.5.5/go.mod h1:9gzJgR2i4ZpjZHsKvUXIRQVk7P+yM3e+jAF github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= -github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k= -github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME= +github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= +github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= +github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= +github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/sony/sonyflake v1.1.0/go.mod h1:LORtCywH/cq10ZbyfhKrHYgAUGH7mOBa76enV9txy/Y= -github.com/spf13/cast v1.7.0 h1:ntdiHjuueXFgm5nzDRdOS4yfT43P5Fnud6DH50rz/7w= -github.com/spf13/cast v1.7.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= -github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo= -github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0= -github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o= -github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= -github.com/stoewer/go-strcase v1.3.0 h1:g0eASXYtp+yvN9fK8sH94oCIk0fau9uV1/ZdJ0AVEzs= -github.com/stoewer/go-strcase v1.3.0/go.mod h1:fAH5hQ5pehh+j3nZfvwdk2RgEgQjAoM8wodgtPmh1xo= +github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= +github.com/spf13/cast v1.6.0 h1:GEiTHELF+vaR5dhz3VqZfFSzZjYbgeKDpBxQVS4GYJ0= +github.com/spf13/cast v1.6.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo= +github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= +github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= +github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/stoewer/go-strcase v1.2.0 h1:Z2iHWqGXH00XYgqDmNgQbIBxf3wrNq0F3feEy0ainaU= +github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= @@ -473,21 +489,20 @@ github.com/stretchr/testify v0.0.0-20161117074351-18a02ba4a312/go.mod h1:a8OnRci github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= -github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/tailscale/depaware v0.0.0-20210622194025-720c4b409502/go.mod h1:p9lPsd+cx33L3H9nNoecRRxPssFKUwwI50I3pZ0yT+8= github.com/ugorji/go v1.2.7/go.mod h1:nF9osbDWLy6bDVv/Rtoh6QgnvNDpmCalQV5urGCCS6M= github.com/ugorji/go/codec v1.2.7/go.mod h1:WGN1fab3R1fzQlVQTkfxVtIBhWDRqOviHU95kRgeqEY= github.com/urfave/cli v1.22.2/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= -github.com/urfave/cli v1.22.16 h1:MH0k6uJxdwdeWQTwhSO42Pwr4YLrNLwBtg1MRgTqPdQ= -github.com/urfave/cli v1.22.16/go.mod h1:EeJR6BKodywf4zciqrdw6hpCPk68JO9z5LazXZMn5Po= +github.com/urfave/cli v1.22.14 h1:ebbhrRiGK2i4naQJr+1Xj92HXZCrK7MsyTS/ob3HnAk= +github.com/urfave/cli v1.22.14/go.mod h1:X0eDS6pD6Exaclxm99NJ3FiCDRED7vIHpx2mDOHLvkA= github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= github.com/valyala/fasthttp v1.34.0 h1:d3AAQJ2DRcxJYHm7OXNXtXt2as1vMDfxeIcFvhmGGm4= @@ -514,58 +529,39 @@ github.com/yudai/pp v2.0.1+incompatible h1:Q4//iY4pNF6yPLZIigmvcl7k/bPgrcTPIFIcm github.com/yudai/pp v2.0.1+incompatible/go.mod h1:PuxR/8QJ7cyCkFp/aUDS+JY727OFEZkTdatxwunjIkc= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -go.etcd.io/etcd/api/v3 v3.5.21 h1:A6O2/JDb3tvHhiIz3xf9nJ7REHvtEFJJ3veW3FbCnS8= -go.etcd.io/etcd/api/v3 v3.5.21/go.mod h1:c3aH5wcvXv/9dqIw2Y810LDXJfhSYdHQ0vxmP3CCHVY= -go.etcd.io/etcd/client/pkg/v3 v3.5.21 h1:lPBu71Y7osQmzlflM9OfeIV2JlmpBjqBNlLtcoBqUTc= -go.etcd.io/etcd/client/pkg/v3 v3.5.21/go.mod h1:BgqT/IXPjK9NkeSDjbzwsHySX3yIle2+ndz28nVsjUs= -go.etcd.io/etcd/client/v3 v3.5.21 h1:T6b1Ow6fNjOLOtM0xSoKNQt1ASPCLWrF9XMHcH9pEyY= -go.etcd.io/etcd/client/v3 v3.5.21/go.mod h1:mFYy67IOqmbRf/kRUvsHixzo3iG+1OF2W2+jVIQRAnU= -go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA= -go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A= -go.opentelemetry.io/contrib/bridges/prometheus v0.57.0 h1:UW0+QyeyBVhn+COBec3nGhfnFe5lwB0ic1JBVjzhk0w= -go.opentelemetry.io/contrib/bridges/prometheus v0.57.0/go.mod h1:ppciCHRLsyCio54qbzQv0E4Jyth/fLWDTJYfvWpcSVk= -go.opentelemetry.io/contrib/exporters/autoexport v0.57.0 h1:jmTVJ86dP60C01K3slFQa2NQ/Aoi7zA+wy7vMOKD9H4= -go.opentelemetry.io/contrib/exporters/autoexport v0.57.0/go.mod h1:EJBheUMttD/lABFyLXhce47Wr6DPWYReCzaZiXadH7g= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.58.0 h1:yd02MEjBdJkG3uabWP9apV+OuWRIXGDuJEUJbOHmCFU= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.58.0/go.mod h1:umTcuxiv1n/s/S6/c2AT/g2CQ7u5C59sHDNmfSwgz7Q= -go.opentelemetry.io/otel v1.33.0 h1:/FerN9bax5LoK51X/sI0SVYrjSE0/yUL7DpxW4K3FWw= -go.opentelemetry.io/otel v1.33.0/go.mod h1:SUUkR6csvUQl+yjReHu5uM3EtVV7MBm5FHKRlNx4I8I= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.8.0 h1:WzNab7hOOLzdDF/EoWCt4glhrbMPVMOO5JYTmpz36Ls= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.8.0/go.mod h1:hKvJwTzJdp90Vh7p6q/9PAOd55dI6WA6sWj62a/JvSs= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.8.0 h1:S+LdBGiQXtJdowoJoQPEtI52syEP/JYBUpjO49EQhV8= -go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.8.0/go.mod h1:5KXybFvPGds3QinJWQT7pmXf+TN5YIa7CNYObWRkj50= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0 h1:j7ZSD+5yn+lo3sGV69nW04rRR0jhYnBwjuX3r0HvnK0= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.32.0/go.mod h1:WXbYJTUaZXAbYd8lbgGuvih0yuCfOFC5RJoYnoLcGz8= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.32.0 h1:t/Qur3vKSkUCcDVaSumWF2PKHt85pc7fRvFuoVT8qFU= -go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.32.0/go.mod h1:Rl61tySSdcOJWoEgYZVtmnKdA0GeKrSqkHC1t+91CH8= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.33.0 h1:Vh5HayB/0HHfOQA7Ctx69E/Y/DcQSMPpKANYVMQ7fBA= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.33.0/go.mod h1:cpgtDBaqD/6ok/UG0jT15/uKjAY8mRA53diogHBg3UI= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.33.0 h1:5pojmb1U1AogINhN3SurB+zm/nIcusopeBNp42f45QM= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.33.0/go.mod h1:57gTHJSE5S1tqg+EKsLPlTWhpHMsWlVmer+LA926XiA= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.32.0 h1:cMyu9O88joYEaI47CnQkxO1XZdpoTF9fEnW2duIddhw= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.32.0/go.mod h1:6Am3rn7P9TVVeXYG+wtcGE7IE1tsQ+bP3AuWcKt/gOI= -go.opentelemetry.io/otel/exporters/prometheus v0.54.0 h1:rFwzp68QMgtzu9PgP3jm9XaMICI6TsofWWPcBDKwlsU= -go.opentelemetry.io/otel/exporters/prometheus v0.54.0/go.mod h1:QyjcV9qDP6VeK5qPyKETvNjmaaEc7+gqjh4SS0ZYzDU= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.8.0 h1:CHXNXwfKWfzS65yrlB2PVds1IBZcdsX8Vepy9of0iRU= -go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.8.0/go.mod h1:zKU4zUgKiaRxrdovSS2amdM5gOc59slmo/zJwGX+YBg= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.32.0 h1:SZmDnHcgp3zwlPBS2JX2urGYe/jBKEIT6ZedHRUyCz8= -go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.32.0/go.mod h1:fdWW0HtZJ7+jNpTKUR0GpMEDP69nR8YBJQxNiVCE3jk= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.32.0 h1:cC2yDI3IQd0Udsux7Qmq8ToKAx1XCilTQECZ0KDZyTw= -go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.32.0/go.mod h1:2PD5Ex6z8CFzDbTdOlwyNIUywRr1DN0ospafJM1wJ+s= -go.opentelemetry.io/otel/log v0.8.0 h1:egZ8vV5atrUWUbnSsHn6vB8R21G2wrKqNiDt3iWertk= -go.opentelemetry.io/otel/log v0.8.0/go.mod h1:M9qvDdUTRCopJcGRKg57+JSQ9LgLBrwwfC32epk5NX8= -go.opentelemetry.io/otel/metric v1.33.0 h1:r+JOocAyeRVXD8lZpjdQjzMadVZp2M4WmQ+5WtEnklQ= -go.opentelemetry.io/otel/metric v1.33.0/go.mod h1:L9+Fyctbp6HFTddIxClbQkjtubW6O9QS3Ann/M82u6M= -go.opentelemetry.io/otel/sdk v1.33.0 h1:iax7M131HuAm9QkZotNHEfstof92xM+N8sr3uHXc2IM= -go.opentelemetry.io/otel/sdk v1.33.0/go.mod h1:A1Q5oi7/9XaMlIWzPSxLRWOI8nG3FnzHJNbiENQuihM= -go.opentelemetry.io/otel/sdk/log v0.8.0 h1:zg7GUYXqxk1jnGF/dTdLPrK06xJdrXgqgFLnI4Crxvs= -go.opentelemetry.io/otel/sdk/log v0.8.0/go.mod h1:50iXr0UVwQrYS45KbruFrEt4LvAdCaWWgIrsN3ZQggo= -go.opentelemetry.io/otel/sdk/metric v1.32.0 h1:rZvFnvmvawYb0alrYkjraqJq0Z4ZUJAiyYCU9snn1CU= -go.opentelemetry.io/otel/sdk/metric v1.32.0/go.mod h1:PWeZlq0zt9YkYAp3gjKZ0eicRYvOh1Gd+X99x6GHpCQ= -go.opentelemetry.io/otel/trace v1.33.0 h1:cCJuF7LRjUFso9LPnEAHJDB2pqzp+hbO8eu1qqW2d/s= -go.opentelemetry.io/otel/trace v1.33.0/go.mod h1:uIcdVUZMpTAmz0tI1z04GoVSezK37CbGV4fr1f2nBck= -go.opentelemetry.io/proto/otlp v1.4.0 h1:TA9WRvW6zMwP+Ssb6fLoUIuirti1gGbP28GcKG1jgeg= -go.opentelemetry.io/proto/otlp v1.4.0/go.mod h1:PPBWZIP98o2ElSqI35IHfu7hIhSwvc5N38Jw8pXuGFY= +github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= +github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43 h1:+lm10QQTNSBd8DVTNGHx7o/IKu9HYDvLMffDhbyLccI= +github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs= +github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50 h1:hlE8//ciYMztlGpl/VA+Zm1AcTPHYkHJPbHqE6WJUXE= +github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA= +github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f h1:ERexzlUfuTvpE74urLSbIQW0Z/6hF9t8U4NsJLaioAY= +github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= +go.etcd.io/etcd/api/v3 v3.5.15 h1:3KpLJir1ZEBrYuV2v+Twaa/e2MdDCEZ/70H+lzEiwsk= +go.etcd.io/etcd/api/v3 v3.5.15/go.mod h1:N9EhGzXq58WuMllgH9ZvnEr7SI9pS0k0+DHZezGp7jM= +go.etcd.io/etcd/client/pkg/v3 v3.5.15 h1:fo0HpWz/KlHGMCC+YejpiCmyWDEuIpnTDzpJLB5fWlA= +go.etcd.io/etcd/client/pkg/v3 v3.5.15/go.mod h1:mXDI4NAOwEiszrHCb0aqfAYNCrZP4e9hRca3d1YK8EU= +go.etcd.io/etcd/client/v3 v3.5.15 h1:23M0eY4Fd/inNv1ZfU3AxrbbOdW79r9V9Rl62Nm6ip4= +go.etcd.io/etcd/client/v3 v3.5.15/go.mod h1:CLSJxrYjvLtHsrPKsy7LmZEE+DK2ktfd2bN4RhBMwlU= +go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= +go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 h1:4K4tsIXefpVJtvA/8srF4V4y0akAoPHkIslgAkjixJA= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0/go.mod h1:jjdQuTGVsXV4vSs+CJ2qYDeDPf9yIJV23qlIzBm73Vg= +go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= +go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0 h1:3Q/xZUyC1BBkualc9ROb4G8qkH90LXEIICcs5zv1OYY= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.28.0/go.mod h1:s75jGIWA9OfCMzF0xr+ZgfrB5FEbbV7UuYo32ahUiFI= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0 h1:qFffATk0X+HD+f1Z8lswGiOQYKHRlzfmdJm0wEaVrFA= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.27.0/go.mod h1:MOiCmryaYtc+V0Ei+Tx9o5S1ZjA7kzLucuVuyzBZloQ= +go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= +go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= +go.opentelemetry.io/otel/sdk v1.28.0 h1:b9d7hIry8yZsgtbmM0DKyPWMMUMlK9NEKuIG4aBqWyE= +go.opentelemetry.io/otel/sdk v1.28.0/go.mod h1:oYj7ClPUA7Iw3m+r7GeEjz0qckQRJK2B8zjcZEfu7Pg= +go.opentelemetry.io/otel/trace v1.28.0 h1:GhQ9cUuQGmNDd5BTCP2dAvv75RdMxEfTmYejp+lkx9g= +go.opentelemetry.io/otel/trace v1.28.0/go.mod h1:jPyXzNPg6da9+38HEwElrQiHlVMTnVfM3/yv2OlIHaI= +go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= +go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= +go.starlark.net v0.0.0-20230525235612-a134d8f9ddca h1:VdD38733bfYv5tUZwEIskMM93VanwNIi5bIKnDrJdEY= +go.starlark.net v0.0.0-20230525235612-a134d8f9ddca/go.mod h1:jxU+3+j+71eXOW14274+SmmuW82qJzl6iZSeqEtTGds= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= @@ -578,41 +574,66 @@ go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= golang.org/x/arch v0.0.0-20200826200359-b19915210f00/go.mod h1:flIaEI6LNU6xOCD5PaJvn9wGP0agmIOqjrtsKGRguv4= golang.org/x/arch v0.6.0 h1:S0JTfE48HbRj80+4tbvZDYsJ3tGv6BUU3XxyZ7CirAc= golang.org/x/arch v0.6.0/go.mod h1:FEVrYAQjsQXMVJ1nsMoVVXPZg6p2JE2mx8psSWTDQys= +golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.39.0 h1:SHs+kF4LP+f+p14esP5jAoDpHU8Gu/v9lFRK6IT5imM= -golang.org/x/crypto v0.39.0/go.mod h1:L+Xg3Wf6HoL4Bn4238Z6ft6KfEpN0tJGo53AAPC632U= +golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= +golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= +golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= +golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8= golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY= +golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= +golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.25.0 h1:n7a+ZbQKQA/Ysbyb0/6IbB1H/X41mKgbhfv7AfG/44w= -golang.org/x/mod v0.25.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww= +golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= +golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY= -golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds= -golang.org/x/oauth2 v0.28.0 h1:CrgCKl8PPAVtLnU3c+EDw6x11699EWlsDeWNWKdIOkc= -golang.org/x/oauth2 v0.28.0/go.mod h1:onh5ek6nERTohokkhCD/y2cV4Do3fxFHFuAejCkRWT8= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= +golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= +golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= +golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= +golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= +golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.15.0 h1:KWH3jNZsfyT6xfAfKiz6MRNmd46ByHDYaZ7KSkCtdW8= -golang.org/x/sync v0.15.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= +golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -623,47 +644,77 @@ golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw= -golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= +golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg= +golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.32.0 h1:DR4lr0TjUs3epypdhTOkMmuF5CDFJ/8pOnbzMZPQ7bg= -golang.org/x/term v0.32.0/go.mod h1:uZG1FhGx848Sqfsq4/DlJr3xGGsYMu/L5GW4abiaEPQ= +golang.org/x/term v0.0.0-20220526004731-065cf7ba2467/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= +golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU= +golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.26.0 h1:P42AVeLghgTYr4+xUnTRKDMqpar+PtX7KWuNQL21L8M= -golang.org/x/text v0.26.0/go.mod h1:QK15LZJUUQVJxhz7wXgxSy/CJaTFjd0G+YLonydOVQA= -golang.org/x/time v0.9.0 h1:EsRrnYcQiGH+5FfbgvV4AP7qEZstoyrHB0DzarOQ4ZY= -golang.org/x/time v0.9.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= +golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= +golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= +golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= +golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= +golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20201211185031-d93e913c1a58/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.33.0 h1:4qz2S3zmRxbGIhDIAgjxvFutSvH5EfnsYrRBj0UI0bc= -golang.org/x/tools v0.33.0/go.mod h1:CIJMaWEY88juyUfo7UbgPqbC8rU2OqfAV1h2Qp0oMYI= +golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= +golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw= gomodules.xyz/jsonpatch/v2 v2.4.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY= -google.golang.org/genproto/googleapis/api v0.0.0-20241209162323-e6fa225c2576 h1:CkkIfIt50+lT6NHAVoRYEyAvQGFM7xEwXUUywFvEb3Q= -google.golang.org/genproto/googleapis/api v0.0.0-20241209162323-e6fa225c2576/go.mod h1:1R3kvZ1dtP3+4p4d3G8uJ8rFk/fWlScl38vanWACI08= -google.golang.org/genproto/googleapis/rpc v0.0.0-20241209162323-e6fa225c2576 h1:8ZmaLZE4XWrtU3MyClkYqqtl6Oegr3235h7jxsDyqCY= -google.golang.org/genproto/googleapis/rpc v0.0.0-20241209162323-e6fa225c2576/go.mod h1:5uTbfoYQed2U9p3KIj2/Zzm02PYhndfdmML0qC3q3FU= -google.golang.org/grpc v1.68.1 h1:oI5oTa11+ng8r8XMMN7jAOmWfPZWbYpCFaMUTACxkM0= -google.golang.org/grpc v1.68.1/go.mod h1:+q1XYFJjShcqn0QZHvCyeR4CXPA+llXIeUIfIe00waw= +google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= +google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 h1:+rdxYoE3E5htTEWIe15GlN6IfvbURM//Jt0mmkmm6ZU= +google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117/go.mod h1:OimBR/bc1wPO9iV4NC2bpyjy3VnAwZh5EBPQdtaE5oo= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 h1:BwIjyKYGsK9dMCBOorzRri8MQwmi7mT9rGHsCEinZkA= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= +google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= +google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.66.2 h1:3QdXkuq3Bkh7w+ywLdLvM56cmGvQHUMZpiCzt6Rqaoo= +google.golang.org/grpc v1.66.2/go.mod h1:s3/l6xSSCURdVfAnL+TqCNMyTDAGN6+lZeVxnZR128Y= +google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= +google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= +google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= +google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= +google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= +google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM= -google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= +gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -678,59 +729,62 @@ gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -helm.sh/helm/v3 v3.18.4 h1:pNhnHM3nAmDrxz6/UC+hfjDY4yeDATQCka2/87hkZXQ= -helm.sh/helm/v3 v3.18.4/go.mod h1:WVnwKARAw01iEdjpEkP7Ii1tT1pTPYfM1HsakFKM3LI= -k8s.io/api v0.33.2 h1:YgwIS5jKfA+BZg//OQhkJNIfie/kmRsO0BmNaVSimvY= -k8s.io/api v0.33.2/go.mod h1:fhrbphQJSM2cXzCWgqU29xLDuks4mu7ti9vveEnpSXs= -k8s.io/apiextensions-apiserver v0.33.2 h1:6gnkIbngnaUflR3XwE1mCefN3YS8yTD631JXQhsU6M8= -k8s.io/apiextensions-apiserver v0.33.2/go.mod h1:IvVanieYsEHJImTKXGP6XCOjTwv2LUMos0YWc9O+QP8= -k8s.io/apimachinery v0.33.2 h1:IHFVhqg59mb8PJWTLi8m1mAoepkUNYmptHsV+Z1m5jY= -k8s.io/apimachinery v0.33.2/go.mod h1:BHW0YOu7n22fFv/JkYOEfkUYNRN0fj0BlvMFWA7b+SM= -k8s.io/apiserver v0.33.2 h1:KGTRbxn2wJagJowo29kKBp4TchpO1DRO3g+dB/KOJN4= -k8s.io/apiserver v0.33.2/go.mod h1:9qday04wEAMLPWWo9AwqCZSiIn3OYSZacDyu/AcoM/M= -k8s.io/cli-runtime v0.33.2 h1:koNYQKSDdq5AExa/RDudXMhhtFasEg48KLS2KSAU74Y= -k8s.io/cli-runtime v0.33.2/go.mod h1:gnhsAWpovqf1Zj5YRRBBU7PFsRc6NkEkwYNQE+mXL88= -k8s.io/client-go v0.33.2 h1:z8CIcc0P581x/J1ZYf4CNzRKxRvQAwoAolYPbtQes+E= -k8s.io/client-go v0.33.2/go.mod h1:9mCgT4wROvL948w6f6ArJNb7yQd7QsvqavDeZHvNmHo= -k8s.io/component-base v0.33.2 h1:sCCsn9s/dG3ZrQTX/Us0/Sx2R0G5kwa0wbZFYoVp/+0= -k8s.io/component-base v0.33.2/go.mod h1:/41uw9wKzuelhN+u+/C59ixxf4tYQKW7p32ddkYNe2k= +gotest.tools/v3 v3.4.0 h1:ZazjZUfuVeZGLAmlKKuyv3IKP5orXcwtOwDQH6YVr6o= +gotest.tools/v3 v3.4.0/go.mod h1:CtbdzLSsqVhDgMtKsx03ird5YTGB3ar27v0u/yKBW5g= +helm.sh/helm/v3 v3.15.4 h1:UFHd6oZ1IN3FsUZ7XNhOQDyQ2QYknBNWRHH57e9cbHY= +helm.sh/helm/v3 v3.15.4/go.mod h1:phOwlxqGSgppCY/ysWBNRhG3MtnpsttOzxaTK+Mt40E= +honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +k8s.io/api v0.31.1 h1:Xe1hX/fPW3PXYYv8BlozYqw63ytA92snr96zMW9gWTU= +k8s.io/api v0.31.1/go.mod h1:sbN1g6eY6XVLeqNsZGLnI5FwVseTrZX7Fv3O26rhAaI= +k8s.io/apiextensions-apiserver v0.31.1 h1:L+hwULvXx+nvTYX/MKM3kKMZyei+UiSXQWciX/N6E40= +k8s.io/apiextensions-apiserver v0.31.1/go.mod h1:tWMPR3sgW+jsl2xm9v7lAyRF1rYEK71i9G5dRtkknoQ= +k8s.io/apimachinery v0.31.1 h1:mhcUBbj7KUjaVhyXILglcVjuS4nYXiwC+KKFBgIVy7U= +k8s.io/apimachinery v0.31.1/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo= +k8s.io/apiserver v0.31.1 h1:Sars5ejQDCRBY5f7R3QFHdqN3s61nhkpaX8/k1iEw1c= +k8s.io/apiserver v0.31.1/go.mod h1:lzDhpeToamVZJmmFlaLwdYZwd7zB+WYRYIboqA1kGxM= +k8s.io/cli-runtime v0.30.3 h1:aG69oRzJuP2Q4o8dm+f5WJIX4ZBEwrvdID0+MXyUY6k= +k8s.io/cli-runtime v0.30.3/go.mod h1:hwrrRdd9P84CXSKzhHxrOivAR9BRnkMt0OeP5mj7X30= +k8s.io/client-go v0.31.1 h1:f0ugtWSbWpxHR7sjVpQwuvw9a3ZKLXX0u0itkFXufb0= +k8s.io/client-go v0.31.1/go.mod h1:sKI8871MJN2OyeqRlmA4W4KM9KBdBUpDLu/43eGemCg= +k8s.io/component-base v0.31.1 h1:UpOepcrX3rQ3ab5NB6g5iP0tvsgJWzxTyAo20sgYSy8= +k8s.io/component-base v0.31.1/go.mod h1:WGeaw7t/kTsqpVTaCoVEtillbqAhF2/JgvO0LDOMa0w= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff h1:/usPimJzUKKu+m+TE36gUyGcf03XZEP0ZIKgKj35LS4= -k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff/go.mod h1:5jIi+8yX4RIb8wk3XwBo5Pq2ccx4FP10ohkbSKCZoK8= -k8s.io/kubectl v0.33.2 h1:7XKZ6DYCklu5MZQzJe+CkCjoGZwD1wWl7t/FxzhMz7Y= -k8s.io/kubectl v0.33.2/go.mod h1:8rC67FB8tVTYraovAGNi/idWIK90z2CHFNMmGJZJ3KI= -k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 h1:M3sRQVHv7vB20Xc2ybTt7ODCeFj6JSWYFzOFnYeS6Ro= -k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f h1:0LQagt0gDpKqvIkAMPaRGcXawNMouPECM1+F9BVxEaM= +k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f/go.mod h1:S9tOR0FxgyusSNR+MboCuiDpVWkAifZvaYI1Q2ubgro= +k8s.io/kubectl v0.30.3 h1:YIBBvMdTW0xcDpmrOBzcpUVsn+zOgjMYIu7kAq+yqiI= +k8s.io/kubectl v0.30.3/go.mod h1:IcR0I9RN2+zzTRUa1BzZCm4oM0NLOawE6RzlDvd1Fpo= +k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A= +k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= moul.io/http2curl/v2 v2.3.0 h1:9r3JfDzWPcbIklMOs2TnIFzDYvfAZvjeavG6EzP7jYs= moul.io/http2curl/v2 v2.3.0/go.mod h1:RW4hyBjTWSYDOxapodpNEtX0g5Eb16sxklBqmd2RHcE= -oras.land/oras-go/v2 v2.6.0 h1:X4ELRsiGkrbeox69+9tzTu492FMUu7zJQW6eJU+I2oc= -oras.land/oras-go/v2 v2.6.0/go.mod h1:magiQDfG6H1O9APp+rOsvCPcW1GD2MM7vgnKY0Y+u1o= +oras.land/oras-go v1.2.5 h1:XpYuAwAb0DfQsunIyMfeET92emK8km3W4yEzZvUbsTo= +oras.land/oras-go v1.2.5/go.mod h1:PuAwRShRZCsZb7g8Ar3jKKQR/2A/qN+pkYxIOd/FAoo= rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= -sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2 h1:jpcvIRr3GLoUoEKRkHKSmGjxb6lWwrBlJsXc+eUYQHM= -sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2/go.mod h1:Ve9uj1L+deCXFrPOk1LpFXqTg7LCFzFso6PA48q/XZw= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 h1:2770sDpzrjjsAtVhSeUFseziht227YAWYHLGNM8QPwY= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3/go.mod h1:Ve9uj1L+deCXFrPOk1LpFXqTg7LCFzFso6PA48q/XZw= sigs.k8s.io/controller-runtime v0.19.0 h1:nWVM7aq+Il2ABxwiCizrVDSlmDcshi9llbaFbC0ji/Q= sigs.k8s.io/controller-runtime v0.19.0/go.mod h1:iRmWllt8IlaLjvTTDLhRBXIEtkCK6hwVBJJsYS9Ajf4= sigs.k8s.io/gateway-api v1.2.0 h1:LrToiFwtqKTKZcZtoQPTuo3FxhrrhTgzQG0Te+YGSo8= sigs.k8s.io/gateway-api v1.2.0/go.mod h1:EpNfEXNjiYfUJypf0eZ0P5iXA9ekSGWaS1WgPaM42X0= -sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 h1:/Rv+M11QRah1itp8VhT6HoVx1Ray9eB4DBr+K+/sCJ8= -sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3/go.mod h1:18nIHnGi6636UCz6m8i4DhaJ65T6EruyzmoQqI2BVDo= -sigs.k8s.io/kustomize/api v0.19.0 h1:F+2HB2mU1MSiR9Hp1NEgoU2q9ItNOaBJl0I4Dlus5SQ= -sigs.k8s.io/kustomize/api v0.19.0/go.mod h1:/BbwnivGVcBh1r+8m3tH1VNxJmHSk1PzP5fkP6lbL1o= -sigs.k8s.io/kustomize/kyaml v0.19.0 h1:RFge5qsO1uHhwJsu3ipV7RNolC7Uozc0jUBC/61XSlA= -sigs.k8s.io/kustomize/kyaml v0.19.0/go.mod h1:FeKD5jEOH+FbZPpqUghBP8mrLjJ3+zD3/rf9NNu1cwY= -sigs.k8s.io/randfill v0.0.0-20250304075658-069ef1bbf016/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY= -sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU= -sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY= -sigs.k8s.io/structured-merge-diff/v4 v4.6.0 h1:IUA9nvMmnKWcj5jl84xn+T5MnlZKThmUW1TdblaLVAc= -sigs.k8s.io/structured-merge-diff/v4 v4.6.0/go.mod h1:dDy58f92j70zLsuZVuUX5Wp9vtxXpaZnkPGWeqDfCps= +sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= +sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= +sigs.k8s.io/kustomize/api v0.17.2 h1:E7/Fjk7V5fboiuijoZHgs4aHuexi5Y2loXlVOAVAG5g= +sigs.k8s.io/kustomize/api v0.17.2/go.mod h1:UWTz9Ct+MvoeQsHcJ5e+vziRRkwimm3HytpZgIYqye0= +sigs.k8s.io/kustomize/kyaml v0.17.1 h1:TnxYQxFXzbmNG6gOINgGWQt09GghzgTP6mIurOgrLCQ= +sigs.k8s.io/kustomize/kyaml v0.17.1/go.mod h1:9V0mCjIEYjlXuCdYsSXvyoy2BTsLESH7TlGV81S282U= +sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= +sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= From b1191ee7b0f29f6929b332f38154101b467cabd3 Mon Sep 17 00:00:00 2001 From: ashing Date: Tue, 22 Jul 2025 00:44:59 +0800 Subject: [PATCH 5/5] fix: r Signed-off-by: ashing --- Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Makefile b/Makefile index 5554b157f..18ed521fc 100644 --- a/Makefile +++ b/Makefile @@ -44,6 +44,8 @@ CRD_DOCS_CONFIG ?= docs/assets/crd/config.yaml CRD_DOCS_OUTPUT ?= docs/en/latest/api-reference.md CRD_DOCS_TEMPLATE ?= docs/assets/template +export KUBECONFIG = /tmp/$(KIND_NAME).kubeconfig + # go VERSYM="github.com/apache/apisix-ingress-controller/internal/version._buildVersion" GITSHASYM="github.com/apache/apisix-ingress-controller/internal/version._buildGitRevision"

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 W_Uxm3&jrBWUZdZ4CG9+N@qYjuC0Sem diff --git a/docs/assets/images/gateway-api-extensions-resources.png b/docs/assets/images/gateway-api-extensions-resources.png new file mode 100644 index 0000000000000000000000000000000000000000..cc618ff2cc49458bfdbacd157bdafb137aa009f7 GIT binary patch literal 211182 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