Skip to main content

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

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 | RSS feed

This version

0

Download files

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

Source Distribution

mrs.developer-0.tar.gz (32.7 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page