Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Mrs. Developer intends to be useful for developers.

Project description

mrs.developer intends to be useful for developers.

Implemented Use Cases

  • run scripts in ./bin/ from anywhere in your buildout
  • run tests from anywhere in your buildout
  • customize eggs, generate and apply patches

Run scripts from anywhere in your buildout

You have one terminal always open where you are in the root of your buildout in order to run ./bin/something from time to time? You don’t need anymore, just call:

% mrsd run <script> <arg1> ...

from anywhere in your buildout and it will result in:

% ./bin/<script> <arg1> ...

with working directory set to your buildout root.

Run tests from anywhere in your buildout

% mrsd test

Customize eggs

List eggs used by your buildout generated scripts:

% mrsd list

All of them (for now the bdists) are available for cloning:

% mrsd clone

Clone a specific egg:

% mrsd clone <egg_name_and_version>

Scripts now use this egg, instead of the one in the buildout cache.

Make changes to the egg:

% cd eggs-mrsd/<egg_name_and_version>

The egg is git controlled. You need to commit your changes to be able to generate patches.

Generate patches from commits:

% mrsd patch --generate

Create cloned eggs with patched branch:

% mrsd patch --apply

Installation

mrs.developer hooks into scripts generated by buildout to inject the paths to customized eggs. You can do this manually by running mrsd hookin after scripts are (re)created by buildout, or let the mrs.developer extension handle it for you (recommended):

[buildout]
extensions = mrs.developer

Note

mrs.developer coexists nicely with mr.developer.

The mrs.developer hook needs the mrsd command line tool available, local to your buildout or globally in your PATH (recommended).

Global install (virtualenv):

% virtualenv /path/to/mrsd/venv
% /path/to/mrsd/venv/bin/pip install mrs.developer
% ln /path/to/mrsd/venv/bin/mrsd ~/bin/mrsd -s

~/bin/ is just an example for a bin directory in your PATH.

Global install (dedicated buildout), the buildout.cfg:

[buildout]
parts = mrsd

[mrsd]
recipe = zc.recipe.egg
eggs = mrs.developer

and link it into your PATH:

% ln /path/to/mrsd/buildout/bin/mrsd ~/bin/mrsd -s

If mrsd is not in your path, the mrs.developer buildout extension will create it in ./bin/. However, in order to make full use of mrsd, it needs to be in your PATH. Don’t link the one created by the extension, use a dedicated buildout or virtualenv to install mrsd gloablly.

Project details


Release history Release notifications

This version

0

Download files

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

Files for mrs.developer, version 0
Filename, size File type Python version Upload date Hashes
Filename, size mrs.developer-0.tar.gz (32.7 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

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