(R)?ex the friendly automation framework



The Rex-1.12.2 release is now available on CPAN. It fixes various regressions, as well as bugs around file management. Upgrade is highly recommended for all users.


The Rex-1.12.1 release is now available on CPAN. It adds documentation for feature flags, and fixes a release packaging issue.


The Rex-1.12.0 release is now available on CPAN. It adds support for local rsync operations, improves tab completion for Bash and Zsh, and fixes related bugs. It also discontinues support for running Rex on Windows 7, Windows Server 2008 R2, and older versions since both mainstream and extended support has already ended for these products.

Rex on StackShare

Thanks to the support from their amazing team, Rex is now listed on StackShare.


The Rex-1.11.0 release is now available on CPAN. It enhances the behaviour of sysctl and file management, fixes bugs about group management and OpenSSH connection options, and clarifies quite a bit of documentation.



Need Help?

Rex is a pure open source project, you can find community support in the following places:

Professional support is also available.

» Home » Docs » Release notes » Release notes for 1.1.0

Release notes for 1.1.0

These are the changes in the 1.1.0 release.

We want to thank every contributor who made this release possible. We also welcome Alex Mestiashvili and Arnold Bechtoldt as new contributors.

New features

Pluggable shell detection

The shell detection code has been refactored, so it is easier to extend the list of shells which are recognized and supported by Rex. This also made initial iDrac-over-SSH support possible, and opened up the way for further exotic shells to be included later.

Hiding sensitive data in debug output

Sensitive data is now being hidden in debug outputs making their sharing easier and safer. This behaviour can be overridden by setting REX_DEBUG_INSECURE environment variable to 1.

Delayed auth settings

It is now possible to set special authentication options with auth for after the related task or group definition.

Get server group membership

Group membership information for servers are now exposed and can be retrieve directly from the server object with the groups method. It also has an alias called group, but it always returns the list of groups a server is member of:

my @groups = connection->server->groups;


Rex tests are now printing an explicit FAIL or PASS message to indicate overall test results. A new has_dir test (similar to has_file) is supported now for easier directory existence checks. A diag method is also available from now on to be used with new test implementations.



Rex-1.1.0 contains quite a few general enhancements as well.

Probably the most important of them is that Rex's dependencies are platform-specific now. On Windows it will depend on Net::SSH2 module, while on any other platform on the combination of Net::OpenSSH and Net::SFTP::Foreign. This latter pair of modules were already the preferred ones by default if they were available, but from now each platform will only need their own preferred dependencies to be installed.

The can_run method has been refactored to support Windows platforms by accepting an optional command to use when checking command availability. This also fixes some test failures on Windows.

Other than the above, there are some minor but very useful changes increasing security and convenience, like creating the target directory before extracting an archive to it, using the correct terms for mount command options, or dropping the --force-yes option when installing packages on Debian and its derivatives.


Both POD quality and quantity has been improved by syntax fixes, content updates and generating documentation for new modules to be published here on the website.


It is now easier to work with resources in modules as they can be exported to the main namespace, and they also support more events (created, removed, message).


The has_stat test can now handle directories, not just files.


The following bugs/regressions were also fixed during this release cycle:

Proudly powered by Statocles

Google Group / Twitter / GitHub / Mailinglist / irc.freenode.net #rex   -.ô.-   Disclaimer