summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-10-11 22:39:19 -0500
committerJeff Carr <[email protected]>2024-10-11 22:39:19 -0500
commitf71da2ef59a51788f32b5fe5eb600ce40dbbdd75 (patch)
tree05e6311b676054812a5f9cc1bd8f96689755ac3a
parentf7ae394d20faab6d6d89554416e0e3bf7dbb2547 (diff)
still does nothing yet
Signed-off-by: Jeff Carr <[email protected]>
-rw-r--r--Makefile16
-rw-r--r--argv.go25
-rw-r--r--main.go8
3 files changed, 40 insertions, 9 deletions
diff --git a/Makefile b/Makefile
index 637952b..6d00510 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,17 @@
+VERSION = $(shell git describe --tags)
+
+# create the go.mod and go.sum if this is a brand new repo
+# REDOMOD = $(shell if [ -e go.mod ]; then echo go.mod; else echo no go mod; fi)
+REDOMOD = $(shell if [ -e go.sum ]; then echo go.sum exists; else GO111MODULE= go mod init; GO111MODULE= go mod tidy; fi)
+
all:
- make redomod
- GO111MODULE= go build
- sudo ./virtigod
+ GO111MODULE=off go build -v -x -ldflags "-X main.Version=${VERSION} -X gui.GUIVERSION=${VERSION}"
+ ./virtigod --version
+
+# this is for release builds using the go.mod files
+release-build:
+ @echo ${REDOMOD}
+ go build -v -ldflags "-X main.Version=${VERSION} -X gui.GUIVERSION=${VERSION}"
# makes a .deb package
debian:
diff --git a/argv.go b/argv.go
new file mode 100644
index 0000000..906dd65
--- /dev/null
+++ b/argv.go
@@ -0,0 +1,25 @@
+package main
+
+/*
+ this parses the command line arguements
+ this enables command line options from other packages like 'gui' and 'log'
+*/
+
+import (
+ "go.wit.com/dev/alexflint/arg"
+)
+
+var argv args
+
+type args struct {
+ ListRepos bool `arg:"--list-repos" help:"list all repositories"`
+ Port int `arg:"--port" default:"2520" help:"port to run on"`
+}
+
+func (args) Version() string {
+ return "virtigod " + Version
+}
+
+func init() {
+ arg.MustParse(&argv)
+}
diff --git a/main.go b/main.go
index a53e556..577afab 100644
--- a/main.go
+++ b/main.go
@@ -25,11 +25,7 @@ import (
"github.com/digitalocean/go-qemu/qemu"
)
-var (
- network = flag.String("network", "unix", `Named network used to connect on. For Unix sockets -network=unix, for TCP connections: -network=tcp`)
- address = flag.String("address", "/var/run/libvirt/libvirt-sock", `Address of the hypervisor. This could be in the form of Unix or TCP sockets. For TCP connections: -address="host:16509"`)
- timeout = flag.Duration("timeout", 2*time.Second, "Connection timeout. Another valid value could be -timeout=500ms")
-)
+var Version string
func main() {
flag.Parse()
@@ -37,7 +33,7 @@ func main() {
// fmt.Printf("\nConnecting to %s://%s\n", *network, *address)
newConn := func() (net.Conn, error) {
// return net.DialTimeout(*network, *address, *timeout)
- return net.DialTimeout("unix", "/var/run/libvirt/libvirt-sock", *timeout)
+ return net.DialTimeout("unix", "/var/run/libvirt/libvirt-sock", 2*time.Second)
// return net.DialTimeout("tcp", "farm02:16514", *timeout)
}