Metadata-Version: 2.0
Name: devpi-plumber
Version: 0.1.0dev
Summary: Mario, the devpi-plumber, helps to automate and test large devpi installations.
Home-page: https://github.com/blue-yonder/devpi-plumber
Author: Stephan Erb
Author-email: stephan.erb@blue-yonder.com
License: new BSD
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: BSD License
Classifier: Topic :: System :: Archiving :: Packaging
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Requires-Dist: devpi-client
Requires-Dist: devpi-server
Requires-Dist: twitter.common.contextutil

Mario the Devpi Plumber
=======================

[![Build Status](https://travis-ci.org/blue-yonder/devpi-plumber.svg?branch=master)](https://travis-ci.org/blue-yonder/devpi-plumber)
[![Coverage Status](https://coveralls.io/repos/blue-yonder/devpi-plumber/badge.png?branch=master)](https://coveralls.io/r/blue-yonder/devpi-plumber?branch=master)
[![Latest Version](https://pypip.in/version/devpi-plumber/badge.svg)](https://pypi.python.org/pypi/devpi-plumber/)
[![Requirements Status](https://requires.io/github/blue-yonder/devpi-plumber/requirements.png?branch=master)](https://requires.io/github/blue-yonder/devpi-plumber/requirements/?branch=master)


Mario, the devpi-plumber, helps to automate and test large devpi installations. It offers a simple python commandline wrapper
around the devpi client binary and utilities for using devpi in a test harness.


Mario by Example:
-----------------
Among others, it can be used to automate the upload of packages:
```python
with DevpiClient('https://devpi.company.com', 'user', 'secret') as devpi:
    devpi.use('user/testindex')
    devpi.upload('path_to_package')
```

In order to simplify the testing of such plumbing scripts, it ships with a simple context manager for starting and stopping devpi servers in tests:
```python
users = { 
    'user': {'password': 'secret'},
}
indices = {
    'user/prodindex': { },
    'user/testindex': {'bases': 'user/prodindex'},
}
with TestServer(users, indices) as devpi:
    devpi.use('user/testindex')
    devpi.upload('path_to_package')
```           

License
-------

[New BSD](COPYING)


