cthulhu: retired DerivedObjects code

This was the stuff for building structures the v1 API wanted
in response to cluster map changes, and caching them so
that fetching them from the API was quick.

Reasons for this to go away:
 * Moving as much processing as possible outside the cthulhu
   thread: don't mind recalculating in API because API request
   handlers execute in parallel.
 * It was getting out of date wrt ServerMonitor, and hooking
   up all the ServerMonitor code to also trigger DerivedObjects
   was too much footprint for a convenience class (#8503)
 * Originally there was an O(pg_num) scan to generate these
   structures, but now we have pg_summary recalculating them
   on demand is much more reasonable.

Signed-off-by: John Spray <john.spray@redhat.com>
cthulhu: make 'manhole' module optional

One less mandatory dependency.

Signed-off-by: John Spray <john.spray@inktank.com>
calamari_rest: Make graphite module optional

One less mandatory dependency.

Signed-off-by: John Spray <john.spray@inktank.com>
calamari_rest: gracefully degrade without sqlalchemy

Makes sqlalchemy optional: even history will always appear
empty if it is absent.

One less mandatory dependency.

Signed-off-by: John Spray <john.spray@inktank.com>
cthulhu: null persistence with no sqlalchemy

One less mandatory dependency.

Signed-off-by: John Spray <john.spray@inktank.com>
doc: clean up development/

Enables build in a much more lightweight
environment (such as readthedocs.org)

Signed-off-by: John Spray <john.spray@inktank.com>
cthulhu: concentrate salt code in one place

Makes clear our interface with salt, makes our
modules importable without salt (useful for
e.g. building docs with sphinx autodoc)

Signed-off-by: John Spray <john.spray@inktank.com>
cthulhu: handle missing zerorpc

So that we can import but not run the code
if zerorpc is not installed.  This is useful
because zerorpc depends on zeromq, which is
a binary dependency.

Signed-off-by: John Spray <jspray@redhat.com>
cthulhu: cope with missing msgpack

Signed-off-by: John Spray <jspray@redhat.com>
cthulhu: handle missing zmq

Signed-off-by: John Spray <john.spray@inktank.com>
doc: improve rest api docs readability

Link from url table to viewset section as
well as example, make sidebar TOC less
verbose.

Signed-off-by: John Spray <jspray@redhat.com>
doc: commit api_examples.json

This trades of the risk of examples getting
stale for the ability to build the API docs
without a full blow development environment
to generate them.

Signed-off-by: John Spray <jspray@redhat.com>
doc: move rest-api into development tree

We used to have separate trees because rest-api
docs were public and development docs were
internal.  Now that Calamari is open source (yay)
we can have one sphinx tree to rule them all.

Signed-off-by: John Spray <jspray@redhat.com>
doc: Remove outdated calamari 1.x docs

These are way old.

Signed-off-by: John Spray <jspray@redhat.com>
doc: Move hierarchy up one level

i.e. what was doc/development is now just doc/

Signed-off-by: John Spray <jspray@redhat.com>
doc: dynamic version from get-versions.sh

Signed-off-by: John Spray <jspray@redhat.com>
make: fix lint for version.py

This was being generated without a space around the operator,
so make lint would fail if run in a tree where the version make
target had been run.

Signed-off-by: John Spray <john.spray@redhat.com>
tests: Fix to not alter the default pools

Signed-off-by: Gregory Meno <gregory.meno@inktank.com>
Merge pull request #135 from ceph/wip-avoid-default-pools

Fix tests to not alter the default pools
Fix debian dependencies

Signed-off-by: Dimitri Savineau <dimitri.savineau@enovance.com>