Skip to content
A collection of delicious Salt states for Django project deployments.
SaltStack Python Shell Scheme
Failed to load latest commit information.
_states Add comment & message about the syntax that the module loaded checker… Jan 15, 2016
base Add letsencrypt support Mar 2, 2016
elasticsearch Turn off elasticsearch multicast Nov 16, 2015
fail2ban Ensure fail2ban and UFW services are running. May 10, 2013
forward_logs Undo allowing empty LOG_DESTINATION in forward_logs state; add some c… Feb 24, 2016
locale Set LANG and LC_ALL even if not present initially Dec 13, 2013
memcached Adding initial common Salt states. Apr 26, 2013
newrelic_npi Use vars.use_newrelic Jan 8, 2016
newrelic_sysmon Stop force-refreshing the package database to speed things up Jan 12, 2016
nginx Stop force-refreshing the package database to speed things up Jan 12, 2016
nodejs General NPM state doesn't/shouldn't depend on a project state. Likewi… Feb 12, 2016
postfix Adding initial common Salt states. Apr 26, 2013
postgresql Add postgresql_repo (#129) May 3, 2016
project Merge remote-tracking branch 'origin/develop' into deploy-branch Mar 21, 2016
python Install all Python headers in one command. Feb 9, 2016
rabbitmq Stop force-refreshing the package database to speed things up Jan 12, 2016
salt Move default states from the project template into margarita Aug 5, 2015
solr Pointed solr-install.sh to files.caktusgroup.com after Apache removed… Jul 26, 2013
sshd Enable fail2ban whenever SSHD is configured. May 10, 2013
statsd Replace original nodejs state with a new one that pulls more recent v… Jan 5, 2016
sudo Fix sudo state dependencies and minor clean up. Feb 12, 2016
supervisor Update dependency name for pip. Feb 12, 2016
syslog Stop force-refreshing the package database to speed things up Jan 12, 2016
ufw Ensure fail2ban and UFW services are running. May 10, 2013
unattended_upgrades {DJAN-13} state to forward log files to syslog Jan 14, 2016
users [DJAN-22] Change script to less destructive name 'disable-users.py' a… Feb 25, 2016
vagrant Include users.groups in vagrant.user Aug 14, 2015
version-control Adding initial common Salt states. Apr 26, 2013
CHANGES.rst Add postgresql_repo (#129) May 3, 2016
LICENSE Include common Caktus BSD 3-clause. See #2 May 13, 2013
README.rst Feedback improvements Feb 24, 2016

README.rst

Margarita

This repository holds a collection of states and modules for deployments using SaltStack. These exist primarily to support the Caktus Django project template.

License

These states are released under the BSD License. See the LICENSE file for more details.

Contributing

If you think you've found a bug or are interested in contributing to this project check out margarita on Github.

Development sponsored by Caktus Consulting Group, LLC.

Versions

See the CHANGES.rst file for a list of changes in each version of Margarita since we started applying version numbers. The version number in the top entry is the version of Margarita that you're looking at; it's not stored anywhere else for now.

NOTE: We never update the master branch of this repo to avoid causing unexpected upgrade problems for older projects which are tracking the master branch.

To make a new release:

  • Make sure you have no local uncommited changes

  • Make sure you have the latest develop branch locally:

    git checkout develop
    git pull origin develop
    
  • Pick a new version number, attempting to follow the guidelines of Semantic Versioning.

  • Edit CHANGES.rst with the new version number and the changes since the last release. Pay special attention to documenting any changes that could break projects using older versions of Margarita.

  • Commit those changes.

  • Tag your commit:

    git tag 'X.Y.Z'
    
  • Push the updated develop branch and the tag:

    git push origin develop --tags
    
  • If this release is ready to be used by new projects based on our project template, then update margarita_version to this new version in project.sls

States and Variables

There are multiple variables that can be configured for your project. There are also some optional states that are not included in every project by default. This list of states includes documentation about all of the available states and about which variables are configurable. Those variables would be configured in your pillar.

Enable Additional Services

Configuration of various useful services including Github, New Relic, Papertrail, Travis CI, Requires.io and BitHound is documented on our External Services page.

Something went wrong with that request. Please try again.