<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://agora.nasqueron.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=2001%3A470%3A1F13%3AD91%3A3113%3A262%3A4553%3ABBAF</id>
	<title>Nasqueron Agora - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://agora.nasqueron.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=2001%3A470%3A1F13%3AD91%3A3113%3A262%3A4553%3ABBAF"/>
	<link rel="alternate" type="text/html" href="https://agora.nasqueron.org/Special:Contributions/2001:470:1F13:D91:3113:262:4553:BBAF"/>
	<updated>2026-04-19T23:49:22Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.46.0-alpha</generator>
	<entry>
		<id>https://agora.nasqueron.org/index.php?title=Operations_grimoire/Deploy_with_Salt&amp;diff=575</id>
		<title>Operations grimoire/Deploy with Salt</title>
		<link rel="alternate" type="text/html" href="https://agora.nasqueron.org/index.php?title=Operations_grimoire/Deploy_with_Salt&amp;diff=575"/>
		<updated>2016-11-07T20:24:39Z</updated>

		<summary type="html">&lt;p&gt;2001:470:1F13:D91:3113:262:4553:BBAF: /* Salt commands */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Where to work? ==&lt;br /&gt;
* We deploy from Ysul using:&lt;br /&gt;
** /opt/nasqueron-operations as our local copy of rOPS, authoritative for Salt&lt;br /&gt;
** /opt/staging for web application content&lt;br /&gt;
* You need to belong to the &amp;lt;code&amp;gt;salt&amp;lt;/code&amp;gt; group to be able to control Salt&lt;br /&gt;
* You need to belong to the &amp;lt;code&amp;gt;deploy&amp;lt;/code&amp;gt; group to be able to update /opt/staging (salt is a member of deploy)&lt;br /&gt;
* You want this alias: &amp;lt;code&amp;gt;alias salt sudo -u salt salt&amp;lt;/code&amp;gt; (tcsh syntax)&lt;br /&gt;
* Check salt-master is run, if not &amp;lt;code&amp;gt;service salt-master start&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Deployment workflow ==&lt;br /&gt;
=== Apply a new Salt state ===&lt;br /&gt;
# On your laptop, prepare and upload a change to Differential against rOPS repository&lt;br /&gt;
# Get the change on Ysul: &amp;lt;code&amp;gt;arc patch D607&amp;lt;/code&amp;gt;&lt;br /&gt;
# Ask Salt to apply the change&lt;br /&gt;
# Log on #nasqueron-operations something like &amp;lt;code&amp;gt;[Eglide] New user account: amj (D607)&amp;lt;/code&amp;gt;&lt;br /&gt;
# Once working, you can merge it to master&lt;br /&gt;
=== Deploy a web site ===&lt;br /&gt;
# Commit as needed&lt;br /&gt;
# Go to /opt/staging relevant subdirectory and fetch code&lt;br /&gt;
# Ask Salt to apply the matching state (if in doubt, a full run is &amp;lt;code&amp;gt;salt &#039;*&#039; state.highstate&amp;lt;/code&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
== Salt commands ==&lt;br /&gt;
To apply one state or a directory:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;salt eglide state.apply roles/shellserver/users&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To apply all:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;salt eglide state.highstate&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace &amp;lt;code&amp;gt;eglide&amp;lt;/code&amp;gt; by the server name, or &amp;lt;code&amp;gt;*&amp;lt;/code&amp;gt; to target all machines.&lt;br /&gt;
&lt;br /&gt;
When you&#039;ve a new state, ensure it&#039;s called from &amp;lt;code&amp;gt;top.sls&amp;lt;code&amp;gt; file, as the repository root.&lt;/div&gt;</summary>
		<author><name>2001:470:1F13:D91:3113:262:4553:BBAF</name></author>
	</entry>
</feed>