Adam Štrauch
709c47af3e
Callback is run when there some discovery packet changes. It can be an update, adding a new one or deleting the old one. This can be used to perform dynamic configuration of services that don't support lobby's API.
39 lines
811 B
Go
39 lines
811 B
Go
package main
|
|
|
|
import (
|
|
"flag"
|
|
"fmt"
|
|
"os"
|
|
)
|
|
|
|
// Templater is used to generate config files from predefined
|
|
// templates based on content of gathered discovery packets.
|
|
// It can for example configure Nginx's backend or database
|
|
// replication.
|
|
//
|
|
// It reads templates from /var/lib/lobby/templates (default)
|
|
// which are YAML files cotaining the template itself and command(s)
|
|
// that needs to be run when the template changes.
|
|
|
|
const defaultTemplatesPath = "/var/lib/lobby/templates"
|
|
|
|
var templatesPath *string
|
|
|
|
func init() {
|
|
templatesPath = flag.String("templates-path", defaultTemplatesPath, "path of where templates are stored")
|
|
|
|
flag.Parse()
|
|
|
|
err := os.MkdirAll(*templatesPath, 0750)
|
|
if err != nil {
|
|
fmt.Println(err)
|
|
flag.Usage()
|
|
os.Exit(1)
|
|
}
|
|
|
|
}
|
|
|
|
func main() {
|
|
fmt.Println(*templatesPath)
|
|
}
|