diff options
| author | Jeff Carr <[email protected]> | 2025-03-23 20:10:49 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-03-25 13:17:00 -0500 |
| commit | d29e55b0d5c0ec8f99b4235115c39000732592ca (patch) | |
| tree | 5c6a6aec4954730a8cee81d1f2dc826234457bb6 /machine.go | |
| parent | 64d44e227282ad57f45d9a8e8042c2b790f357ae (diff) | |
common update codev0.0.54
Diffstat (limited to 'machine.go')
| -rw-r--r-- | machine.go | 38 |
1 files changed, 26 insertions, 12 deletions
@@ -60,6 +60,7 @@ func handleMachine(r *http.Request, w http.ResponseWriter, hostname string, data } else { fmt.Fprintln(w, m.UpgradeCmd) } + m.UpgradeCmd = "" m.Upgrade = false } else { fmt.Fprintln(w, "good") @@ -112,7 +113,9 @@ func updateMachine(u *zoopb.Machine) string { } m.Laststamp = timestamppb.New(time.Now()) - updatePackages(m, u.Packages) + if updatePackages(m, u.Packages) { + // trigger save pb + } return "upgrade" } @@ -127,20 +130,31 @@ func updatePackages(m *zoopb.Machine, newp *zoopb.Packages) bool { for loop.Scan() { p := loop.Next() if p.Name == "zood" { - if pold := m.Packages.FindByName("zood"); pold == nil { + if updatePackageVersion(m, p) { + changed = true + } + } + if p.Name == "virtigod" { + if updatePackageVersion(m, p) { changed = true - log.Log(ZOOD, "updatePackages() new package", p.Name, "version", p.Version, "machine", m.Hostname) - m.Packages.Append(p) - } else { - if p.Version == pold.Version { - log.Log(ZOOD, "updatePackages() unchanged", p.Version, "machine", m.Hostname) - } else { - changed = true - log.Log(NOW, "updatePackages() package", p.Name, "version changed", pold.Version, "to", p.Version, "machine", m.Hostname) - pold.Version = p.Version - } } } } return changed } + +func updatePackageVersion(m *zoopb.Machine, pnew *zoopb.Package) bool { + pold := m.Packages.FindByName(pnew.Name) + if pold == nil { + log.Log(NOW, "updatePackages() new package", pnew.Name, "version", pnew.Version, "machine", m.Hostname) + m.Packages.Append(pnew) + return true + } + if pold.Version == pnew.Version { + log.Log(ZOOD, "updatePackages() unchanged", pold.Version, "machine", m.Hostname) + return false + } + log.Log(NOW, "updatePackages() package", pnew.Name, "version changed", pold.Version, "to", pnew.Version, "machine", m.Hostname) + pold.Version = pnew.Version + return true +} |
