Skip to content

Commit

Permalink
feat(server): run grpc sever on different port
Browse files Browse the repository at this point in the history
  • Loading branch information
ravisuhag committed Jul 1, 2023
1 parent 62c39f6 commit e7b1961
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 6 deletions.
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ require (
github.com/ory/dockertest/v3 v3.9.1
github.com/prometheus/alertmanager v0.23.1-0.20210914172521-e35efbddb66a
github.com/prometheus/prometheus v1.8.2-0.20210215121130-6f488061dfb4
github.com/raystack/salt v0.3.1
github.com/raystack/salt v0.3.2
github.com/slack-go/slack v0.11.0
github.com/spf13/cobra v1.5.0
github.com/stretchr/testify v1.8.1
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -1963,8 +1963,8 @@ github.com/prometheus/statsd_exporter v0.22.8/go.mod h1:/DzwbTEaFTE0Ojz5PqcSk6+P
github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU=
github.com/rafaeljusto/redigomock v0.0.0-20190202135759-257e089e14a1/go.mod h1:JaY6n2sDr+z2WTsXkOmNRUfDy6FN0L6Nk7x06ndm4tY=
github.com/rainycape/unidecode v0.0.0-20150907023854-cb7f23ec59be/go.mod h1:MIDFMn7db1kT65GmV94GzpX9Qdi7N/pQlwb+AN8wh+Q=
github.com/raystack/salt v0.3.1 h1:/sbfQEF2bnbWzldd33It834xis0J2jOuW9t9cIjRVG8=
github.com/raystack/salt v0.3.1/go.mod h1:MZUZG25Si+aU8QkqGt9FZrHA7zm5gQGnzRk5HRq9jaE=
github.com/raystack/salt v0.3.2 h1:0kEuaHefwyL+uTC8r+jVoDW9C3jRTl6/ezZwynlc8oE=
github.com/raystack/salt v0.3.2/go.mod h1:MZUZG25Si+aU8QkqGt9FZrHA7zm5gQGnzRk5HRq9jaE=
github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
github.com/rcrowley/go-metrics v0.0.0-20200313005456-10cdbea86bc0/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
github.com/remyoudompheng/bigfft v0.0.0-20190728182440-6a916e37a237/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
Expand Down
20 changes: 17 additions & 3 deletions internal/server/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,18 @@ import (

const defaultGracePeriod = 5 * time.Second

type GRPCConfig struct {
Port int `mapstructure:"port" default:"8081"`
MaxRecvMsgSize int `mapstructure:"max_recv_msg_size" default:"33554432"`
MaxSendMsgSize int `mapstructure:"max_send_msg_size" default:"33554432"`
}

func (cfg Config) grpcAddr() string { return fmt.Sprintf("%s:%d", cfg.Host, cfg.GRPC.Port) }

Check failure on line 41 in internal/server/server.go

View workflow job for this annotation

GitHub Actions / golangci-lint

func `Config.grpcAddr` is unused (unused)

type Config struct {
Host string `mapstructure:"host" yaml:"host" default:"localhost"`
Port int `mapstructure:"port" yaml:"port" default:"8080"`
GRPC GRPCConfig `mapstructure:"grpc"`
EncryptionKey string `mapstructure:"encryption_key" yaml:"encryption_key" default:"_ENCRYPTIONKEY_OF_32_CHARACTERS_"`
APIHeaders api.HeadersConfig `mapstructure:"api_headers" yaml:"api_headers"`
}
Expand Down Expand Up @@ -143,9 +152,14 @@ func RunServer(

logger.Info("server is running", "host", c.Host, "port", c.Port)

return mux.Serve(runtimeCtx, c.addr(),
mux.WithHTTP(baseMux),
mux.WithGRPC(grpcServer),
return mux.Serve(runtimeCtx,
mux.WithHTTPTarget(fmt.Sprintf(":%d", c.Port), &http.Server{
Handler: baseMux,
ReadTimeout: 120 * time.Second,
WriteTimeout: 120 * time.Second,
MaxHeaderBytes: 1 << 20,
}),
mux.WithGRPCTarget(fmt.Sprintf(":%d", c.GRPC.Port), grpcServer),
mux.WithGracePeriod(defaultGracePeriod),
)
}

0 comments on commit e7b1961

Please sign in to comment.