Skip to main content

A framework that facilitates shell and batch scripting in Python

Project description

Introduction

BlazeCommandHelper (BCH) is a framework that facilitates the quick creation of shell and batch scripts. It provides a core command (bch) which locates sub-commands from system dirs, user dirs, and installed python packages (through the “blazech.commands” endpoint).

Features

  • locates plugin commands from various places

  • provides logging facilities

  • provides configuration file facilities (needs work)

The goal is to have an API that facilitates interaction between the environment, command line options, and configuration files ala pip.

Usage

Install BCH using easy_install or pip. Once installed, create a file for your first command:

# file location:
# *nix: ~/.blazech/command_hwp.py
# windows: %APPDATA%\.blazech\command_hwp.py

# file contents
from blazech.commands import BaseCommand

class Command(BaseCommand):
    name = 'hello-world'
    help = 'say hello'

    def create_arguments(self):
        #self.parser is the argparse parser for this sub-command
        self.parser.add_argument(
            '-n', '--name',
            help='who do you want to say hello to',
            default='world'
        )

    def execute(self, args):
        print 'hello %s' % args.name

to run:

# bch -h
usage: bch [-h] [-v] [-q] {hello-world} ...

positional arguments:
  {hello-world}
    hello-world     say hello
<...snip...>

$ bch hello-world
hello world

$ bch hello-world -n foo
hello foo

Questions & Comments

Please visit: http://groups.google.com/group/blazelibs

Current Status

Primary use cases work for me, but b/c of time constraints will probably move forward slowly.

The development version is installable with easy_install BlazeCommandHelper==dev.

Project details


Download files

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

Source Distribution

BlazeCommandHelper-0.1.tar.gz (9.3 kB view hashes)

Uploaded Source

Built Distribution

BlazeCommandHelper-0.1-py2.6.egg (19.8 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