» Home » Docs » Release notes » Release notes for 0.44
Release notes for 0.44
Common
Docker support (experimental) - #278 - chenryn
Format the output of say() - #155
sayformat '%h: %s';
Possible formatting options:
- %D - current date (yyyy-mm-dd HH:mm:ss)
- %h - the target host
- %p - the pid
%s - the string to output
user-defined columns for ps() command - #175 - dirkcjelli
task "ps", "server01", sub { my @list = grep { $_->{"ni"} == -5 } ps( "command", "ni" ); };
using tilde (~) sign for directories - #198 - Gnouc, Krimdomu
Rex::SCM::Git now uses cwd option of run() command, so it also works remotely. - #211 - atrodo
Box default pkg update - #217 - endyman
run_batch() command to run batches on demand - #222 - jorisd
my @return = run_batch "batchname", on => "192.168.3.56";
Allow "sed" function to work on multiple lines. - #227 - davidolrik, krimdomu
Added bulk_install() method for packages installing - #229 - jorisd
Enable bulk_install for Gentoo and OpenWrt - #231 - ferki
Added some hooks at central points in rex, so that it is possible to control the behaviour of rex in some points.
For example:
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";
},
}
};
added on_change hook for sync_up and sync_down - #232
sync_up "files/", "/remote/folder", { on_change => sub { my (@changed_files) = @_;
}; };<span class="hljs-comment"># do something</span><span class="hljs-comment">
Rex::Group::Lookup::Command - read hostnames from a command. - #233 - fanyeren
group "dbserver" => lookup_command("cat ip.list | grep -v -E '^#'");
Improve user and group management on OpenWrt - #242 - ferki
Add kernel module (un)loading support for OpenWrt - #243 - ferki
Add service status support for OpenWrt - #246 - ferki
Make ssh read buffer configurable (for Net::SSH2 connections) - #247. This will speedup the connection, but may break on older systems!
set rex_internals => { read_buffer_size => 2000, };
Add systemd service provider support for Gentoo - #250 - ferki
Add systemd service provider support for Mageia - #282
feature flag to deactivate path cleanup - #261
# Rexfile use Rex -feature => ['no_path_cleanup'];
feature flag to parse $HOME/.profile - #262
# Rexfile use Rex -feature => ['source_profile'];
Cloud::Amazon: check to make sure it is HASH before key look up - #263 - oneness
autodie feature if run() fail - #265
# Rexfile use Rex -feature => ['exec_autodie'];
- added support for tcsh shell - #284
Bugfixes
Fix guestinfo for Gentoo - #236 - ferki
get_host can't find aliases - #239, #240 - jorisd, ferki
rsync get wrong user if using "auth for $task" - #252
Flag existing feature sudo_without_sh as found - #253 - gittex
Cleaned up Data module dependency - #254
iptables arguments needs quote if they are whitespaced - #257 - jorisd
add pod encoding marker - #259 - sergeyromanov
"needs" doesn't know how to call tasks from the main Rexfile - #260
gathering alias network interfaces like eth0:0 - #264
Cron: jobs can be duplicated - #269 - jorisd
FreeBSD: store netmask in dotted decimal format - #287 - andrejzverev
Uninitialized value in OpenSSH.pm - #290 - samuelet
Community modules
Rex::Ext::Crypt - encrypt strings inside a Rexfile.
Rex::Ext::Backup - a simple backup module. This module creates a backup of a file before rex changes it.
include qw/Rex::Ext::Backup/;
task yourtask => sub { file "/etc/foo.conf", content => "new content\n"; };
- Rex::Commands::Pstree - module to run pstree - fanyeren
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:
- Fedora
- Mageia
- OpenSuSE
Please see the Get Rex page for the new URLs.