Skip to main content

library to control placement in a hierarchy

Project description


crush is a library to control placement in a hierarchy

- Home page : http://
- Documentation :
- PyPi :

GNU/Linux Installation

* pip install crush

Other Installation

When using pip versions lower than 8.1 or other operating systems,
compilation is necessary and packages must be installed first.

* apt-get install -y gcc g++ python-pip python-all-dev libpython3-all-dev cmake libboost-all-dev libatomic-ops-dev
* dnf / yum / zypper install -y gcc gcc-c++ python-pip python-devel python3-devel cmake boost-devel libatomic_ops-devel
* pip install crush


* Get the code::

git clone --recursive

* Set up the development environment::

deactivate || true ; source bootstrap

* Run the tests::

deactivate || true ; bash

* Sync the libcrush submodule::

git submodule update --remote libcrush

* Run a single test::

tox -e py27 -- -s -k test_one tests/

* Check the documentation::

python build_sphinx
firefox build/html/index.html

Release management

* Prepare a new version

- version=1.0.0 ; perl -pi -e "s/^version.*/version = $version/" setup.cfg ; for i in 1 2 ; do python 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

- docker build --tag manylinux manylinux
- docker run --rm -v $(pwd):/io manylinux /io/manylinux/
OR docker run --rm -v $(pwd):/io manylinux env PYBINS=/opt/python/cp27-cp27mu/bin /io/manylinux/
- twine upload --sign wheelhouse/*crush*

- rm -fr dist
- python sdist
- twine upload --sign dist/*.tar.gz

- git push ; git push --tags

* pypi maintenance

- trim old versions at

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

crush-1.0.17.tar.gz (214.4 kB view hashes)

Uploaded source

Built Distributions

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