Commit Graph
100 Commits
Author SHA1 Message Date
adphi 939c060513 service: fix alpn certificate usage
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2024-12-21 14:44:56 +01:00
adphi 174aa3a497 migrate grpc-web to traefik fork
close #12

Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2024-10-17 18:30:48 +02:00
adphi abe69f1c80 remove client pool and add tls client auth support
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2024-10-17 18:09:58 +02:00
adphi 3a3d77169c interceptors: migrate to otel and add logging interceptor
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2024-10-17 17:15:05 +02:00
adphi 9591a64e09 add grpc-proxy (github.com/mwitkow/grpc-proxy)
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2024-10-16 15:04:43 +02:00
adphi ccf44285f9 upgrade dependencies
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2024-10-10 16:07:26 +02:00
adphi fd51ed5961 cli: fix usage format when multiple env vars are set
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2024-07-11 14:10:07 +02:00
adphi 198bd2bd59 certs: reload on both key and cert changes
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-11-24 20:07:15 +01:00
adphi 2380a4386c update deps
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-11-14 16:52:29 +01:00
adphi 5d6b16a2c2 chore: upgrade dependencies
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-10-26 16:58:32 +02:00
adphi 0b4d636ec2 add cobra command utilities and log formatter
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-10-17 15:30:32 +02:00
adphi 8fd170c0a8 deps: update all
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-09-16 16:29:22 +02:00
adphi 37b09f9f54 add proxy protocol support
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-09-16 16:24:55 +02:00
adphi c0c19683cf add h2c/http2 support with WithoutCmux option
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-09-16 16:21:51 +02:00
adphi f455c9994c service: add Serve method
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-08-25 17:15:52 +02:00
adphi 97f48d30c0 certs: add Load function to watch for key and certificate changes
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-08-15 18:16:29 +01:00
adphi b52ae2c670 logger.WithReportCaller: fix enabled by default
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-08-11 19:34:42 +02:00
adphi 724d6103c6 logger.WithReportCaller: allow custom depth
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-08-11 19:02:22 +02:00
adphi ef3af1e4d9 logger: add missing Clone interface method
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-08-04 22:50:11 +02:00
adphi 2f163ab7d1 logger: add WithReportCaller and Clone
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-08-04 22:47:21 +02:00
adphi 0e1fe17b97 service: fix possible deadlock on close
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-08-04 18:51:17 +02:00
adphi df505b58d7 rename module grpc-toolkit
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-07-08 01:33:10 +02:00
adphi 1fa30d9706 mux: run http server if gateway | grpcWeb | react | mux is defined
goroutines: use errgroup
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-07-08 01:29:18 +02:00
adphi 36f3c5bc81 service: WithReact: use fs.FS instead of embed.FS
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-07-07 14:08:34 +02:00
adphi 9baceef381 service: signals add syscall.SIGTERM
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-04-19 14:25:44 +02:00
adphi 3af87d65d6 codec: register on init
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-04-19 14:24:28 +02:00
adphi e295da1988 service: flags: add missing cert options
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-03-11 12:30:32 +01:00
adphi 82d04d63b6 refactor: remove ioutil module usage
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-03-11 12:27:30 +01:00
adphi 291c4f6361 deps: upgrade go to 1.20 and update dependencies
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-03-08 11:51:28 +01:00
adphi 19787f85ca errors: add BadRequestDetails
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-03-08 11:44:25 +01:00
adphi e70369a902 logger: add WithContext support
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-02-21 19:53:25 +01:00
adphi 2bb79e6c11 deps: upgrade grpc
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-02-21 14:47:43 +01:00
adphi 8f75b6aca4 react: use fs.FS instead of embed.FS
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2023-01-20 14:33:52 +01:00
adphi 926af303e8 upgrade logrus, add logger.Trace support
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-12-22 10:27:33 +01:00
adphi ef9a12d89e ban: more defaults options, simpler callback
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-12-07 14:09:36 +01:00
adphi 01b37a0d91 metrics interceptors: fix default server registration
metrics interceptors: add missing client histogram methods

Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-11-06 22:51:03 +01:00
adphi dcd2f18f65 auth interceptors: preserve error message
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-11-03 17:13:28 +01:00
adphi 1d3d5315a4 ban: remove port from DefaultActorFunc
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-10-26 12:02:53 +02:00
adphi 23f1b78389 logger: add Logger method to access *logrus.Logger
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-10-18 18:26:39 +02:00
adphi c7096975b1 interceptors: add ban
health: set services serving on start and not available on close

Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-09-27 17:06:18 +02:00
adphi 9bf4e691ce add WithListener option
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-09-05 15:32:33 +02:00
adphi b230278441 add unix socket support
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-09-05 12:33:01 +02:00
adphi 23370fd04d react: add DevEnv utility
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-09-05 11:35:09 +02:00
adphi 7c3a338748 react: export REACT_ENDPOINT env var, recovery interceptor: remove panicing client handlers
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-09-05 11:32:24 +02:00
adphi d5210f8db5 interceptors: add chain interceptors
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-08-29 16:16:46 +02:00
adphi 8e6cfd2daa remove gorm support
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-07-26 07:55:18 +02:00
adphi 9729fb8b8a breaking change: auth options now takes fully qualified method names
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-07-16 19:03:44 +02:00
adphi 4de0ec6a3b add metadata forwarder server interceptors
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-07-16 16:43:00 +02:00
adphi 6e86120943 add server interface interceptors
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-07-15 15:48:09 +02:00
adphi bb7e4b124b logger: add FromLogrus
service: use logger instead of logrus

Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-07-02 12:39:52 +02:00
adphi d8443ee470 logger: add SetOutput method
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-07-01 22:09:20 +02:00
adphi 3fb566cb80 errors: add missing canceled
example: add auth
metadata interceptor: do not overide metadatas

Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-06-24 11:47:09 +02:00
adphi 79771e58c1 validation: recursive error check on "embedded message failed validation"
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-06-07 13:09:47 +02:00
adphi 5662486b3b validation: set errdetails.BadRequest_FieldViolation slice in errdetails.BadRequest as details
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-06-07 12:49:58 +02:00
adphi ec06b7c4a2 service: add react web app serving option
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-06-03 13:12:19 +02:00
adphi 9174446b2c logger: add FieldLogger() logrus.FieldLogger
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-06-02 23:35:38 +02:00
adphi c10ac23ece add react single page app handler (proxy to dev server when $REACT_ENDPOINT is defined
fix example

Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-05-26 12:14:54 +02:00
adphi 70913ba556 shutdown: catch Drain() is not implemented
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-05-15 14:12:38 +02:00
adphi e5a45801a1 validation: fix undefined: errors.InvalidArgumentD
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-05-04 16:30:27 +02:00
adphi 01eb1bddea errors: remove {Code}D and {Code}F methods
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-24 13:53:05 +01:00
adphi 0754c0de00 logger: add SetLevel and Logr for logr interoperability
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-24 13:48:24 +01:00
adphi 884d59e280 codec: add codec to support both vtproto and google.golang.org/protobuf and probably gogoproto
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-17 15:22:31 +01:00
adphi 60234cceb3 errors: add Is{Code}(err error) bool methods
close #3

Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-13 17:38:45 +01:00
adphi 8e490c0bae metrics: add histogram support
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-12 00:42:36 +01:00
adphi d61f0e9d76 metrics: add server interceptor missing prometheus collector wrapped method
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-12 00:40:16 +01:00
adphi b1988e0458 metrics: fix registration
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-12 00:24:37 +01:00
adphi 2832f13f3c update grpc, service: implements reflection.GRPCService
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-11 13:42:02 +01:00
adphi 08a67bf162 fix metadata client interceptors
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-11 12:40:09 +01:00
adphi 97ced73270 add metadata interceptors, auth client interceptors
Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-11 12:33:18 +01:00
adphi c0e79d8834 service: replace cmd with NewFlagSet, add internal service version metadata interceptors
client: add NewFlagSet, add missing Options interface methods

Signed-off-by: Adphi <philippe.adrien.nousse@gmail.com>
2022-03-10 12:46:36 +01:00
adphi e578d62a29 add auth interceptors 2021-12-13 12:08:10 +01:00
adphi 55251b5020 command: allow unknown flags 2021-12-08 13:57:49 +01:00
adphi eed8fd3501 grpc-gateway: wrap with wsproxy 2021-12-07 19:53:16 +01:00
adphi 819b3c9ce6 logger: add C as From alias 2021-11-28 09:33:32 +01:00
adphi aaf2aa3964 recovery server interceptor 2021-11-25 18:22:57 +01:00
adphi c8ecf58b3e client: add interceptors option 2021-11-23 15:15:47 +01:00
adphi d28f55eb8b update validation interceptor interfaces 2021-11-23 13:12:49 +01:00
adphi 8e6fde19b5 add minimal config interface and file implementation 2021-11-23 12:00:58 +01:00
adphi 1bad45b563 add client address option, fix noop resolver 2021-11-22 14:26:05 +01:00
adphi e8f0a2f03d add client address option, fix noop resolver 2021-11-22 14:04:47 +01:00
adphi c6557d12f2 add sentry interceptors 2021-11-21 16:24:22 +01:00
adphi d246bb3214 options: fix interceptors, add defaulter and recovery 2021-11-21 16:13:43 +01:00
adphi dc78a2c688 add metrics, tracing, validation interceptors, add options: WithInterceptors, With{Client,Server}Interceptors 2021-11-21 14:58:49 +01:00
adphi 9ae20eab1e add signals based on controller-runtime signals handler 2021-11-21 12:36:34 +01:00
adphi 8f40c6fc53 reformat error funcs, improved logger 2021-11-18 20:21:30 +01:00
adphi 43357bc790 add http middleware, add option to use custom mux, improved logger kvs 2021-10-13 17:05:59 +02:00
adphi 2916a61b3b use default unsecured grpc web options 2021-09-30 18:10:12 +02:00
adphi 6594278ead removed grpc server access 2021-09-30 17:11:58 +02:00
adphi 0fd0a6ecc3 add cors option 2021-09-30 16:56:51 +02:00
adphi 89ebbee8dc add missing transport folder 2021-09-30 12:00:30 +02:00
adphi 1eea54f18a remove transport draft, add grpc web and gateway support 2021-09-18 01:44:08 +02:00
adphi 4085420f6f upgrade deps 2021-07-17 22:51:11 +02:00
adphi 9c16750ffc tranport draft, renamed module 2021-07-17 22:40:06 +02:00
adphi a6696b1d39 service and client implements last grpc server and client interfaces, improved errors, add signals handling 2020-11-27 14:00:45 +01:00
adphi c1d38dfbd0 fix close of closed channel 2020-11-15 15:54:46 +01:00
adphi 9f5f03b862 add registry base interface, mdns, noop implementations, add resolver, client 2020-11-15 15:54:46 +01:00
adphi c4d0ef3c08 fix deadlock 2020-11-06 16:44:25 +01:00
adphi e12748c57f add missing option flags, fix some comments 2020-08-07 14:02:31 +02:00
adphi 4ca6bedf5a add cert generation, tls config, reflection 2020-08-07 10:59:27 +02:00
adphi 8e5e48f39b cobra silent usage 2020-03-04 09:28:45 +01:00