baseplate.go

module
v0.0.0-...-bde19ca Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 28, 2020 License: BSD-3-Clause

README

baseplate.go

Baseplate implemented in go.

Documentation

Code documentation

IDE/Editor Setup

See here.

Thrift generated files

The internal/gen-go/ directory contains thrift generated files, with *-remote directories removed. They are excluded from the linter. DO NOT EDIT.

They were generated with thrift compiler 0.13.0 and baseplate.thrift using command under internal/:

thrift --gen go:package_prefix=github.com/fizx/baseplate.go/ path/to/baseplate.thrift

They are needed by edgecontext package. We did not include baseplate.thrift file into this repo to avoid duplications. This directory will be regenerated when either thrift compiler or baseplate.thrift changed significantly.

Bazel support

This project also comes with optional Bazel support. It's optional as in you can totally ignore Bazel and still use the go toolchain, but the added support will make it easier for projects using Bazel to add this project as a dependency.

When you made a change to go.mod file, please run the following command to reflect the changes in Bazel:

bazel run //:gazelle -- update-repos -from_file=go.mod -prune

Or just use the script we used in CI:

./scripts/bazel_cleanup.sh

To run tests via Bazel, use the following command:

bazel test //...:all

Directories

Path Synopsis
Package batcherror provides BatchError, which can be used to compile multiple errors into a single one.
Package batcherror provides BatchError, which can be used to compile multiple errors into a single one.
Package clientpool provides implementations of a generic client pool.
Package clientpool provides implementations of a generic client pool.
Package events implements event publisher per baseplate spec.
Package events implements event publisher per baseplate spec.
Package filewatcher provides a go implementation of baseplate's FileWatcher: https://baseplate.readthedocs.io/en/stable/baseplate/file_watcher.html
Package filewatcher provides a go implementation of baseplate's FileWatcher: https://baseplate.readthedocs.io/en/stable/baseplate/file_watcher.html
Package httpbp provides Baseplate specific helpers and integrations for http services using go-kit.
Package httpbp provides Baseplate specific helpers and integrations for http services using go-kit.
internal
Package log provides a wrapped zap logger interface for microservices to use, and also a simple Wrapper interface to be used by other baseplate.go packages.
Package log provides a wrapped zap logger interface for microservices to use, and also a simple Wrapper interface to be used by other baseplate.go packages.
Package metricsbp provides metrics related features for baseplate.go, based on go-kit metrics package.
Package metricsbp provides metrics related features for baseplate.go, based on go-kit metrics package.
Package mqsend is a pure go implementation of posix message queue for Linux, using syscalls.
Package mqsend is a pure go implementation of posix message queue for Linux, using syscalls.
Package randbp provides some random generator related features: 1.
Package randbp provides some random generator related features: 1.
Package redisbp provides Baseplate integrations for go-redis.
Package redisbp provides Baseplate integrations for go-redis.
Package runtimebp provides extensions to the stdlib runtime package.
Package runtimebp provides extensions to the stdlib runtime package.
Package secrets provides the functionality to access secrets from Vault by reading them out of a JSON file with automatic refresh on change.
Package secrets provides the functionality to access secrets from Vault by reading them out of a JSON file with automatic refresh on change.
Package set provides simple set implementations in go.
Package set provides simple set implementations in go.
Package signing implements Baseplate's message signing protocol.
Package signing implements Baseplate's message signing protocol.
Package thriftbp provides Baseplate specific thrift related helpers.
Package thriftbp provides Baseplate specific thrift related helpers.
Package timebp defines some time related types used by various baseplate components, along with their helper functions.
Package timebp defines some time related types used by various baseplate components, along with their helper functions.
Package tracing provides tracing integration with zipkin.
Package tracing provides tracing integration with zipkin.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL