(R)?ex Deployment & Configuration Management

Search

News

2016-09-08

Work with (R)?ex at adjust! Check out their job posting for details, or contact our fellow core developer, FErki.

2016-07-16

(R)?ex 1.4.1 released, fixing many bugs. See the release notes for more details.

2016-03-07

(R)?ex 1.4.0 released, containing lots of goodies. See the release notes for more details.

2015-09-04

(R)?ex 1.3.3 released, fixing a bunch of bugs. See the release notes for more details.

2015-06-22

adjust GmbH is sponsoring the (R)?ex project with a new build server. Thank you for your support!

2015-06-17

(R)?ex 1.3.2 released, fixing issues related to file manipulation when run on BSDs. See the release notes for more details.

2015-06-08

(R)?ex 1.3.1 released, fixing Rex::Commands::DB related tests.

2015-05-27

Read the second part of "Rex in practice" series about Test-driven infrastructure.

2015-05-09

repositor.io 1.1.0 released. repositor.io is a repository management tool for apt, yum, yast and docker. This is a bugfix release with fixes for ubuntu and centos7 installation media mirroring.

2015-05-03

(R)?ex 1.2.0 released. See the release notes for more details.

2015-03-27

View the slides of the talk An introduction to Rex from Andy Beverley.

Conferences

2016-06-21

Training

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 » 0.44

Release notes for 0.44

Common

Copy to clipboard
sayformat '%h: %s';

task "test", sub {
   say "hello world";
};

Possible formatting options:

Copy to clipboard
task "ps", "server01", sub {
   my @list = grep { $_->{"ni"} == -5 } ps("command","ni");
};
Copy to clipboard
my @return = run_batch "batchname", on => "192.168.3.56";

For example:

Copy to clipboard
use Rex::Hook;
use Data::Dumper;

register_function_hooks {
   before => {
      file => sub {
         print Dumper(\@_);
         print "before file\n";
         return;
      },
      create_user => sub {
         print "before create_user\n";
         die;
      },
   },
   after => {
      file => sub {
         print "after file\n";
      },
      create_user => sub {
         print "after create_user\n";
      },
   }
};
Copy to clipboard
sync_up "files/", "/remote/folder", {
   on_change => sub {
      my (@changed_files) = @_;
     # do something
   };
};
Copy to clipboard
group "dbserver"   => lookup_command("cat ip.list | grep -v -E '^#'");
Copy to clipboard
set rex_internals => {
   read_buffer_size => 2000,
};
Copy to clipboard
# Rexfile
use Rex -feature => ['no_path_cleanup'];

task prepare => sub {};
Copy to clipboard
# Rexfile
use Rex -feature => ['source_profile'];

task prepare => sub {};
Copy to clipboard
# Rexfile
use Rex -feature => ['exec_autodie'];

task "prepare", sub {
   run "this-command-fails";
};

Bugfixes

Community modules

Copy to clipboard
 include qw/Rex::Ext::Backup/;

 set backup_location => "backup/%h";

 task yourtask => sub {
    file "/etc/foo.conf", content => "new content\n";
 };

Package repository

This is the first release build with the new build system on build.rexify.org. Due to this fact the following repository URLs have changed:

Please see the Get Rex page for the new URLs.

Fork me on GitHub
Google Group / Twitter / GitHub / Mailinglist / irc.freenode.net #rex   -.รด.-   Disclaimer