Skip to main content

Run single a Salt SLS file agentless locally.

Project description

Made with pop, a Python implementation of Plugin Oriented Programming Made with Python

Run a single SLS file locally with Salt, without the need for a master or minion setup. This agentless and simplified approach allows faster deployment and testing of SLS files.

About

salt-sls is an innovation for those who want a lightweight approach to using SaltStack. With this tool, you can run a single SLS file on your local machine without setting up the more extensive master or minion infrastructure. Whether you’re testing a new SLS or need a quick execution, salt-sls is your friend.

What is POP?

This project is built with pop, a Python-based implementation of Plugin Oriented Programming (POP). POP seeks to bring together concepts and wisdom from the history of computing in new ways to solve modern computing problems.

For more information:

Getting Started

Prerequisites

  • Python 3.8+

  • git (if installing from source, or contributing to the project)

Installation

If wanting to use salt-sls, you can do so by either installing from PyPI or from source.

Install from PyPI

pip install salt-sls

Install from source

# clone repo
git clone git@vmware/pop/salt-sls.git
cd salt-sls

# Setup venv
python3 -m venv .venv
source .venv/bin/activate
pip install .

Usage

Examples

To run your SLS files, you can use either the standard Python command or the convenient sls command. You can also set specific configuration options through a my_config.yaml file.

Using the standard Python command in the cloned repo:

python run.py examples/test.sls

Or using the sls command from pypi:

echo "test:\n  test.nop:\n    - name: state" > test.sls
sls test.sls

Configuration

Set up configuration options for salt-sls through a my_config.yaml file. Here’s an example:

# my_config.yaml
salt_sls:
  cachedir: /var/log/salt
  # Add any minion config opts you want to use under the "minion_opts" key.
  # Refer to the [official minion config documentation](https://docs.saltproject.io/en/latest/ref/configuration/minion.html) for details.
  minion_opts: {}

Roadmap

Reference the open issues for a list of proposed features (and known issues).

Acknowledgements

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

salt-sls-1.0.0.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

salt_sls-1.0.0-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

Details for the file salt-sls-1.0.0.tar.gz.

File metadata

  • Download URL: salt-sls-1.0.0.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/41.0 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.4 tqdm/4.66.1 importlib-metadata/6.8.0 keyring/24.2.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.9.18

File hashes

Hashes for salt-sls-1.0.0.tar.gz
Algorithm Hash digest
SHA256 bf708b214fea97f73a9c3957a811d33606842f7266ca4b799b548708cd249c88
MD5 5516853085c47f17f1f5710000833123
BLAKE2b-256 d38c650cf97922aa615c661ca910a86c45a731f52194e5290128286efdcedbfc

See more details on using hashes here.

File details

Details for the file salt_sls-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: salt_sls-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/41.0 requests/2.31.0 requests-toolbelt/1.0.0 urllib3/2.0.4 tqdm/4.66.1 importlib-metadata/6.8.0 keyring/24.2.0 rfc3986/2.0.0 colorama/0.4.6 CPython/3.9.18

File hashes

Hashes for salt_sls-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d6f5a7a372adf0bd6d0c3c764b06af11319f64302fed346d02972a7c6bd133d9
MD5 e20264f5903704c063cafd229e2ebafe
BLAKE2b-256 0f41318d92c4d6b810ef915f32d192c2c8a3879b35e3bb6e4436aa0520cbaf6f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page