Upman
UPdata MANager is used in conjunction with Upclid to display pending updates and reboots.
Working features
- displaying pending updates
- displaying pending reboots
- displaying locked packages
- display log of last update-run
- authenticating users via ldap (for actions, displaying works without login)
- authorizing users via ldap (simple group check)
- showing custom facts about systems (if custom facts are implemented)
- triggering updates runs
- triggering reboots
- panic button (abort all updates/reboot, that have not been started)
- optionally save ets tables to disk on shutdown (for hot cache / persistent persmissions&locks)
Currently plannend features
- (un)locking packages
- instead of authenticating clients: update-clearance includes list of reported updatetable packages. client only installs updates, if list matches.
Deploying Upman
- Install current erlang (i.e. from here
- copy
upman.service
to /etc/systemd/system/upman.service
- copy
upman.toml
to /etc/upman.toml
and customize the ldap settings, port, etc.
- run
mix deps.get
to install dependencies
- run
mix phx.digest
to create compressed assets
- run
MIX_ENV=prod mix release
to create a release-package
- run
tar -C /opt/upman -xzf _build/prod/upman-$version.tar.gz
to install the release locally
- Start Upman via
systemctl start upman
- install and start Upclid on one or more systems
Now you can visit localhost
from your browser.
Contributions very welcome!
Issues, pull requests, documentation, questions, feature request, whatever your method - your contributions are very welcome!
License
Apache 2.0