(R)?ex Deployment & Configuration Management



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.
(R)?ex 1.2.0 released. See the release notes for more details.
(R)?ex 1.1.0 released. See the release notes for more details.
View the slides of the talk An introduction to Rex from Andy Beverley.
Work with (R)?ex at adjust! Check out their job posting for details, or contact our fellow core developer, FErki.


Talk Infrastructure as Code (ger) at German Perl Workshop.


2015-11-30/2015-12-01 (Karlsruhe)

Need Help?

Rex is a pure open source project, you can find community support in the following places:

Professional support is also available.

(R)?ex Book

The Rex Book will cover all topics from simple automation scripts to multi environment and advanced deployments. This book is currently work in progress. If you want to contribute just fork the website on github.


  1. Rex Infrastructure
    1. SSH as an agent
    2. Version Control with Git
    3. Using commit hooks
    4. Example of a complete Rex code infrastructure
  2. Monitoring and Reporting
    1. Generating reports
  3. The Rex DSL
    1. Writing Rexfiles
    2. Authentication
    3. Grouping servers
    4. Using environments
    5. Using Modules
    6. Using templates
    7. Iterating over Arrays
    8. Iterating over Hashs
    9. Conditional Statements
    10. Regular Expressions
    11. Using case Statement
  4. Writing Modules
    1. Use Arrays for Resources
    2. Inheritance
    3. Passing parameters to module tasks
    4. Writing reusable, cross-platform modules
    5. Getting information of the environment
    6. Using external data sources
  5. Working with Files and Packages
    1. Working with files
    2. Using augeas to modify files
    3. Using templates
    4. Arrays and hashes in templates
    5. Installing packages
    6. Using 3rd party repositories
    7. Create your own apt repository
    8. Create your own yum repository
    9. Creating deb packages
    10. Creating rpm packages
  6. Working with the filesystem
    1. Managing directories
    2. Managing files
    3. Running a command when a file is updated
    4. Using multiple file sources
    5. Distributing directory trees
    6. Cleaning up old files
    7. Using /etc/hosts file
    8. Managing permissions
    9. Mounting filesystems
  7. Working with users and groups
    1. Managing users
    2. Managing ssh authorized_keys
    3. Managing users profile
    4. Managing groups
    5. Managing cronjobs
  8. Applications
    1. Working with Apache
    2. Working with nginx
    3. Working with MySQL
  9. Managing Datacenters and the Cloud
    1. Deploying Nagios
    2. Deploying OpenLDAP and SSSD
    3. Building High Availbility services with heartbeat
    4. Building High Availbility storage with DRBD
    5. Managing NFS servers
    6. Using IPVS / ldirector to loadbalance services
    7. Managing firewalls with iptables
    8. Managing EC2 instances
    9. Managing virtual machines with Rex::Box
  10. The Rex Ecosystem
    1. Community modules
    2. Rex.IO
      1. Baremetal Deployments
      2. Service Management
      3. Incident Management
      4. CMDB
comments powered by Disqus
Fork me on GitHub
Google Group / Twitter / GitHub / Mailinglist / irc.freenode.net #rex   -.รด.-   Disclaimer