Skip to content

Commit 39b737e

Browse files
committed
Add functional tests
1 parent d22c227 commit 39b737e

23 files changed

+2634
-147
lines changed

Makefile

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,8 +119,8 @@ golangci-lint:
119119
$(LOCALBIN)/golangci-lint run --fix --timeout=5m
120120

121121
.PHONY: test
122-
test: manifests generate fmt vet envtest ## Run tests.
123-
KUBEBUILDER_ASSETS="$(shell $(ENVTEST) use $(ENVTEST_K8S_VERSION) -p path)" go test ./... ./api/... -coverprofile cover.out
122+
test: manifests generate fmt vet envtest ginkgo ## Run tests.
123+
KUBEBUILDER_ASSETS="$(shell $(ENVTEST) -v debug --bin-dir $(LOCALBIN) use $(ENVTEST_K8S_VERSION) -p path)" OPERATOR_TEMPLATES="$(shell pwd)/templates" $(GINKGO) --trace --cover --coverpkg=../../pkg/,../../controllers,../../api/v1beta1 --coverprofile cover.out --covermode=atomic --randomize-all ${PROC_CMD} $(GINKGO_ARGS) ./tests/...
124124

125125
##@ Build
126126

@@ -180,6 +180,7 @@ KUSTOMIZE ?= $(LOCALBIN)/kustomize
180180
CONTROLLER_GEN ?= $(LOCALBIN)/controller-gen
181181
ENVTEST ?= $(LOCALBIN)/setup-envtest
182182
OPERATOR_SDK ?= $(LOCALBIN)/operator-sdk
183+
GINKGO ?= $(LOCALBIN)/ginkgo
183184

184185
## Tool Versions
185186
KUSTOMIZE_VERSION ?= v3.8.7
@@ -208,6 +209,11 @@ operator-sdk: $(OPERATOR_SDK) ## Download operator-sdk locally if necessary.
208209
$(OPERATOR_SDK): $(LOCALBIN)
209210
test -s $(OPERATOR_SDK) || curl -o $(LOCALBIN)/operator-sdk -L https://github.com/operator-framework/operator-sdk/releases/download/$(OPERATOR_SDK_VERSION)/operator-sdk_linux_amd64 && chmod +x $(LOCALBIN)/operator-sdk
210211

212+
.PHONY: ginkgo
213+
ginkgo: $(GINKGO) ## Download ginkgo locally if necessary.
214+
$(GINKGO): $(LOCALBIN)
215+
test -s $(LOCALBIN)/ginkgo || GOBIN=$(LOCALBIN) go install github.com/onsi/ginkgo/v2/ginkgo
216+
211217
.PHONY: bundle
212218
bundle: operator-sdk manifests kustomize ## Generate bundle manifests and metadata, then validate generated files.
213219
$(OPERATOR_SDK) generate kustomize manifests -q

api/v1beta1/conditions.go

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@ import (
2121

2222
// Designate Condition Types used by API objects.
2323
const (
24-
// DesignateRabbitMqTransportURLReadyCondition Status=True condition which indicates if the RabbitMQ TransportURLUrl is ready
25-
DesignateRabbitMqTransportURLReadyCondition condition.Type = "DesignateRabbitMqTransportURLReady"
26-
2724
// DesignateAPIReadyCondition Status=True condition which indicates if the DesignateAPI is configured and operational
2825
DesignateAPIReadyCondition condition.Type = "DesignateAPIReady"
2926

@@ -51,21 +48,6 @@ const ()
5148

5249
// Common Messages used by API objects.
5350
const (
54-
//
55-
// DesignateRabbitMqTransportURLReady condition messages
56-
//
57-
// DesignateRabbitMqTransportURLReadyInitMessage
58-
DesignateRabbitMqTransportURLReadyInitMessage = "DesignateRabbitMqTransportURL not started"
59-
60-
// DesignateRabbitMqTransportURLReadyRunningMessage
61-
DesignateRabbitMqTransportURLReadyRunningMessage = "DesignateRabbitMqTransportURL creation in progress"
62-
63-
// DesignateRabbitMqTransportURLReadyMessage
64-
DesignateRabbitMqTransportURLReadyMessage = "DesignateRabbitMqTransportURL successfully created"
65-
66-
// DesignateRabbitMqTransportURLReadyErrorMessage
67-
DesignateRabbitMqTransportURLReadyErrorMessage = "DesignateRabbitMqTransportURL error occured %s"
68-
6951
//
7052
// DesignateAPIReady condition messages
7153
//

controllers/designate_controller.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ func (r *DesignateReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
193193
condition.UnknownCondition(condition.ReadyCondition, condition.InitReason, condition.ReadyInitMessage),
194194
condition.UnknownCondition(condition.DBReadyCondition, condition.InitReason, condition.DBReadyInitMessage),
195195
condition.UnknownCondition(condition.DBSyncReadyCondition, condition.InitReason, condition.DBSyncReadyInitMessage),
196-
condition.UnknownCondition(designatev1beta1.DesignateRabbitMqTransportURLReadyCondition, condition.InitReason, designatev1beta1.DesignateRabbitMqTransportURLReadyInitMessage),
196+
condition.UnknownCondition(condition.RabbitMqTransportURLReadyCondition, condition.InitReason, condition.RabbitMqTransportURLReadyInitMessage),
197197
condition.UnknownCondition(condition.InputReadyCondition, condition.InitReason, condition.InputReadyInitMessage),
198198
condition.UnknownCondition(condition.ServiceConfigReadyCondition, condition.InitReason, condition.ServiceConfigReadyInitMessage),
199199
condition.UnknownCondition(designatev1beta1.DesignateAPIReadyCondition, condition.InitReason, designatev1beta1.DesignateAPIReadyInitMessage),
@@ -567,10 +567,10 @@ func (r *DesignateReconciler) reconcileNormal(ctx context.Context, instance *des
567567
transportURL, op, err := r.transportURLCreateOrUpdate(ctx, instance)
568568
if err != nil {
569569
instance.Status.Conditions.Set(condition.FalseCondition(
570-
designatev1beta1.DesignateRabbitMqTransportURLReadyCondition,
570+
condition.RabbitMqTransportURLReadyCondition,
571571
condition.ErrorReason,
572572
condition.SeverityWarning,
573-
designatev1beta1.DesignateRabbitMqTransportURLReadyErrorMessage,
573+
condition.RabbitMqTransportURLReadyErrorMessage,
574574
err.Error()))
575575
return ctrl.Result{}, err
576576
}
@@ -592,8 +592,8 @@ func (r *DesignateReconciler) reconcileNormal(ctx context.Context, instance *des
592592
}
593593

594594
instance.Status.Conditions.MarkTrue(
595-
designatev1beta1.DesignateRabbitMqTransportURLReadyCondition,
596-
designatev1beta1.DesignateRabbitMqTransportURLReadyMessage)
595+
condition.RabbitMqTransportURLReadyCondition,
596+
condition.RabbitMqTransportURLReadyMessage)
597597

598598
// end transportURL
599599
hostIPs, err := getRedisServiceIPs(ctx, instance, helper)

controllers/designateapi_controller.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -656,8 +656,6 @@ func (r *DesignateAPIReconciler) reconcileNormal(ctx context.Context, instance *
656656
return ctrlResult, err
657657
}
658658

659-
instance.Status.Conditions.MarkTrue(condition.InputReadyCondition, condition.InputReadyMessage)
660-
661659
// run check OpenStack secret - end
662660

663661
//
@@ -758,7 +756,6 @@ func (r *DesignateAPIReconciler) reconcileNormal(ctx context.Context, instance *
758756
return ctrlResult, err
759757
}
760758

761-
instance.Status.Conditions.MarkTrue(condition.InputReadyCondition, condition.InputReadyMessage)
762759
// run check parent Designate CR config maps - end
763760

764761
//
@@ -808,6 +805,8 @@ func (r *DesignateAPIReconciler) reconcileNormal(ctx context.Context, instance *
808805

809806
// Create ConfigMaps and Secrets - end
810807

808+
instance.Status.Conditions.MarkTrue(condition.InputReadyCondition, condition.InputReadyMessage)
809+
811810
//
812811
// TODO check when/if Init, Update, or Upgrade should/could be skipped
813812
//

controllers/designatecentral_controller.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -429,7 +429,6 @@ func (r *DesignateCentralReconciler) reconcileNormal(ctx context.Context, instan
429429
return ctrlResult, err
430430
}
431431

432-
instance.Status.Conditions.MarkTrue(condition.InputReadyCondition, condition.InputReadyMessage)
433432
// run check parent Designate CR config maps - end
434433

435434
//
@@ -517,6 +516,7 @@ func (r *DesignateCentralReconciler) reconcileNormal(ctx context.Context, instan
517516

518517
// Create ConfigMaps and Secrets - end
519518

519+
instance.Status.Conditions.MarkTrue(condition.InputReadyCondition, condition.InputReadyMessage)
520520
//
521521
// TODO check when/if Init, Update, or Upgrade should/could be skipped
522522
//

controllers/designatemdns_controller.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -419,7 +419,6 @@ func (r *DesignateMdnsReconciler) reconcileNormal(ctx context.Context, instance
419419
return ctrlResult, err
420420
}
421421

422-
instance.Status.Conditions.MarkTrue(condition.InputReadyCondition, condition.InputReadyMessage)
423422
// run check parent Designate CR config maps - end
424423

425424
//
@@ -507,6 +506,7 @@ func (r *DesignateMdnsReconciler) reconcileNormal(ctx context.Context, instance
507506

508507
// Create ConfigMaps and Secrets - end
509508

509+
instance.Status.Conditions.MarkTrue(condition.InputReadyCondition, condition.InputReadyMessage)
510510
//
511511
// TODO check when/if Init, Update, or Upgrade should/could be skipped
512512
//

controllers/designateproducer_controller.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,6 @@ func (r *DesignateProducerReconciler) reconcileNormal(ctx context.Context, insta
428428
return ctrlResult, err
429429
}
430430

431-
instance.Status.Conditions.MarkTrue(condition.InputReadyCondition, condition.InputReadyMessage)
432431
// run check parent Designate CR config maps - end
433432

434433
//
@@ -516,6 +515,7 @@ func (r *DesignateProducerReconciler) reconcileNormal(ctx context.Context, insta
516515

517516
// Create ConfigMaps and Secrets - end
518517

518+
instance.Status.Conditions.MarkTrue(condition.InputReadyCondition, condition.InputReadyMessage)
519519
//
520520
// TODO check when/if Init, Update, or Upgrade should/could be skipped
521521
//

demo/examples/ns_records_CR_example.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ metadata:
55
name: designate-ns-records-params
66
data:
77
ns_records: |
8-
- host: host1
8+
- host: ns1.example.com.
99
priority: 1
10-
- host: host2
10+
- host: ns2.example.com.
1111
priority: 2

go.mod

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,17 @@ go 1.21
44

55
require (
66
github.com/go-logr/logr v1.4.2
7+
github.com/go-playground/validator/v10 v10.23.0
8+
github.com/google/uuid v1.6.0
9+
github.com/gophercloud/gophercloud v1.14.1
710
github.com/k8snetworkplumbingwg/network-attachment-definition-client v1.7.5
811
github.com/onsi/ginkgo/v2 v2.20.1
912
github.com/onsi/gomega v1.34.1
1013
github.com/openstack-k8s-operators/designate-operator/api v0.1.1-0.20240807132522-6c2eca7c6bbb
1114
github.com/openstack-k8s-operators/infra-operator/apis v0.5.1-0.20241213080025-18e54a028c8b
1215
github.com/openstack-k8s-operators/keystone-operator/api v0.5.1-0.20241212135809-dc78e7221d12
1316
github.com/openstack-k8s-operators/lib-common/modules/common v0.5.1-0.20241216113837-d172b3ac0f4e
17+
github.com/openstack-k8s-operators/lib-common/modules/test v0.5.1-0.20241029151503-4878b3fa3333
1418
github.com/openstack-k8s-operators/mariadb-operator/api v0.5.1-0.20241212160155-4e7d8f749820
1519
gopkg.in/yaml.v2 v2.4.0
1620
k8s.io/api v0.29.10
@@ -27,10 +31,13 @@ require (
2731
github.com/emicklei/go-restful/v3 v3.12.0 // indirect
2832
github.com/evanphx/json-patch/v5 v5.9.0 // indirect
2933
github.com/fsnotify/fsnotify v1.7.0 // indirect
34+
github.com/gabriel-vasile/mimetype v1.4.3 // indirect
3035
github.com/go-logr/zapr v1.3.0 // indirect
3136
github.com/go-openapi/jsonpointer v0.21.0 // indirect
3237
github.com/go-openapi/jsonreference v0.21.0 // indirect
3338
github.com/go-openapi/swag v0.23.0 // indirect
39+
github.com/go-playground/locales v0.14.1 // indirect
40+
github.com/go-playground/universal-translator v0.18.1 // indirect
3441
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
3542
github.com/gogo/protobuf v1.3.2 // indirect
3643
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
@@ -39,11 +46,10 @@ require (
3946
github.com/google/go-cmp v0.6.0 // indirect
4047
github.com/google/gofuzz v1.2.0 // indirect
4148
github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 // indirect
42-
github.com/google/uuid v1.6.0 // indirect
43-
github.com/gophercloud/gophercloud v1.14.1 // indirect
4449
github.com/imdario/mergo v0.3.16 // indirect
4550
github.com/josharian/intern v1.0.0 // indirect
4651
github.com/json-iterator/go v1.1.12 // indirect
52+
github.com/leodido/go-urn v1.4.0 // indirect
4753
github.com/mailru/easyjson v0.7.7 // indirect
4854
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
4955
github.com/modern-go/reflect2 v1.0.2 // indirect
@@ -59,7 +65,9 @@ require (
5965
github.com/spf13/pflag v1.0.5 // indirect
6066
go.uber.org/multierr v1.11.0 // indirect
6167
go.uber.org/zap v1.27.0 // indirect
68+
golang.org/x/crypto v0.26.0 // indirect
6269
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect
70+
golang.org/x/mod v0.20.0 // indirect
6371
golang.org/x/net v0.28.0 // indirect
6472
golang.org/x/oauth2 v0.18.0 // indirect
6573
golang.org/x/sys v0.23.0 // indirect

go.sum

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ github.com/evanphx/json-patch/v5 v5.9.0 h1:kcBlZQbplgElYIlo/n1hJbls2z/1awpXxpRi0
1414
github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ=
1515
github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA=
1616
github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM=
17+
github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0=
18+
github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk=
1719
github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
1820
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
1921
github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ=
@@ -24,6 +26,14 @@ github.com/go-openapi/jsonreference v0.21.0 h1:Rs+Y7hSXT83Jacb7kFyjn4ijOuVGSvOdF
2426
github.com/go-openapi/jsonreference v0.21.0/go.mod h1:LmZmgsrTkVg9LG4EaHeY8cBDslNPMo06cago5JNLkm4=
2527
github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+GrE=
2628
github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ=
29+
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
30+
github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
31+
github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA=
32+
github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY=
33+
github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY=
34+
github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY=
35+
github.com/go-playground/validator/v10 v10.23.0 h1:/PwmTwZhS0dPkav3cdK9kV1FsAmrL8sThn8IHr/sO+o=
36+
github.com/go-playground/validator/v10 v10.23.0/go.mod h1:dbuPbCMFw/DrkbEynArYaCwl3amGuJotoKCe95atGMM=
2737
github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI=
2838
github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8=
2939
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
@@ -63,6 +73,8 @@ github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
6373
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
6474
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
6575
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
76+
github.com/leodido/go-urn v1.4.0 h1:WT9HwE9SGECu3lg4d/dIA+jxlljEa1/ffXKmRjqdmIQ=
77+
github.com/leodido/go-urn v1.4.0/go.mod h1:bvxc+MVxLKB4z00jd1z+Dvzr47oO32F/QSNjSBOlFxI=
6678
github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0=
6779
github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc=
6880
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
@@ -88,6 +100,8 @@ github.com/openstack-k8s-operators/lib-common/modules/openstack v0.5.1-0.2024121
88100
github.com/openstack-k8s-operators/lib-common/modules/openstack v0.5.1-0.20241216113837-d172b3ac0f4e/go.mod h1:IASoGvp5QM/tBJUd/8i8uIjj4DBnI+64Ydh4r7pmnvA=
89101
github.com/openstack-k8s-operators/lib-common/modules/storage v0.5.1-0.20241216113837-d172b3ac0f4e h1:Qz0JFEoRDUyjEWorNY3LggwxTsmpMtQkcpmZDQulGHQ=
90102
github.com/openstack-k8s-operators/lib-common/modules/storage v0.5.1-0.20241216113837-d172b3ac0f4e/go.mod h1:tfgBeLRqmlH/NQkLPe7396rj+t0whv2wPuMb8Ttvh8w=
103+
github.com/openstack-k8s-operators/lib-common/modules/test v0.5.1-0.20241029151503-4878b3fa3333 h1:zUlxLqucrLMNDp6dc3I7eYWZyGVE7tLrPyWR/n+VD9w=
104+
github.com/openstack-k8s-operators/lib-common/modules/test v0.5.1-0.20241029151503-4878b3fa3333/go.mod h1:LV0jo5etIsGyINpmB37i4oWR8zU6ApIuh7fsqGGA41o=
91105
github.com/openstack-k8s-operators/mariadb-operator/api v0.5.1-0.20241212160155-4e7d8f749820 h1:l5GgpBYprWIXTgGRAFkeJpuq7KjoTg9zioIc826zjZI=
92106
github.com/openstack-k8s-operators/mariadb-operator/api v0.5.1-0.20241212160155-4e7d8f749820/go.mod h1:348EPtAdpE2LxHAH4bHdCMNP7HyX6DevwEsF9DQ0S2k=
93107
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
@@ -124,11 +138,15 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U
124138
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
125139
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
126140
golang.org/x/crypto v0.0.0-20220829220503-c86fa9a7ed90/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
141+
golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw=
142+
golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54=
127143
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8=
128144
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY=
129145
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
130146
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
131147
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
148+
golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0=
149+
golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
132150
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
133151
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
134152
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=

0 commit comments

Comments
 (0)