Book Image

Learning SaltStack

By : Colton Myers
Book Image

Learning SaltStack

By: Colton Myers

Overview of this book

Table of Contents (15 chapters)

An advanced example


Remote execution modules are endlessly flexible. The tools are there, and you can write whatever you need to extend Salt to handle your infrastructure.

However, we're not going to try to explore every possible need your infrastructure might have as that is impossible to do in the space allotted. Every environment is different, and we have explored the available tools well enough for you to be able to tackle those hurdles on your own.

Instead, we will explore a more complicated example of a remote execution module function from beginning to end and walk through the code.

The example that we will use is file.replace. This remote execution function is designed to replace text in a file based on a pattern. We can set arguments such that if a match is not found, it will prepend or append the text to the file. Here's a full list of arguments in the function declaration:

def replace(path,
            pattern,
            repl,
            count=0,
            flags=0,
         ...