Skip to main content

Command-line argument parser for pipen.

Project description

pipen-args

Command line argument parser for pipen

Usage

from pipen import Proc, Pipen


class Process(Proc):
    """My process

    Input:
        a: Input data
    """
    input = 'a'
    input_data = range(10)
    script = 'echo {{in.a}}'

Pipen().set_start(Process).run()
$ python example.py --help
Usage: test.py [-h | -h+] [options]

Undescribed process.
Use `@configfile` to load default values for the options.

Pipeline Options:
  --name NAME           The name for the pipeline, will affect the default workdir and
                        outdir. [default: pipen-0]
  --profile PROFILE     The default profile from the configuration to run the pipeline.
                        This profile will be used unless a profile is specified in the
                        process or in the .run method of pipen. You can check the
                        available profiles by running `pipen profile`
  --outdir OUTDIR       The output directory of the pipeline [default: ./<name>-output]
  --forks FORKS         How many jobs to run simultaneously by the scheduler
  --scheduler SCHEDULER
                        The scheduler to run the jobs

Namespace <in>:
  --in.a A [A ...]      Input data

Optional Arguments:
  -h, --help, -h+, --help+
                        show help message (with + to show more options) and exit

See more examples in tests/pipelines/ folder.

Metadata for Proc envs items

The metadata in the docstring of env items determines how the arguments are defined.

class Process(Proc):
    """My process

    # other docstring sections

    Envs:
        a (<metadata>): ...
    """

The metadata could be key-value pairs separated by ;. The separator : or = is used to separate the key and value. The value is optional. If the value is not specified, it will be set to True. The keys are valid arguments of argx.ArgumentParser.add_argument, except that hidden will be interpreted as show=False in argx.ArgumentParser.add_argument. If the value of choices is not specified, the subkeys of the env item will be used as the choices.

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

pipen_args-0.9.7.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

pipen_args-0.9.7-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

Details for the file pipen_args-0.9.7.tar.gz.

File metadata

  • Download URL: pipen_args-0.9.7.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.11.3 Linux/5.15.0-1035-azure

File hashes

Hashes for pipen_args-0.9.7.tar.gz
Algorithm Hash digest
SHA256 0fea9f00217e02820b564a1b91f58f2d94dc05b1773f9ab208b10e9ecbe2d591
MD5 441c542e70ff711c2f2406c357c78f07
BLAKE2b-256 9e3e99d4195b9492afd5dac55cdb4063f5b97c360ae250d83ab5a9731473479e

See more details on using hashes here.

File details

Details for the file pipen_args-0.9.7-py3-none-any.whl.

File metadata

  • Download URL: pipen_args-0.9.7-py3-none-any.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.11.3 Linux/5.15.0-1035-azure

File hashes

Hashes for pipen_args-0.9.7-py3-none-any.whl
Algorithm Hash digest
SHA256 be65ef115d3fe34f64b954afe1a00eb8c9498e66c0faf0c9da35319ab59404c0
MD5 f441b75c3dbe54f94fafe21af8d12314
BLAKE2b-256 37bfe459e81de620a7c37d6515c342adcbcb07c7f3faa4f26b49a525fd6adeaf

See more details on using hashes here.

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