Hi,
Sure. Totally doable, in many different ways.
Here is a small contrived example:
First, write your policy to trigger the full os update, guard that with a class like OS_update_upgrade_allowed
;
bundle agent __main__ { methods: OS_update_upgrade_allowed:: "Full OS Update/Upgrade" usebundle => full_os_update_upgrade; } bundle agent full_os_update_upgrade { # Describe what is needed to update/upgrade commands: ubuntu:: "/usr/bin/do-release-upgrade"; }
Then, assuming you are using 3.18.x you can use the CMDB functionality to define the default:OS_update_upgrade_allowed
class on the hosts you want to upgrade. Note: by default the CMDB classes are defined in the data
namespace, so specifying it with the default:
prefix lets you target the default namesapce.