(R)?ex the friendly automation framework

News

2020-12-05
Rex-1.13.2

The Rex-1.13.2 release is now available on CPAN. It contains only documentation updates, mostly for the built-in template capabilities, but also fixes a few typos.

2020-11-05
Rex-1.13.1

Happy 10th birthday, Rex!

The Rex-1.13.1 release is now available on CPAN. It is focusing on CMDB bugfixes and documentation, while also fixing a missing feature flag. Upgrade is recommended for all users.

2020-10-05
Rex-1.13.0

The Rex-1.13.0 release is now available on CPAN. It adds on_no_change hooks for file management commands to trigger further actions when files are left unchanged. Upgrade is recommended for all users.

2020-09-05
Rex-1.12.2

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.

2020-08-05
Rex-1.12.1

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

Conferences

2016-06-21

» Home » Docs » Release notes » Release notes for 0.54.3

Release notes for 0.54.3

These are the changes in 0.54 release.

We want to thank every contributor that makes this release possible.

Common

path_map - variable path mapping

path_map is a new feature developed by Erik Huelsmann to ease the management of files for different hosts. In the past, if you wanted to upload a file (for example /etc/security/access.conf) to your servers and wanted to have different access.conf files per environment, or for a special host, you had to build this logic by yourself. With the path_map feature you only have to define the lookup path and Rex is doing this for you.

use Rex -feature => ['0.54'];

set path_map => {
    "files/" => [
        "files/{environment}/{hostname}/", "files/{environment}/",
        "files/{hostname}/",
    ],
    "templates/" => [
        "templates/{environment}/{hostname}/", "templates/{environment}/",
        "templates/{hostname}/",
    ],
};

task "setup",
  group => "frontends",
  sub {
    file "/etc/security/access.conf",
      source => "files/etc/security/access.conf",
      owner  => "root",
      group  => "root",
      mode   => 644;

    file "/etc/ntp.conf",
      content => template("templates/etc/ntp.conf"),
      owner   => "root",
      group   => "root",
      mode    => 644;
  };

This example will search for the files it should upload or process as templates in the following direction:

Given:

Lookup-Path:

And for the template it is just the same:

You can use any variable that the inventory can gather from the system.

Cloud

Bugfixes

Rex::Test

Cloud

Common

Proudly powered by Statocles

GitHub / IRC / Twitter / Google Groups / StackShare / Mailing list / Server Fault   -.ô.-   Disclaimer