• Stars
    star
    702
  • Rank 62,217 (Top 2 %)
  • Language
    Perl
  • Created over 13 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Rex, the friendly automation framework

Rex, the friendly automation framework

The main ideas behind Rex are:

  1. Puts you in charge

    Rex acknowledges that instead of silver bullets, there is more than one way to manage it.

    It's friendly to any combinations of local and remote execution, push and pull style of management, or imperative and declarative approach. Instead of forcing any specific model on you, it trusts you to be in the best position to decide what to automate and how, allowing you to build the automation tool your situation requires.

  2. Easy to get on board

    Automate what you are doing today, and add more tomorrow.

    Rex runs locally, even if managing remotes via SSH. This means it's instantly usable, without big rollout processes or anyone else to convince, making it ideal and friendly for incremental automation.

  3. It's just Perl

    Perl is a battle-tested, mature language, and Rex code is just Perl code.

    This means whenever you reach the limitations of the built-in Rex features, a powerful programming language and module ecosystem is always at your fingertips to seamlessly extend it with modules from CPAN or with your own code. As a bonus, you can also use the usual well-established tools and workflows, like IDE integration for syntax highlighting, linting and formatting, or authoring and publishing Rex modules on CPAN. With the use of Inline and FFI::Platypus modules, it's friendly to code written in other languages too. So after all, it's not just Perl.

Getting started

We have a Getting started guide on the website that should help you with the first steps.

Installation

There are several methods to install (R)?ex: use your distro's package manager, download it from CPAN or build it from source. Check out the Get Rex page on the website for the different options, and choose the one that fits you best.

Build from source

To build (R)?ex from source, you need to install Dist::Zilla:

cpanm Dist::Zilla

Dist::Zilla provides the dzil command, which you can use to install (R)?ex dependencies:

dzil authordeps | cpanm
dzil listdeps | cpanm

Some of the optional dependencies might not be available on all platforms, but to install them as well, use this command:

dzil listdeps --suggests | cpanm

Then to install the OS-specific dependencies and (R)?ex itself:

dzil install

If you'd like to build a .tar.gz release file:

dzil build

Need help?

If a new user has difficulties to get on board, then it's a bug. Let us know via one of our support channels!

Contributing

All contributions are welcome: documentation, patches, bug reports, ideas, promoting (R)?ex at conferences and meetups, or anything else you can think of.

For more details, see the Contributing guide in the repo and the Help (R)?ex page on the website.

More Repositories

1

repositorio

Tool to administrate linux repositories
Perl
55
star
2

rex-recipes

Community Recipes for Rex
Perl
26
star
3

rexify-website

Website content and code for rexify.org
CSS
14
star
4

rex-apache-deploy

Manage Website deployments (for PHP, Perl, Tomcat, ...)
Perl
13
star
5

rex-jobcontrol

Simple Webinterface to control Rex
Perl
10
star
6

rex-build

Rex Build and Test Scripts
REXX
7
star
7

rex-foreman

Module to access hosts from foreman
Perl
4
star
8

rex-augeas

Augeas Module for (R)?ex - Merged into Rex Core (v1.0.0)
Perl
4
star
9

eclipse-rex-plugin

A plugin to run Rex tasks from within Eclipse
Java
4
star
10

rex-jenkins

A module to manage jenkins
Perl
3
star
11

rex-docker

Module to manage docker containers
Perl
3
star
12

templates.rexify.org

Code of templates.rexify.org
Perl
3
star
13

rex-certencryption

Encrypt your data with OpenSSL/RSA keys
Perl
3
star
14

rex-project

A class to manage deployment projects
Perl
2
star
15

rex-io-integration

Perl
2
star
16

service-webserver

Example Webserver service
2
star
17

ldap-sssd-ssh-rex

Example Rex Project, setting up OpenLDAP, SSSD and SSH
2
star
18

rex-puppetdb

Module to query puppetdb
Perl
2
star
19

rex-fail2ban

Small fail2ban module
Perl
2
star
20

rex-keepalived

Example Keepalived module
Perl
1
star
21

rex-apache

Example Apache module
Perl
1
star
22

rex-trocla

Trocla Module for Rex
Perl
1
star
23

rex-haproxy

Example HAProxy module
Perl
1
star
24

rex-artifactory

Download artifacts from Artifactory
Perl
1
star
25

box.rexify.org

code of box.rexify.org
JavaScript
1
star
26

service-loadbalancer

Example Loadbalancer Service with Keepalived and HAProxy
1
star
27

rex-drone

Special connection method to lower communication overhead
Perl
1
star
28

rex-jobcontrol-plugin-baremetal

Baremetal provisioning plugin for Rex JobControl
Perl
1
star
29

rex-application

A class to manage application deployments
Perl
1
star
30

rex-nginx

Nginx module for Rex
Smarty
1
star
31

modules.rexify.org

code of modules.rexify.org
JavaScript
1
star
32

atom-rex

Atom Grammar for the Rex configuration and deployment framework
1
star
33

rex-kvm-agent

KVM agent for Rex to communicate with the VM over serial line
Perl
1
star
34

rex-logwatch

Small logwatch module
Perl
1
star
35

rex-jobcontrol-plugin-kvm

KVM provisioning plugin for Rex JobControl
Perl
1
star
36

rex-jobcontrol-plugin-docker

Docker provisioning plugin for Rex JobControl
Perl
1
star