deploy: Use one shared dir instead of three

Until now we had pithos_dir, archip_dir and image_dir explicitly
exported by the NFS component. This is practically useless.

Let NFS server export only shared_dir (e.g. /srv) so that everything
under it is shared across NFS clients.

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
ci: Update schema configuration files

..to comply with the latest deploy changes.

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
deploy/ci: Let extra_disk be /dev/vdb by default

In case of --autoconf the deployment is done on node1. This
node should not have an extra disk (currently ci cannot create
instances with 2 disks).

This way the only difference between snf-deploy and snf-ci conf
files is the testing_vm option.

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
deploy: Fixes related to the GanetiDev component

Install the deb and cabal packages required for the latest ganeti
version (master branch of official repo).

Clone both official ganeti and snf-ganeti under config.shared_dir
(i.e. /srv/src). In ganeti-qa dev node is the same with nfs
so all qa nodes will see the same src and will be able to install
it from source (make install).

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
deploy: Exit if required components fail to setup

Do not try: except: during installation of the required components
otherwise deploy could silently fail and continue execution.

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
deploy: Introduce helper context methods

..for getting all nodes, all ips and cluster nodes of each context.

Use find_all_nodes() config method that recursively parses
corresponding section options of the requested setup.

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
deploy: Fix qa-sample.json template

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
deploy: Add ganeti-instance-debootstrap template

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
docs: Update snf-deploy docs

Update sections related to configuration files, and especially
the setups.conf and synnefo.conf.

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
deploy: Fix vcluster wrt disk images

Remove the `os` setting from vcluster.conf and keep only one
image URL (which will also be removed in following patches
and replaced by either a debootstrap process or an official
debian base image from snf-image repo).

Use truncate instead of dd to create the local file
used for extra disk in the cluster's VMs.

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
deploy: Do create vg no matter what

If an extra disk found (node_info.extra_disk) then use it.
Otherwise create a raw file under / and losetup it.

Add new option vg_size to reflect the size of the volume group
(the physical group actually) of a Ganeti node. Use it to
create the raw file if the extra disk is not found.

Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>