Skip to content

Repository files navigation

service

make it easy to run go services

How it works

The service groups allows registration of the different parts of a service. These components are run in a group, if any one them fails, the group is stopped.

group:=service.NewSignals(os.Interrupt)
group.Setup(func(ctx context.Context) error) {
// register a setup function.// all setup functions are run before registered functions.// if it returns an error, the group is stopped.
})
group.Register(func(ctx context.Context) error {
// register a function that accepts a context// if it returns an error, the group is stopped
})
// the group exposes two http probes// liveness reports service unavailable until all the setup functions have completed// readiness reports service unavailable until all the registered functions have startedgroup.Liveness()
group.Readiness()
group.Register(httpServer())
// run the servicelog.Fatal(group.Start())

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages