wireguardgrpc

package module
v1.3.1 Latest Latest
Warning

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

Go to latest
Published: Jul 29, 2022 License: Apache-2.0 Imports: 0 Imported by: 0

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

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
api
wireguard/v1
Package wireguard implements wireguard GRPC behavior
Package wireguard implements wireguard GRPC behavior
internal
l
pkg
app
wg
test
mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.

Jump to

Keyboard shortcuts

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