(R)?ex Deployment & Configuration Management

News

2019-06-09
Post-migration updates & clean-up

Over the course of the past weeks many clean-ups have been done, reaping the benefits provided by our new Statocles-based site:

2019-05-19
New site engine for rexify.org

After months of work on a new site backend, we reached the MVP today for our site to be switched over to a new engine: from now on, our site will be maintained using the static site generator Statocles.

Conferences

2016-06-21

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 0.36

Release notes for 0.36

General

You can download OpenNebula module with the following command:

Copy to clipboard

bash# rexify --use Rex::Cloud::OpenNebula

Copy to clipboard

use strict;
use warnings;

use Rex::Commands::Cloud;
use Rex::Cloud::OpenNebula;
use Data::Dumper;

user "root";

cloud_service "OpenNebula";
cloud_auth "oneadmin", "opennebula";
cloud_region "http://172.16.120.131:2633/RPC2";

task "list-os", sub {
   print Dumper get_cloud_operating_systems;
};

task "create", sub {
   my $params = shift;
   my $vm = cloud_instance create => {
      image        => "template-1",
      name         => $params->{name},
   };

   print Dumper($vm);
};

task "start", sub {
   my $params = shift;
   cloud_instance start => $params->{name};
};

task "stop", sub {
   my $params = shift;
   cloud_instance stop => $params->{name};
};

task "terminate", sub {
   my $params = shift;
   cloud_instance terminate => $params->{name};
};

task "list", sub {
   print Dumper cloud_instance_list;
};

With this function you can run a specific task on a given host and get the output as a return value.

Copy to clipboard

task "prepare", "server5", sub {
   # do something
   my $free_mem = run_task "get_free_mem", on => "server3";
   if($free_mem < 100) {
      say "Less than 100 MB free mem on server3";
      # create a new server instance on server5 to unload server3
   }
};

task "get_free_mem", sub {
    return memory->{free};
};
Google Group / Twitter / GitHub / Mailinglist / irc.freenode.net #rex   -.ô.-   Disclaimer