Skip to main content

a command-line toolbox for Ceph

Project description

ceph-workbench

ceph-workbench is a command-line toolbox for Ceph

Documentation : http://ceph-workbench.readthedocs.org/ Home page : https://pypi.python.org/pypi/ceph-workbench

Installation

  • Install Docker http://docs.docker.com/engine/installation/

  • Copy the following to ~/.bashrc:

    eval "$(docker run dachary/ceph-workbench install)"
    
  • Verify that it works:

    ceph-workbench --help
    
  • Optionally copy your OpenStack $PROJECT-openrc.sh file to ~/.ceph-workbench/openrc.sh: the ceph-qa-suite subcommand will use it.

Hacking

For best results, develop in Ubuntu 14.04 as a normal user (not root).

  • Get the code:

    git clone --recursive http://ceph-workbench.dachary.org/root/ceph-workbench.git
    
  • Set up the development environment:

    deactivate || true ; source bootstrap
    

    This creates a virtualenv containing the ceph-workbench executable and everything it needs to work.

  • Activate the development environment and run ceph-workbench:

    source virtualenv/bin/activate
    PYTHONPATH=teuthology ceph-workbench --help
    
  • Run the tests (requires OpenStack credentials to get 100% coverage):

    deactivate || true ; bash run-tests.sh
    
  • Sync the teuthology submodule:

    git submodule update --remote teuthology
    
  • Run a single test:

    tox -e py27 -- -s -k test_run tests/test_ceph_qa_suite.py
    
  • Run ceph-workbench using the dev environment of the current working directory in the docker container instead of the installed version:

    eval "$(docker/entrypoint.sh install)"
    ceph-workbench --help # use what is installed in the container
    ceph-workbench-debug --help # use ceph-workbench from the working directory
    ceph-workbench-shell bash # login the container and debug
    
  • Check the documentation : rst2html < README.rst > /tmp/a.html

Release management

  • Prepare a new version
  • version=1.3.0 ; perl -pi -e “s/^version.*/version = $version/” setup.cfg ; for i in 1 2 ; do python setup.py sdist ; amend=$(git log -1 –oneline | grep –quiet “version $version” && echo –amend) ; git commit $amend -m “version $version” ChangeLog setup.cfg ; git tag -a -f -m “version $version” $version ; done
  • Publish a new version
  • python setup.py sdist upload –sign
  • git push ; git push –tags
  • docker rmi dachary/ceph-workbench
  • docker build –no-cache –tag dachary/ceph-workbench docker
  • docker build –tag dachary/ceph-workbench:1.5.9 docker
  • docker login
  • docker push dachary/ceph-workbench
  • docker push dachary/ceph-workbench:1.5.9
  • pypi maintenance

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
ceph-workbench-1.5.19.tar.gz (107.7 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page