install -d -m0755 build-doc
+if command -v dpkg >/dev/null; then
+ for package in python-dev python-pip python-virtualenv doxygen ditaa; do
+ if [ "$(dpkg --status -- $package|sed -n 's/^Status: //p')" != "install ok installed" ]; then
+ # add a space after old values
+ missing="${missing:+$missing }$package"
+ fi
+ done
+ if [ -n "$missing" ]; then
+ echo "$0: missing required packages, please install them:" 1>&2
+ echo "sudo apt-get install $missing"
+ exit 1
+ fi
+else
+ for command in virtualenv doxygen ditaa; do
+ if ! command -v "$command" >/dev/null; then
+ # add a space after old values
+ missing="${missing:+$missing }$package"
+ fi
+ done
+ if [ -n "$missing" ]; then
+ echo "$0: missing required command, please install them:" 1>&2
+ echo "$missing"
+ exit 1
+ fi
+fi
+
if [ ! -e build-doc/doxygen/xml ]; then
doxygen
fi
-dia --filter=png-libart --export=doc/overview.png.tmp doc/overview.dia
-
-mv -- doc/overview.png.tmp doc/overview.png
-
cat src/osd/PG.h src/osd/PG.cc | doc/scripts/gen_state_diagram.py > doc/dev/peering_graph.generated.dot
cd build-doc
fi
cd ..
+./virtualenv/bin/pip install --quiet -e 'git+https://github.com/NewDreamNetwork/sphinx-ditaa.git#egg=sphinx-ditaa'
+
install -d -m0755 \
output/html \
output/man
device. Qemu/KVM also has a direct RBD client, that avoids the kernel
overhead.
-.. image:: overview.png
+.. ditaa::
+
+ /---------+-----------+-----------\/----------+------\/---------\/-----------\
+ | ceph.ko | ceph-fuse | libcephfs || kernel | Qemu || ||librados |
+ |c9EE |c3EA |c6F6 || /dev/rbd | /KVM || ||c6F6 |
+ +---------+-----------+-----------+|c9EE |c3EA || |+-----------+
+ | Ceph DFS (protocol) |+----------+------+| radosgw || |
+ | +-----------------+| || || |
+ | | ceph-mds || RBD (protocol) || || |
+ | |cFA2 || ||cFB5 || |
+ +---------------+-----------------++-----------------++---------++ |
+ | |
+ | +=------+ +=------+ |
+ | |cls_rbd| |cls_rgw| |
+ | +-------+ +-------+ |
+ | |
+ | ceph-osd |
+ |cFB3 |
+ \----------------------------------------------------------------------------/