salt-sls


Namesalt-sls JSON
Version 1.0.1 PyPI version JSON
download
home_pagehttps://gitlab.com/vmware/pop/salt-sls
SummaryRun single a Salt SLS file agentless locally.
upload_time2023-09-05 18:18:11
maintainer
docs_urlNone
authorTyler Levy Conde
requires_python>=3.8
licenseApache Software License 2.0
keywords salt sls agentless masterless minionless
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ========
salt-sls
========

.. image:: https://img.shields.io/badge/made%20with-pop-teal
   :alt: Made with pop, a Python implementation of Plugin Oriented Programming
   :target: https://pop.readthedocs.io/

.. image:: https://img.shields.io/badge/made%20with-python-yellow
   :alt: Made with Python
   :target: https://www.python.org/


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 <https://pop.readthedocs.io/>`__, 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:

* `Intro to Plugin Oriented Programming (POP) <https://pop-book.readthedocs.io/en/latest/>`__
* `pop-awesome <https://gitlab.com/vmware/pop/pop-awesome>`__
* `pop-create <https://gitlab.com/vmware/pop/pop-create/>`__

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
+++++++++++++++++

   .. code-block:: bash

      pip install salt-sls

Install from source
+++++++++++++++++++

.. code-block:: bash

   # 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:

.. code-block:: bash

   python run.py examples/test.sls

Or using the `sls` command from pypi:

.. code-block:: bash

   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:

.. code-block:: yaml

   # 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 <https://gitlab.com/vmware/pop/salt-sls/issues>`__ for a list of
proposed features (and known issues).

Acknowledgements
================

* `Img Shields <https://shields.io>`__ for making repository badges easy.



            

Raw data

            {
    "_id": null,
    "home_page": "https://gitlab.com/vmware/pop/salt-sls",
    "name": "salt-sls",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "salt,SLS,agentless,masterless,minionless",
    "author": "Tyler Levy Conde",
    "author_email": "tyjohnson@vmware.com",
    "download_url": "https://files.pythonhosted.org/packages/8a/a2/4efe611b9a8ed696e794115d924dd7dacb90d0f8125f0753300ae1008d97/salt-sls-1.0.1.tar.gz",
    "platform": null,
    "description": "========\nsalt-sls\n========\n\n.. image:: https://img.shields.io/badge/made%20with-pop-teal\n   :alt: Made with pop, a Python implementation of Plugin Oriented Programming\n   :target: https://pop.readthedocs.io/\n\n.. image:: https://img.shields.io/badge/made%20with-python-yellow\n   :alt: Made with Python\n   :target: https://www.python.org/\n\n\nRun 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.\n\n\nAbout\n=====\n\n`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.\n\n\nWhat is POP?\n------------\n\nThis project is built with `pop <https://pop.readthedocs.io/>`__, a Python-based\nimplementation of *Plugin Oriented Programming (POP)*. POP seeks to bring\ntogether concepts and wisdom from the history of computing in new ways to solve\nmodern computing problems.\n\nFor more information:\n\n* `Intro to Plugin Oriented Programming (POP) <https://pop-book.readthedocs.io/en/latest/>`__\n* `pop-awesome <https://gitlab.com/vmware/pop/pop-awesome>`__\n* `pop-create <https://gitlab.com/vmware/pop/pop-create/>`__\n\nGetting Started\n===============\n\nPrerequisites\n-------------\n\n* Python 3.8+\n* git *(if installing from source, or contributing to the project)*\n\nInstallation\n------------\n\nIf wanting to use ``salt-sls``, you can do so by either\ninstalling from PyPI or from source.\n\nInstall from PyPI\n+++++++++++++++++\n\n   .. code-block:: bash\n\n      pip install salt-sls\n\nInstall from source\n+++++++++++++++++++\n\n.. code-block:: bash\n\n   # clone repo\n   git clone git@vmware/pop/salt-sls.git\n   cd salt-sls\n\n   # Setup venv\n   python3 -m venv .venv\n   source .venv/bin/activate\n   pip install .\n\nUsage\n=====\n\nExamples\n--------\n\nTo run your SLS files, you can use either the standard Python command or the convenient `sls` command.\nYou can also set specific configuration options through a `my_config.yaml` file.\n\n\nUsing the standard Python command in the cloned repo:\n\n.. code-block:: bash\n\n   python run.py examples/test.sls\n\nOr using the `sls` command from pypi:\n\n.. code-block:: bash\n\n   echo \"test:\\n  test.nop:\\n    - name: state\" > test.sls\n   sls test.sls\n\nConfiguration\n=============\n\nSet up configuration options for `salt-sls` through a `my_config.yaml` file. Here's an example:\n\n.. code-block:: yaml\n\n   # my_config.yaml\n   salt_sls:\n     cachedir: /var/log/salt\n     # Add any minion config opts you want to use under the \"minion_opts\" key.\n     # Refer to the [official minion config documentation](https://docs.saltproject.io/en/latest/ref/configuration/minion.html) for details.\n     minion_opts: {}\n\nRoadmap\n=======\n\nReference the `open issues <https://gitlab.com/vmware/pop/salt-sls/issues>`__ for a list of\nproposed features (and known issues).\n\nAcknowledgements\n================\n\n* `Img Shields <https://shields.io>`__ for making repository badges easy.\n\n\n",
    "bugtrack_url": null,
    "license": "Apache Software License 2.0",
    "summary": "Run single a Salt SLS file agentless locally.",
    "version": "1.0.1",
    "project_urls": {
        "Homepage": "https://gitlab.com/vmware/pop/salt-sls"
    },
    "split_keywords": [
        "salt",
        "sls",
        "agentless",
        "masterless",
        "minionless"
    ],
    "urls": [
        {
            "comment_text": "pypi",
            "digests": {
                "blake2b_256": "d3e0b6446ec427cd42ea3afee4fa23cd096262d3a14ec4c31b25a758a37d0da3",
                "md5": "1cd1e64e487abf0d868de596a781618a",
                "sha256": "10134999fd37c8bd399ee5e4722649900b88863e69c8957f865bd4572cf1eaf7"
            },
            "downloads": -1,
            "filename": "salt_sls-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1cd1e64e487abf0d868de596a781618a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 8960,
            "upload_time": "2023-09-05T18:18:09",
            "upload_time_iso_8601": "2023-09-05T18:18:09.683546Z",
            "url": "https://files.pythonhosted.org/packages/d3/e0/b6446ec427cd42ea3afee4fa23cd096262d3a14ec4c31b25a758a37d0da3/salt_sls-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "pypi",
            "digests": {
                "blake2b_256": "8aa24efe611b9a8ed696e794115d924dd7dacb90d0f8125f0753300ae1008d97",
                "md5": "5676f7fdaf6248efab8ee6279d45fa25",
                "sha256": "8f305ccf0073d6fbe8f5f485ae9765e8569ff124e83ae163982a95f41947f135"
            },
            "downloads": -1,
            "filename": "salt-sls-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "5676f7fdaf6248efab8ee6279d45fa25",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 8718,
            "upload_time": "2023-09-05T18:18:11",
            "upload_time_iso_8601": "2023-09-05T18:18:11.378211Z",
            "url": "https://files.pythonhosted.org/packages/8a/a2/4efe611b9a8ed696e794115d924dd7dacb90d0f8125f0753300ae1008d97/salt-sls-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-09-05 18:18:11",
    "github": false,
    "gitlab": true,
    "bitbucket": false,
    "codeberg": false,
    "gitlab_user": "vmware",
    "gitlab_project": "pop",
    "lcname": "salt-sls"
}
        
Elapsed time: 0.11620s