Skip to content

webtor-io/claims-provider

Repository files navigation

claims-provider

Provides claims for user by email via gRPC.

Run

  • Local: go run . serve
  • Docker: docker build -t claims-provider . && docker run --rm -p 50051:50051 -p 8081:8081 claims-provider

Configuration (flags or env)

  • GRPC_HOST / --grpc-host: gRPC listening host (default "")
  • GRPC_PORT / --grpc-port: gRPC listening port (default 50051)
  • STORE_CACHE_CONCURRENCY / --store-cache-concurrency: maximum concurrent cache builders (default 10)
  • STORE_CACHE_EXPIRE / --store-cache-expire: cache expiration for successful entries (e.g. 60s) (default 60s)
  • STORE_CACHE_ERROR_EXPIRE / --store-cache-error-expire: cache expiration for errors (default 10s)
  • STORE_CACHE_CAPACITY / --store-cache-capacity: cache capacity (default 1000)
  • STORE_DB_TIMEOUT / --store-db-timeout: DB query timeout (default 5s)
  • Probe and PG options are provided by github.com/webtor-io/common-services (HTTP probe on 8081).

API

  • gRPC service: ClaimsProvider
  • Method: Get(GetRequest{email}) -> GetResponse{context, claims}

Notes

  • Server performs graceful shutdown for gRPC.

Client

  • Build: go build -o claims-client ./client
  • Run by email: ./claims-client --grpc-host 127.0.0.1 --grpc-port 50051 --email user@example.com
  • Run by Patreon ID: ./claims-client --grpc-host 127.0.0.1 --grpc-port 50051 --patreon-id 123456
  • You can also use env vars GRPC_HOST and GRPC_PORT instead of flags.

About

Provides claims for user by email

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

 
 
 

Contributors