From fdbcff2ba0badb595a9d4f6d148bff7e1d10f22e Mon Sep 17 00:00:00 2001 From: Vasiliy Tolstov Date: Wed, 16 Aug 2023 10:18:38 +0300 Subject: [PATCH] handler: fix for latest micro Signed-off-by: Vasiliy Tolstov --- go.mod | 9 ++++-- go.sum | 19 +++++++++--- handler/health/health_micro.pb.go | 30 ++----------------- handler/health/health_micro_http.pb.go | 35 ++++++++++++++++++++--- handler/meter/meter.go | 5 ++-- handler/meter/meter_micro.pb.go | 16 ++--------- handler/meter/meter_micro_http.pb.go | 21 +++++++++++--- handler/swagger-ui/swagger-initializer.js | 20 ------------- tools.go | 8 ++++++ 9 files changed, 85 insertions(+), 78 deletions(-) delete mode 100644 handler/swagger-ui/swagger-initializer.js create mode 100644 tools.go diff --git a/go.mod b/go.mod index 2b79a1c..70c7bfc 100644 --- a/go.mod +++ b/go.mod @@ -4,14 +4,19 @@ go 1.19 require ( go.unistack.org/micro-codec-yaml/v4 v4.0.0 - go.unistack.org/micro-proto/v4 v4.0.0 + go.unistack.org/micro-proto/v4 v4.0.1 go.unistack.org/micro/v4 v4.0.6 - golang.org/x/net v0.7.0 + go.unistack.org/protoc-gen-go-micro/v4 v4.0.7 + golang.org/x/net v0.12.0 ) require ( + github.com/fatih/structtag v1.2.0 // indirect github.com/golang/protobuf v1.5.3 // indirect github.com/google/gnostic v0.6.9 // indirect + golang.org/x/mod v0.12.0 // indirect + golang.org/x/sys v0.10.0 // indirect + golang.org/x/tools v0.11.0 // indirect google.golang.org/protobuf v1.31.0 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect diff --git a/go.sum b/go.sum index cce4c46..389bdaf 100644 --- a/go.sum +++ b/go.sum @@ -20,6 +20,8 @@ github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1m github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/fatih/structtag v1.2.0 h1:/OdNE99OxoI/PqaW/SuSK9uxxT3f/tcSZgon/ssNSx4= +github.com/fatih/structtag v1.2.0/go.mod h1:mBJUNpUnHmRKrKlQQlmCrh5PuhftFbNv8Ys4/aAZl94= github.com/flowstack/go-jsonschema v0.1.1/go.mod h1:yL7fNggx1o8rm9RlgXv7hTBWxdBM0rVwpMwimd3F3N0= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= @@ -69,16 +71,20 @@ github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQ go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.unistack.org/micro-codec-yaml/v4 v4.0.0 h1:DK/+fA69gmnvYmGHe3kqVR0pukS8ank5lPG4MfdPQEk= go.unistack.org/micro-codec-yaml/v4 v4.0.0/go.mod h1:UG4ouILbUfgNL7nvp7CpmD2IIzO8bQHjzDIahOvIAgM= -go.unistack.org/micro-proto/v4 v4.0.0 h1:+TAwKSlx48eLsNO2E2cO0JLE8we1KU2AuWe9Q310FuU= -go.unistack.org/micro-proto/v4 v4.0.0/go.mod h1:ArmK7o+uFvxSY3dbJhKBBX4Pm1rhWdLEFf3LxBrMtec= +go.unistack.org/micro-proto/v4 v4.0.1 h1:2RKHgtCOOcAFgKsnngGK5bqM/6MWXOjVCdw03dbuoF8= +go.unistack.org/micro-proto/v4 v4.0.1/go.mod h1:ArmK7o+uFvxSY3dbJhKBBX4Pm1rhWdLEFf3LxBrMtec= go.unistack.org/micro/v4 v4.0.6 h1:YFWvTh3VwyOd6NHYTQcf47n2TF5+p/EhpnbuBQX3qhk= go.unistack.org/micro/v4 v4.0.6/go.mod h1:bVEYTlPi0EsdgZZt311bIroDg9ict7ky3C87dSCCAGk= +go.unistack.org/protoc-gen-go-micro/v4 v4.0.7 h1:c3CeBvjWV9MBrGGPaQCcHZrnuLY9sVJHv7vACI/dvuM= +go.unistack.org/protoc-gen-go-micro/v4 v4.0.7/go.mod h1:9bsKAlESlPXPBSmY/NDLL//smZbhnEMrnWyG+M8zVFA= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= 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.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc= +golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= 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-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -88,14 +94,15 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= -golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.12.0 h1:cfawfvKITfUsFCeJIHJrbSxpeu/E81khclypR0GVT50= +golang.org/x/net v0.12.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= 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.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/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-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -104,6 +111,8 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA= +golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= 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= @@ -114,6 +123,8 @@ golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGm 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-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.11.0 h1:EMCa6U9S2LtZXLAMoWiR/R8dAQFRqbAitmbJ2UKhoi8= +golang.org/x/tools v0.11.0/go.mod h1:anzJrxPjNtfgiYQYirP2CPGzGLxrH2u2QBhn6Bf3qY8= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/handler/health/health_micro.pb.go b/handler/health/health_micro.pb.go index 0a46227..bdd2c9d 100644 --- a/handler/health/health_micro.pb.go +++ b/handler/health/health_micro.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-micro. DO NOT EDIT. // versions: -// - protoc-gen-go-micro v4.0.0 -// - protoc v3.21.12 +// - protoc-gen-go-micro v4.0.2 +// - protoc v4.23.4 // source: health/health.proto package health @@ -9,37 +9,11 @@ package health import ( context "context" codec "go.unistack.org/micro-proto/v4/codec" - v4 "go.unistack.org/micro-server-http/v4" ) var ( HealthServiceName = "HealthService" ) -var ( - HealthServiceServerEndpoints = []v4.EndpointMetadata{ - { - Name: "HealthService.Live", - Path: "/live", - Method: "GET", - Body: "", - Stream: false, - }, - { - Name: "HealthService.Ready", - Path: "/ready", - Method: "GET", - Body: "", - Stream: false, - }, - { - Name: "HealthService.Version", - Path: "/version", - Method: "GET", - Body: "", - Stream: false, - }, - } -) type HealthServiceServer interface { Live(ctx context.Context, req *codec.Frame, rsp *codec.Frame) error diff --git a/handler/health/health_micro_http.pb.go b/handler/health/health_micro_http.pb.go index 52e7555..e7d8431 100644 --- a/handler/health/health_micro_http.pb.go +++ b/handler/health/health_micro_http.pb.go @@ -1,5 +1,5 @@ // Code generated by protoc-gen-go-micro. DO NOT EDIT. -// protoc-gen-go-micro version: v4.0.0 +// protoc-gen-go-micro version: v4.0.2 // source: health/health.proto package health @@ -8,9 +8,36 @@ import ( context "context" codec "go.unistack.org/micro-proto/v4/codec" v4 "go.unistack.org/micro-server-http/v4" + options "go.unistack.org/micro/v4/options" server "go.unistack.org/micro/v4/server" ) +var ( + HealthServiceServerEndpoints = []v4.EndpointMetadata{ + { + Name: "HealthService.Live", + Path: "/live", + Method: "GET", + Body: "", + Stream: false, + }, + { + Name: "HealthService.Ready", + Path: "/ready", + Method: "GET", + Body: "", + Stream: false, + }, + { + Name: "HealthService.Version", + Path: "/version", + Method: "GET", + Body: "", + Stream: false, + }, + } +) + type healthServiceServer struct { HealthServiceServer } @@ -27,7 +54,7 @@ func (h *healthServiceServer) Version(ctx context.Context, req *codec.Frame, rsp return h.HealthServiceServer.Version(ctx, req, rsp) } -func RegisterHealthServiceServer(s server.Server, sh HealthServiceServer, opts ...server.HandlerOption) error { +func RegisterHealthServiceServer(s server.Server, sh HealthServiceServer, opts ...options.Option) error { type healthService interface { Live(ctx context.Context, req *codec.Frame, rsp *codec.Frame) error Ready(ctx context.Context, req *codec.Frame, rsp *codec.Frame) error @@ -37,7 +64,7 @@ func RegisterHealthServiceServer(s server.Server, sh HealthServiceServer, opts . healthService } h := &healthServiceServer{sh} - var nopts []server.HandlerOption + var nopts []options.Option nopts = append(nopts, v4.HandlerEndpoints(HealthServiceServerEndpoints)) - return s.Handle(s.NewHandler(&HealthService{h}, append(nopts, opts...)...)) + return s.Handle(&HealthService{h}, append(nopts, opts...)...) } diff --git a/handler/meter/meter.go b/handler/meter/meter.go index 0cafc63..cd31576 100644 --- a/handler/meter/meter.go +++ b/handler/meter/meter.go @@ -7,6 +7,7 @@ import ( codecpb "go.unistack.org/micro-proto/v4/codec" "go.unistack.org/micro/v4/errors" "go.unistack.org/micro/v4/meter" + options "go.unistack.org/micro/v4/options" ) // guard to fail early @@ -21,7 +22,7 @@ type Option func(*Options) type Options struct { Meter meter.Meter Name string - MeterOptions []meter.Option + MeterOptions []options.Option } func Meter(m meter.Meter) Option { @@ -36,7 +37,7 @@ func Name(name string) Option { } } -func MeterOptions(opts ...meter.Option) Option { +func MeterOptions(opts ...options.Option) Option { return func(o *Options) { o.MeterOptions = append(o.MeterOptions, opts...) } diff --git a/handler/meter/meter_micro.pb.go b/handler/meter/meter_micro.pb.go index 60037b5..20d349b 100644 --- a/handler/meter/meter_micro.pb.go +++ b/handler/meter/meter_micro.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-micro. DO NOT EDIT. // versions: -// - protoc-gen-go-micro v4.0.0 -// - protoc v3.21.12 +// - protoc-gen-go-micro v4.0.2 +// - protoc v4.23.4 // source: meter/meter.proto package meter @@ -9,23 +9,11 @@ package meter import ( context "context" codec "go.unistack.org/micro-proto/v4/codec" - v4 "go.unistack.org/micro-server-http/v4" ) var ( MeterServiceName = "MeterService" ) -var ( - MeterServiceServerEndpoints = []v4.EndpointMetadata{ - { - Name: "MeterService.Metrics", - Path: "/metrics", - Method: "GET", - Body: "", - Stream: false, - }, - } -) type MeterServiceServer interface { Metrics(ctx context.Context, req *codec.Frame, rsp *codec.Frame) error diff --git a/handler/meter/meter_micro_http.pb.go b/handler/meter/meter_micro_http.pb.go index 188a232..a1eb74b 100644 --- a/handler/meter/meter_micro_http.pb.go +++ b/handler/meter/meter_micro_http.pb.go @@ -1,5 +1,5 @@ // Code generated by protoc-gen-go-micro. DO NOT EDIT. -// protoc-gen-go-micro version: v4.0.0 +// protoc-gen-go-micro version: v4.0.2 // source: meter/meter.proto package meter @@ -8,9 +8,22 @@ import ( context "context" codec "go.unistack.org/micro-proto/v4/codec" v4 "go.unistack.org/micro-server-http/v4" + options "go.unistack.org/micro/v4/options" server "go.unistack.org/micro/v4/server" ) +var ( + MeterServiceServerEndpoints = []v4.EndpointMetadata{ + { + Name: "MeterService.Metrics", + Path: "/metrics", + Method: "GET", + Body: "", + Stream: false, + }, + } +) + type meterServiceServer struct { MeterServiceServer } @@ -19,7 +32,7 @@ func (h *meterServiceServer) Metrics(ctx context.Context, req *codec.Frame, rsp return h.MeterServiceServer.Metrics(ctx, req, rsp) } -func RegisterMeterServiceServer(s server.Server, sh MeterServiceServer, opts ...server.HandlerOption) error { +func RegisterMeterServiceServer(s server.Server, sh MeterServiceServer, opts ...options.Option) error { type meterService interface { Metrics(ctx context.Context, req *codec.Frame, rsp *codec.Frame) error } @@ -27,7 +40,7 @@ func RegisterMeterServiceServer(s server.Server, sh MeterServiceServer, opts ... meterService } h := &meterServiceServer{sh} - var nopts []server.HandlerOption + var nopts []options.Option nopts = append(nopts, v4.HandlerEndpoints(MeterServiceServerEndpoints)) - return s.Handle(s.NewHandler(&MeterService{h}, append(nopts, opts...)...)) + return s.Handle(&MeterService{h}, append(nopts, opts...)...) } diff --git a/handler/swagger-ui/swagger-initializer.js b/handler/swagger-ui/swagger-initializer.js deleted file mode 100644 index 780b173..0000000 --- a/handler/swagger-ui/swagger-initializer.js +++ /dev/null @@ -1,20 +0,0 @@ -window.onload = function() { - // - - // the following lines will be replaced by docker/configurator, when it runs in a docker-container - window.ui = SwaggerUIBundle({ - url: "{{ .SWAGGER }}", - dom_id: '#swagger-ui', - deepLinking: true, - presets: [ - SwaggerUIBundle.presets.apis, - SwaggerUIStandalonePreset - ], - plugins: [ - SwaggerUIBundle.plugins.DownloadUrl - ], - layout: "StandaloneLayout" - }); - - // -}; diff --git a/tools.go b/tools.go new file mode 100644 index 0000000..80ebc7c --- /dev/null +++ b/tools.go @@ -0,0 +1,8 @@ +//go:build tools + +package http + +import ( + _ "go.unistack.org/micro-proto/v4" + _ "go.unistack.org/protoc-gen-go-micro/v4" +)