Categorygithub.com/ezh/wireguard-grpc
modulepackage
1.3.1
Repository: https://github.com/ezh/wireguard-grpc.git
Documentation: pkg.go.dev

# README

Build Status Go Report Card codecov FOSSA Status Conventional Commits

It is a secure implementation. Exposing private keys through a network is prohibited explicitly.

As a standalone application, it implements the following commands:

  • diag: Test wireguard-grpc configuration.
  • env: Prints environment variables.
  • server: Run GRPC server. It provides the next API:
    • Ping: returns empty result if configuration is valid
    • Dump: returns a list of devices with all endpoints
  • version: Prints the program’s version information.

As an embedded library:

  • it can be seamlessly integrated with any logging implementation supported by logr, like:
    • a function (can bridge to non-structured libraries): funcr
    • a testing.T (for use in Go tests, with JSON-like output): testr
    • github.com/google/glog: glogr
    • k8s.io/klog (for Kubernetes): klogr
    • a testing.T (with klog-like text output): ktesting
    • go.uber.org/zap: zapr
    • log (the Go standard library logger): stdr
    • github.com/sirupsen/logrus: logrusr
    • github.com/wojas/genericr: genericr (makes it easy to implement your own backend)
    • logfmt (Heroku style logging): logfmtr
    • github.com/rs/zerolog: zerologr
    • github.com/go-kit/log: gokitlogr (also compatible with github.com/go-kit/kit/log since v0.12.0)
    • bytes.Buffer (writing to a buffer): bufrlogr (useful for ensuring values were logged, like during testing)
    • more?
  • it provides mock for api/wireguard/v1/WireGuardServiceClient

Quick start

wireguard-grpc server

Generate

go generate -v

Test

Unit tests

ginkgo ./...

Integration tests

ginkgo -tags=integration -v test/...

Build

go build cmd/main.go

License

FOSSA Status

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author