summaryrefslogtreecommitdiff
path: root/machine.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-11-18 20:13:22 -0600
committerJeff Carr <[email protected]>2024-11-18 20:13:22 -0600
commit0ad4ffd0c6f4554fcbec9fb510513784e297fd2a (patch)
tree997d2471a57352e98226decc3cf613a7a3538774 /machine.go
parent82c559e6579f950b11e2fae1afc67660a14c0629 (diff)
stuffv0.0.5
Signed-off-by: Jeff Carr <[email protected]>
Diffstat (limited to 'machine.go')
-rw-r--r--machine.go25
1 files changed, 23 insertions, 2 deletions
diff --git a/machine.go b/machine.go
index 3f4d23e..d524a58 100644
--- a/machine.go
+++ b/machine.go
@@ -38,8 +38,11 @@ func updateMachine(u *zoopb.Machine) string {
if u.Packages == nil {
u.Packages = new(zoopb.Packages)
}
+ if zood := m.FindPackageByName("zood"); zood != nil {
+ log.Log(ZOOD, m.Hostname, "has zood version", zood.Version)
+ }
- updatePackages(m.Packages, u.Packages)
+ updatePackages(m, u.Packages)
return "upgrade"
}
@@ -47,8 +50,26 @@ func updateMachine(u *zoopb.Machine) string {
// changed versions
// were newly installed
// were uninstalled
-func updatePackages(p *zoopb.Packages, u *zoopb.Packages) bool {
+func updatePackages(m *zoopb.Machine, newp *zoopb.Packages) bool {
var changed bool = false
+ loop := newp.SortByName()
+ for loop.Scan() {
+ p := loop.Package()
+ if p.Name == "zood" {
+ if pold := m.FindPackageByName("zood"); pold == nil {
+ changed = true
+ log.Log(ZOOD, m.Hostname, "updatePackages() new package", p.Name , "version", p.Version)
+ m.Packages.Append(p)
+ } else {
+ if p.Version == pold.Version {
+ log.Log(ZOOD, m.Hostname, "updatePackages() unchanged", p.Version)
+ } else {
+ changed = true
+ log.Log(ZOOD, m.Hostname, "updatePackages() package", p.Name , "version changed", pold.Version, "to", p.Version)
+ }
+ }
+ }
+ }
return changed
}