module
0.0.0-20250307173044-634e8ce82c05
Repository: https://github.com/sapcc/go-bits.git
Documentation: pkg.go.dev
# README
go-bits
Some tiny pieces of Go code, extracted from their original applications for reusability. Feel free to add to this.
Packages
- assert contains various assertions for unit tests.
- audittools contains a microframework for establishing a connection to a RabbitMQ server (with sane defaults) and publishing messages to it.
- easypg is a database library for applications that use PostgreSQL. It integrates golang-migrate/migrate for data definition and imports the libpq-based SQL driver.
- errext contains convenience functions for handling and propagating errors.
- gophercloudext contains convenience functions for use with Gophercloud. It is specifically intended as a lightweight replacement for
gophercloud/utils
with fewer dependencies. - gopherpolicy integrates Gophercloud with goslo.policy, for OpenStack services that need to validate client tokens and check permissions.
- httpapi contains opinionated base machinery for assembling and exposing an API consisting of HTTP endpoints.
- httpext adds some convenience functions to net/http.
- httptest builds on net/http/httptest to make process-local HTTP requests inside tests as smooth as possible.
- jobloop contains the Job trait, which abstracts over reusable implementations of worker loops.
- liquidapi contains a server runtime and various other utilities for microservices implementing the LIQUID API.
- logg adds some convenience functions to log.
- mock contains basic mocks and test doubles.
- must contains convenience functions for quickly exiting on fatal errors without the need for excessive
if err != nil
. - osext contains extensions to the standard library package "os", mostly relating to parsing of environment variables.
- pluggable is a tiny plugin factory library, for constructing different objects implementing a common interface based on a configurable type selector.
- promquery provides a simplified interface for executing Prometheus queries.
- regexpext contains convenience functions for marshalling regexes to and from string values in YAML and JSON documents.
- respondwith contains some helper functions for generating responses in HTTP handlers.
- secrets provides convenience functions for working with auth credentials.
- sqlext contains helper functions for SQL queries that are not specific to PostgreSQL.
- vault contains helper functions to work with HashiCorp Vault.
Tools
The tools
subdirectory contains small Go programs.
- release-info extracts release info for a specific version from a changelog file that uses the Keep a changelog format.
# Packages
No description provided by the author
Package audittools provides a toolkit for establishing a connection to
a RabbitMQ server (with sane defaults) and publishing audit messages in the CADF format to it.
Package easypg is a database library for applications that use PostgreSQL.
Package errext contains convenience functions for handling and propagating errors.
Package gophercloudext contains convenience functions for use with [Gophercloud].
Package gopherpolicy provides integration between goslo.policy and Gophercloud for services that need to validate OpenStack tokens and check permissions.
Package httpapi contains opinionated base machinery for assembling and exposing an API consisting of HTTP endpoints.
Package httpext provides some convenience functions on top of the "net/http" package from the stdlib.
Package httptest builds on net/http/httptest to make process-local HTTP requests inside tests as smooth as possible.
Package jobloop contains the Job trait that abstracts over several types of worker loops.
Package liquidapi provides a runtime library for servers and clients implementing the LIQUID protocol: <https://pkg.go.dev/github.com/sapcc/go-api-declarations/liquid>
- func Run() provides a full-featured runtime that handles OpenStack credentials, authorization, and more.
Package logg provides some convenience functions on top of the "log" package from the stdlib.
Package mock contains basic mocks and test doubles.
Package must contains convenience functions for quickly exiting on fatal errors without the need for excessive "if err != nil".
Package osext contains extensions to the standard library package "os".
Package pluggable is a tiny plugin factory library.
Package promquery provides a simplified interface for executing Prometheus queries.
Package regexpext provides Regexp wrapper types that automatically compile regex strings while they are being unmarshaled from YAML or JSON files.
Package respondwith contains some helper functions for generating responses in HTTP handlers.
Package secrets provides convenience functions for working with auth credentials.
Package sqlext contains helper functions for SQL queries that are not specific to PostgreSQL.
No description provided by the author