Custom Salt development services

Below I'm offering a couple of custom Salt development services. If you didn't find a service to meet your needs (e.g., salt-api integration work), drop me a line at to discuss a custom engagement.

Backporting existing patches

Let’s say you were bitten by a critical bug in Salt that has an existing but unreleased fix (even minor versions like 2019.2.1 or 3000.2 had some regressions). Even if it is released, maybe you are unable to upgrade to the latest bleeding-edge rolling release due to stability or compatibility issues (and fixes are no longer backported to previous stable versions unless they are CVEs). Or maybe you were wrongly expecting that a much-needed feature PR against the master branch would be included in the upcoming release but were told that it is feature frozen, and you have to wait another four months for the next one.

What to do?

Well, you have the bulletproof option - fork the Salt repo, apply the patches, then build & deploy your own packages. For a company that has a large minion fleet, a complex set of states, and lots of Salt patches, this is the most viable path.

However, it takes a lot of efforts:

What if you do not have so many resources?

As an engineer, you need to get things done quickly. There should be a simple way to ship patched or custom modules. And indeed, it is possible to drop a module into the salt://_modules dir and sync it via saltutil.sync_modules. But this approach raises a few questions:

Hire me!

I can do all the low-level patching work, so you can focus on your infrastructure needs instead of fighting with various Salt bugs and upgrade cycles. It is possible to patch almost any part of Salt code, even if you run multiple versions simultaneously.

If you do not have a budget, I published a detailed guide that explains the process: Patching Salt Modules.

Custom module development