summaryrefslogtreecommitdiff
path: root/structs.go
blob: fa740e5b45169cc6590f82ba1a0a030fd79e3e50 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// Copyright 2017-2025 WIT.COM Inc. All rights reserved.
// Use of this source code is governed by the GPL 3.0

package main

import (
	"time"

	"go.wit.com/dev/alexflint/arg"
	"go.wit.com/gui"
	"go.wit.com/lib/gadgets"
	"go.wit.com/lib/gui/prep"
	"go.wit.com/lib/protobuf/zoopb"
)

var me *mainType

// this app's variables
type mainType struct {
	pp          *arg.Parser            // for parsing the command line args.  Yay to alexf lint!
	hostname    string                 // my fqdn dns zookeeper hostname
	pollDelay   time.Duration          // how often to report our status
	dog         *time.Ticker           // the watchdog timer
	dogchan     chan bool              // can kill the watchdog
	distro      string                 // debian,redhat,gentoo,macos,wincrap
	packages    *zoopb.Packages        // installed packages and versions
	machines    *zoopb.Machines        // every machine that has reported itself to the zookeeper
	targets     map[string]string      // what versions the machines should be running
	upgrade     map[string]bool        // use this to trigger builds
	myGui       *prep.GuiPrep          // the gui toolkit handle
	machinesWin *gadgets.GenericWindow // the machines gui window
	machinesBox *gui.Node              // the machines gui parent box widget
	machinesTB  *zoopb.MachinesTable   // the machines gui table buffer
	zood        *stdTableWin           // the zood version window
}