Skip to main content

Mario, the devpi-plumber, helps to automate and test large devpi installations.

Project description

Build Status Coverage Status Latest Version Requirements Status

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. To get access to the latter, install Mario with the extra test requirement:

pip install devpi-plumber[test]

Mario by Example:

Among others, it can be used to automate the upload of packages:

with DevpiClient('https://devpi.company.com', 'user', 'secret') as devpi:
    devpi.use('user/testindex')
    devpi.upload('path/to/package-1.0.tar.gz')

To make it easier to perform modifications on non-volatile indices, there is a context manager that temporarily toggles the volatile flag.

with volatile_index(devpi, 'user/prodindex'):
    devpi.remove('broken_package==0.1.0')

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.

def do_maintenance(devpi):
    """ My plumbing script """
    devpi.use('user/testindex')
    # ...

users = {
    'user': {'password': 'secret'},
}
indices = {
    'user/prodindex': {},
    'user/testindex': {'bases': 'user/prodindex'},
}
with TestServer(users, indices) as devpi:
    do_maintenance(devpi)

License

New BSD

Project details


Release history Release notifications

This version
History Node

0.4.3

History Node

0.4.2

History Node

0.4.1

History Node

0.4.0

History Node

0.3.0

History Node

0.2.15

History Node

0.2.14

History Node

0.2.13

History Node

0.2.12

History Node

0.2.11

History Node

0.2.10

History Node

0.2.9

History Node

0.2.8

History Node

0.2.7

History Node

0.2.6

History Node

0.2.5

History Node

0.2.4

History Node

0.2.3

History Node

0.2.2

History Node

0.2.1

History Node

0.1.0

History Node

0.1.0dev

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
devpi_plumber-0.4.3-py2.py3-none-any.whl (8.2 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Nov 15, 2017
devpi-plumber-0.4.3.tar.gz (180.7 kB) Copy SHA256 hash SHA256 Source None Nov 15, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page