Metadata-Version: 1.1
Name: ssmash
Version: 2.0.1
Summary: SSM AppConfig Storage Helper
Home-page: https://github.com/garyd203/ssmash
Author: Gary Donovan
Author-email: gazza@gazza.id.au
License: GNU Affero General Public License v3
Project-URL: Documentation, https://ssmash.readthedocs.io/en/latest/
Project-URL: Source, https://github.com/garyd203/ssmash
Project-URL: Tracker, https://github.com/garyd203/ssmash/issues
Description: ======
        ssmash
        ======
        
        
        .. image:: https://img.shields.io/pypi/v/ssmash.svg
                :target: https://pypi.python.org/pypi/ssmash
        
        .. image:: https://img.shields.io/pypi/pyversions/ssmash.svg
                :target: https://pypi.python.org/pypi/ssmash
                :alt: Python versions
        
        .. image:: https://readthedocs.org/projects/ssmash/badge/?version=latest
                :target: https://ssmash.readthedocs.io/en/latest/?badge=latest
                :alt: Documentation Status
        
        .. image:: https://img.shields.io/pypi/dm/ssmash.svg
                :target: https://pypi.python.org/pypi/ssmash
                :alt: Downloads
        
        .. image:: https://img.shields.io/badge/code%20style-black-000000.svg
                :target: https://github.com/ambv/black
                :alt: Code style: black
        
        `ssmash <https://ssmash.readthedocs.io>`_, the SSM AppConfig Storage Helper,
        is an easy-to-use application configuration management tool for AWS
        deployments. You specify hierarchical configuration values in a simple YAML
        file, and ``ssmash`` will turn that into an AWS CloudFormation file that
        stores your configuration values in the SSM Parameter Store.
        
        Installation
        ------------
        
        Install ``ssmash`` using ``pip``, the standard python package installer:
        
        .. code-block:: console
        
           $ pip install ssmash
        
        Example
        -------
        
        Suppose you have an input file like this:
        
        .. code-block:: yaml
        
            acme:
                shipping-labels-service:
                    block-coyotes: true
                    explosive-purchase-limit: 1000
                    greeting: hello world
        
        Then run ``ssmash``:
        
        .. code-block:: console
        
            $ ssmash -i acme_prod_config.yaml -o cloud_formation_template.yaml
            $ aws cloudformation deploy \
                --stack-name "acme-prod-config" --template-file cloud_formation_template.yaml \
                --no-fail-on-empty-changeset
        
        You will now have the following parameters in AWS Systems Manager, that can
        be loaded as a string inside your application:
        
        * ``/acme/shipping-labels-service/block-coyotes`` = "true"
        * ``/acme/shipping-labels-service/explosive-purchase-limit`` = "1000"
        * ``/acme/shipping-labels-service/greeting`` = "hello world"
        
        
        
        
        =========
        Changelog
        =========
        
        All notable changes to this project will be documented in this file.
        
        The format is based on `Keep a Changelog <https://keepachangelog.com/en/1.0.0/>`_,
        and this project adheres to `Semantic Versioning <https://semver.org/spec/v2.0.0.html>`_.
        
        
        v2.0.1 (2019-06-28)
        -------------------
        
        Fixed
        ~~~~~
        * Couldn't run script
        
        v2.0.0 (2019-06-28)
        -------------------
        
        Changed
        ~~~~~~~
        * `#22 <https://github.com/garyd203/ssmash/issues/22>`_ : Change command line
          API so that the input and output files are options, rather than arguments.
        * `#22 <https://github.com/garyd203/ssmash/issues/22>`_ : Change command line
          API so that invalidating an ECS Service is done through a chained
          sub-command, rather than additional options.
        
        Added
        ~~~~~
        * `#8 <https://github.com/garyd203/ssmash/issues/8>`_ : Support lists of plain
          values, which are stored as a SSM StringList parameter
        
        Removed
        ~~~~~~~
        * You can't specify input and output files as positional arguments any more.
          Use `--input-file FILENAME` and `--output-file FILENAME` instead.
        * The `--invalidate-ecs-service` and `--invalidation-role` options have been
          replaced with the `invalidate-ecs` command.
        
        v1.1.0 (2019-06-05)
        -------------------
        
        Added
        ~~~~~
        * Be able to automatically invalidate an existing ECS Service as part of the
          parameter deployment, so that it picks up the new configuration.
        
        v1.0.0 (2019-05-30)
        -------------------
        
        v1.0.0-rc1 (2019-05-24)
        -----------------------
        
        Added
        ~~~~~
        * ``ssmash`` script to create String SSM Parameters from a simple config file stored in YAML
        * Basic documentation in README
        
        v0.1.0 (2019-05-14)
        -------------------
        
        Added
        ~~~~~
        * First release on PyPI.
        * Cookiecutter skeleton only, no functionality
        
Keywords: ssmash application-configuration configuration AWS cloudformation infrastructure-as-code
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Software Development
Classifier: Topic :: System :: Systems Administration
