/wright

Lightweight Ruby config management tool

Primary LanguageRubyMIT LicenseMIT

wright

Gem Version Build Status Maintainability Test Coverage Gem Dependencies

Lightweight configuration management.

Getting Started

Performing simple administrative tasks with wright is easy.

#!/usr/bin/env wright

package 'sudo'

file '/etc/sudoers.d/env_keep-editor',
     content: "Defaults env_keep += EDITOR\n",
     owner:   'root:root',
     mode:    '440'

Scripts can also be run directly from the shell.

wright -e "package 'tmux'"

If you would rather see the effects of running a wright script first, use the dry-run option:

wright --dry-run -e "package 'tmux'"

For a list of command-line parameters, see the manpage. For a more in-depth list of tasks you can perform using wright, check the resource list.

Installation

Since wright does not have any runtime dependencies apart from Ruby ≥1.9, it can safely be installed system-wide via rubygems:

sudo gem install wright

Installation on Debian-based systems

If you use Debian or a Debian-based GNU/Linux distribution such as Ubuntu or Linux Mint, you can also install wright via the PPA sometimesfood/wright:

sudo apt-key --keyring /etc/apt/trusted.gpg.d/sometimesfood-wright.gpg \
    adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys DE36B117
sudo tee /etc/apt/sources.list.d/sometimesfood-wright-trusty.list <<EOF
deb     http://ppa.launchpad.net/sometimesfood/wright/ubuntu trusty main
deb-src http://ppa.launchpad.net/sometimesfood/wright/ubuntu trusty main
EOF
sudo apt-get update && sudo apt-get -y install wright

Documentation

As a wright user, the following documents are probably going to be of interest to you:

As a wright developer, you might also be interested in the wright developer docs which can be generated via bundle exec yard.

Contributing

Contributions to wright are greatly appreciated. If you would like to contribute to wright, please have a look at the contribution guidelines.

Copyright

Copyright (c) 2012-2015 Sebastian Boehm. See LICENSE for details.