Operations grimoire/Deploy with Salt: Difference between revisions

From Nasqueron Agora
(Created page with "== Where to work? == * We deploy from Ysul /opt/nasqueron-operations * You need to belong to the <code>salt</code> group * You want this alias: <code>alias salt sudo -u salt s...")
 
Line 1: Line 1:
== Where to work? ==
== Where to work? ==
* We deploy from Ysul /opt/nasqueron-operations
* We deploy from Ysul using:
** /opt/nasqueron-operations as our local copy of rOPS, authoritative for Salt
** /opt/stating for web application content
* You need to belong to the <code>salt</code> group
* You need to belong to the <code>salt</code> group
* You want this alias: <code>alias salt sudo -u salt salt</code> (tcsh syntax)
* You want this alias: <code>alias salt sudo -u salt salt</code> (tcsh syntax)

Revision as of 04:59, 12 September 2016

Where to work?

  • We deploy from Ysul using:
    • /opt/nasqueron-operations as our local copy of rOPS, authoritative for Salt
    • /opt/stating for web application content
  • You need to belong to the salt group
  • You want this alias: alias salt sudo -u salt salt (tcsh syntax)
  • Check salt-master is run, if not service salt-master start

Deployment workflow

  1.  On your laptop, prepare and upload a change to Differential against rOPS repository
  2. Get the change on Ysul: arc patch D607
  3. Ask Salt to apply the change
  4.  Log on #nasqueron-operations something like [Eglide] New user account: amj (D607)
  5. Once working, you can merge it to master

Salt commands

To apply one state or a directory:

salt eglide state.apply roles/shellserver/users

To apply all:

salt eglide state.highstate

Replace eglide by the server name, or * to target all machines.

When you've a new state, ensure it's called from top.sls file, as the repository root.