Rollout is a system developed to automate system administration on UNIX servers. It is primarily focused towards Linux, but could be adapted to Solaris, HP-UX, AIX, etc.

It is written purely in Perl, and the configuration is also a Perl source file. Some Perl knowledge is required to edit the configuration, but copy-and-paste may suffice.

System Administration can generally be reduced to a set of steps, which must be completed in order. Some example steps include:

  • Copy files, create symlinks
  • Edit configuration files
  • Start / stop services
  • Add / modify users & groups
  • Install applications

The idea behind Rollout is to automate all these steps in a configurable way. Rollout is by design idempotent - it can be run many times on a single server and produce the same results.

[ Source ]