Upgrading and Restarting Salt on OS X
I have been working a lot with salt this month on OS X. I have done some work in the past with Linux and it is a much more pleasant experience. Recently I have salted the installation of DataDog on a fleet of Mac Minis. My initial attempts did not work for several reasons. First, I was getting an error message from salt complaining that list indicies must be integers, not str. This turned out to be a python bug that was resolved in the latest version of salt. After upgrading salt-master and salt-minion to the latest versions I was getting yet another error stating that global name ‘salt_system_encoding’ is not defined. It turns out that this error can be resolved by restarting salt-minion. This turned out to be an issue on OS X because if you attempt to simply restart the process with salt-minion restart it hangs up and does nothing. If you try to run kill, or killall it is not able to match the name salt-minion for some reason. At first I was logging into each box manually and kill 9ing, but this kind of defeated the entire purpose of salt so I was determined to find a better way. This is where pkill comes in to save the day. pkill is able to match on salt-minion and is a working solution to restart salt-minion. On OS X salt-minion appears to run as a super daemon and immediately restarts if you try to kill it. This is not so bad since all we need to do to resolve the errors above is kill all of the old salt-minion processes. The complete process to upgrade and restart salt-minion on OS X is outlined below:
- Upgrade Salt (Assuming you installed salt with pip)
`salt '*' cmd.run '/usr/local/bin/pip install salt --upgrade'`
- Restart Salt Minion (Be extra careful with this command)
`salt '*' cmd.run 'sudo pkill -f salt-minion'`
- Verify that you are on the latest version (salt-minion 2015.5.5 (Lithium) as of this post)
`salt '*' cmd.run '/usr/local/bin/salt-minion --version'`
Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.
Check out some more stuff to read down below.
Most popular posts this month
- Lev Lazinskiy
- SQLite DB Migrations with PRAGMA user_version
- My Custom Miniflux CSS Theme
- Convert Markdown to PDF in Sublime Text
- Making cgit Pretty
Recent Favorite Blog Posts
This is a collection of the last 8 posts that I bookmarked.
- The social contract of writing from jola.dev
- My Running Tips from Kevin Bell's Blog
- tweet from Derek Sivers blog
- Rewrote my blog with Zine from Drew DeVault's blog
- A eulogy for Vim from Drew DeVault's blog
- Pluralistic: AI "journalists" prove that media bosses don't give a shit (11 Mar 2026) from Pluralistic: Daily links from Cory Doctorow
- Offline 23 hours a day from Derek Sivers blog
- Pluralistic: California can stop Larry Ellison from buying Warners (28 Feb 2026) from Pluralistic: Daily links from Cory Doctorow
Articles from blogs I follow around the net
Initial impressions of Claude Fable 5
I didn't have early access to today's Claude Fable 5 release, but I've spent the past ~5.5 hours putting it through its paces. My initial impressions are that this is something of a beast. It's slow, expensive and has been quite happily churning through ev...
via Simon Willison's Weblog: Entries June 9, 2026A Ride on a Tortillard from Quebec City to La Malbaie
A Father-Son Excursion on the Century-Old Train de Charlevoix
via High Speed June 9, 2026Pluralistic: Naomi Kritzer's "Obstetrix" (09 Jun 2026)
Today's links Naomi Kritzer's "Obstetrix": When forced birth cultists become forced obstetrics militants. Hey look at this: Delights to delectate. Object permanence: DD-WRT; iTunes DRM is illegal; Fingertip magnet; Sony passwords v Gawker passwords; RIAA r...
via Pluralistic: Daily links from Cory Doctorow June 9, 2026Generated by openring