Skip to main content

Command-line interface to Sepior pipeline server.

Project description

Command-line interface to the Sepior Pipeline.

Requirements

Python 3.5

Install using pyenv or pyvenv

Installation

$ pip install pipeline_cli

Usage

The tool will show a description of usage when given the –help option:

$ pipeline --help

usage: pipeline [-h] [--version] [--host HOST_NAME] {start,enqueue} ...

The pipeline utility

positional arguments:
  {start,enqueue}   sub-commands
    start           start help
    enqueue         enqueue downstream dependencies help

optional arguments:
  -h, --help        show this help message and exit
  --version, -v     show programs version number and exit
  --host HOST_NAME  specify pipeline server host. Default is
                    https://pipeline.sepior.net```

The tool is able to: 1. start a pipeline 2. enqueue downstream pipelines

Starting a pipeline

We assume you already have a pipeline file. If the pipeline file is in the current directory then simply run

$ pipeline start <version>

See pipeline start –help for more advanced usecases.

Enqueue downstream pipelines

This command is relevant if the pipeline you have is building inside the pipeline or if you manually want to (re)start downstream pipelines.

See pipeline enqueue –help for parameters.

Building the tool

Make sure you have a Python 3.5 environment with the requirements.

E.g. use pyenv:

$ pyenv virtualenv 3.5.0 pipeline-cli-venv
$ pyenv activate pipeline-cli-venv

Make sure pip is up-to-date:

$ pip install --upgrade pip

Install requirements:

$ pip install --upgrade -r requirements.txt

Build the wheel:

$ make

Development

Use the following command to install the package in the local environment during development.

$ pip install -e .

This allows you to change the code and test the pipeline cli directly.

Contributing

When contributing changes remember to update the CHANGELOG.md.

License

Proprietary. Copyright 2016 Sepior ApS.

Releasing

Do the following to release a new version:

  1. Commit changes

  2. Push changes

  3. Merge with master

  4. Update local master

  5. Find the next release version, e.g. 6.6.6

  6. Create new branch with name core/release-6.6.6

  7. Bump version in __about__.py

  8. Commit

  9. Merge with master

  10. Update local master

  11. Run ./release.sh 6.6.6

Upload to Pypi

First, perform a test upload to verify everything is nice and dandy. Then perform the real upload.

Build the code

$ make

Then define the following environment variables:

$ export PYPI_TEST_PASSWORD=""
$ export PYPI_PASSWORD=""

Test upload to pypi

You may need to register on the Pypi test server. This can be done here:

$ https://testpypi.python.org/pypi

Register:

$ twine register -p ${PYPI_TEST_PASSWORD} -r pypitest dist/pipeline_cli-6.6.6-py3-none-any.whl

Upload

$ make testpypi_upload

Goto:

$ https://testpypi.python.org/pypi/pipeline-cli/6.6.6

A check that everything looks nice.

You can check the HTML by running:

$ python setup.py --long-description | rst2html.py --no-raw > output.html

Test if it installs (do it in a different environment):

$ pip install -i https://testpypi.python.org/pypi pipeline-cli

Real upload to Pypi

Upload

$ make pypi_upload

Goto:

$ https://pypi.python.org/pypi/pipeline-cli/6.6.6

And check that every things looks nice.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

pipeline_cli-1.0.15-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file pipeline_cli-1.0.15-py3-none-any.whl.

File metadata

File hashes

Hashes for pipeline_cli-1.0.15-py3-none-any.whl
Algorithm Hash digest
SHA256 c01a379672e98fb00b5074fc89e017b2cc7b85ab7149cd4404fa9307b3d18cf0
MD5 8a7098ce950d7996472a96c67faff262
BLAKE2b-256 c437e273afc3955033045f437a9e95c5230290a8f1a5d33185549224cd84c8e2

See more details on using hashes here.

Supported by

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