// Copyright 2016 The go-qemu Authors. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package main import ( "embed" "os" "time" "go.wit.com/dev/alexflint/arg" "go.wit.com/lib/protobuf/zoopb" "go.wit.com/log" ) var VERSION string var BUILDTIME string //go:embed resources/* var resources embed.FS func main() { var pp *arg.Parser pp = arg.MustParse(&argv) if pp == nil { pp.WriteHelp(os.Stdout) os.Exit(0) } if argv.Daemon { // turn off timestamps for STDOUT (systemd adds them) log.DaemonMode(true) } me = new(stuff) me.zookeeper = "zookeeper.wit.com" me.hostname, _ = os.Hostname() me.pollDelay = 3 * time.Second // what OS? me.distro = initDistro() // init my machine protobuf me.machine = new(zoopb.Machine) me.machine.Packages = new(zoopb.Packages) me.machine.Hostname = me.hostname // init the installed package list // me.packages = new(zoopb.Packages) initPackages() go NewWatchdog() startHTTP() }