GithubHelp home page GithubHelp logo

envdir's Introduction

envdir

Build Status

This is a Python port of daemontools' envdir.

Why?

Because it's small enough that it shouldn't be tied to a bigger software distribution like daemontools. Also, this Python port can easily be used on Windows, not only UNIX systems.

Installation

pip install envdir

or:

easy_install envdir

Usage

Command line

Quoting the envdir documentation:

envdir runs another program with environment modified according to files in a specified directory. Interface:

envdir d child

d is a single argument. child consists of one or more arguments.

envdir sets various environment variables as specified by files in the directory named d. It then runs child.

If d contains a file named s whose first line is t, envdir removes an environment variable named s if one exists, and then adds an environment variable named s with value t. The name s must not contain =. Spaces and tabs at the end of t are removed. Nulls in t are changed to newlines in the environment variable.

If the file s is completely empty (0 bytes long), envdir removes an environment variable named s if one exists, without adding a new variable.

envdir exits 111 if it has trouble reading d, if it runs out of memory for environment variables, or if it cannot run child. Otherwise its exit code is the same as that of child.

Alternatively you can also use the python -m envdir form to call envdir.

Python

To use envdir in a Python file (e.g. Django's manage.py) you can use:

import envdir
envdir.read()

envdir will try to find an envdir directory next to the file you modified.

It's also possible to explicitly pass the path to the envdir:

import os
import envdir

envdir.read('/etc/mysite/envdir')

Feedback

Feel free to open tickets at https://github.com/jezdez/envdir/issues. Say thanks at https://www.gittip.com/jezdez/.

Changelog

0.2 (07/10/2013)

  • Added ability to use envdir from Python.

0.1 (07/10/2013)

  • Initial release.

envdir's People

Contributors

jezdez avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.