Metadata-Version: 1.0
Name: pyvagrantfile
Version: 0.5.5
Summary: Parser to extract data from a Vagrantfile into a data struct readable by python
Home-page: https://github.com/drewsonne/pyvagrantfile
Author: Drew J. Sonne
Author-email: drew.sonne@gmail.com
License: UNKNOWN
Download-URL: https://github.com/drewsonne/pyvagrantfile/archive/0.5.5.tar.gz
Description: |Build Status|
        
        pyvagrantconfig
        ===============
        
        Parses a vagrant file into a python object for inspect. Mainly used to
        read and build Vagrant file in python. I built this to help me write a
        utility in python which can build projects and convert Vagrantfiles to
        packer files.
        
        Supported Directives
        --------------------
        
        -  Most vm.config directives,
        -  Chef provisioner
        -  Shell provisioner
        -  VB provider
        
        Deployment
        ----------
        
        When this is ready to be deployed, you can upload it to the pip server
        
        ::
        
            $ cd $WORKSPACE/pyvagrantconfig
            $ python setup.py sdist upload
        
        Installation
        ------------
        
        After it's on the pip server, you should be able to install on the
        client by running
        
        ::
        
            $ pip install pyvagrantconfig
        
        Usage
        -----
        
        Contributing
        ------------
        
        virtualenv
        ~~~~~~~~~~
        
        When doing development and testing, it's good practice to use a
        virtualenv. A virtualenv is a sandboxed python environment which does
        not modify the system python installation You can install one as
        follows:
        
        ::
        
            $ pip install virtualenv
            $ cd $WORKSPACE/pyvagrantconfig
            $ virtualenv venv
            $ . ./venv/bin/activate
            (pyvagrantconfig)$
        
        Now that you have a working virtualenv, you can install the utility in
        development mode. Keep in mind that the 'activate' step, is valid only
        for a single session. If you close the terminal you'll have to run
        ``venv/bin/activate`` again. You can now run pip, python, and
        pyvagrantconfig while only referring to the local python environment
        created in $WORKSPACE/pyvagrantconfig. You can see this by running:
        
        ::
        
            (pyvagrantconfig)$ which pip
            $WORKSPACE/pyvagrantconfig/venv/bin/python
            (pyvagrantconfig)$ which python
        
        Development Mode
        ~~~~~~~~~~~~~~~~
        
        When testing this utility, you can install it and still edit the source
        files as follows:
        
        ::
        
            $ cd $WORKSPACE/pyvagrantconfig
            $ pip install --editable .
        
        Roadmap
        ~~~~~~~
        
        I intially tried to use pyPEG, but could not get a handle on it, so for
        now, we use a custom state parser. I want to move this to a PEG parser
        to make it easier to manage, but in the spirit of minimum viable
        product, it's up and out.
        
        -  This is currently way too specific. Needs to be rewritten to parse
           general ruby structures and extract details out of it, rather than
           looking for particular vagrant configurations.
        -  Port parser from state parser to PEG parser.
        
        .. |Build Status| image:: https://travis-ci.org/drewsonne/pyvagrantfile.svg?branch=master
           :target: https://travis-ci.org/drewsonne/pyvagrantfile
        
Keywords: vagrant,parser,ruby
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
Classifier: Natural Language :: English
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.0
Classifier: Programming Language :: Python :: 3.1
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Software Development
Classifier: Topic :: System :: Installation/Setup
