Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
My Salt states
Scheme Python Shell
branch: master
Failed to load latest commit information.
_states Added a native envdir state
bundle Removed wal-e dep
daemontools Update user
nginx Added a custom log format for nginx
postgresql Moved database creation code to the server
pptp Added sysctl.conf tweaking
redis Enabled the redis service (already done on debian)
salt Removed vendorized salt, environment variables
sites Removed wal-e dep
sshd Added an SSH state
supervisor Added a supervisor state
sysctl Added sysctl.conf tweaking
virtualenv Added a virtualenv state
README.rst Added a LICENSE Updated the salt state
top.sls Removed autoindex


My Salt states

These are the Salt states I use on my personal servers. Fully tested on Ubuntu 12.04 LTS. They're useful for things such as:

  • Managing Salt itself
  • Running an IRC bouncer
  • Running a VPN
  • Running a private python package index
  • Running a PostgreSQL server with continuous archiving through WAL-E, PostGIS support
  • Running a relatively secured SSH server
  • Running a local DNS cache


  • On a bare ubuntu machine, create a $HOME/salt folder and clone this repo in it.

  • Create a $HOME/salt/salt.conf file with the following content:

    SALT_MASTER = <salt master IP>
    env.user = <your user>
    env.index_url = <your index url for pip>

    (env.index_url is optional if you're fine with using the canonical python package index).

  • Create a virtualenv and install Fabric and Jinja2 in it:

    cd $HOME/salt
    virtualenv env --system-site-packages
    env/bin/pip install Fabric Jinja2
  • Bootstrap the master:

    cd states
    ../env/bin/fab -H <master ip> enable_salt:master

And to create minions, set their hostnames and do:

../env/bin/fab -H <minion ip> enable_salt:minion


See salt/README.rst and all the state's README files.


3-clause BSD license, see the LICENSE file for details.

Something went wrong with that request. Please try again.