Small fixes for the dependencies file used by Hadoop automatic installer.
Merge pull request #39 from jtaleric/master

Bash script fixes
Merge branch 'master' of https://github.com/ibmcb/cbtool
1 Bugfixes for cassandra_ycsb
2 Bugfixes for mongo_yscb
3 Changes to make ibm_daytrader more portable: now the instance name and
the username that CB uses to connect to the VM can be different
4 Bugfixes for hadoop
5 New Virtual Application type: redis_ycsb
Some (okay, a lot, of files that I forgot to add).
Changes:

1) Bugfix for --hard_reset option on the CLI, preventing an error
from being returned while trying to remove log files that are
not (still) present on the disk.

2) Better support for Access Control on Simulated Clouds, with
first-fit and random placement algorithms that do take in account
the host "size" (i.e., available memory and cpu) while placing VMs.

3) Support for (package and pip) repository IP address override
while running install/configure utilities.

4) New complete regression test run.
Bugfix for the GUI. The changing of the experiment identifier after the
initial attachment was resulting in a situation where the GUI was unable to
display the application metrics correctly (due to a fuaulty re-initialization
routine on the reported_runtime_app_VM_metric_names_USERNAME collection). This
commit msilva fixes this situation.
Small bugfix for value generation according to an exponential distribution.
When calling the method "expovariate" in python, one should use 1/mean, instead
mean as the parameter.
Added support for direct connection to the libvirt daemon on compute nodes
in OpenStack clouds with KVM-based virtualization

Fixed a bug that prevented VMs from being properly removed in case of VApp
deployment failure in OpenStack.

Added a new method to check if a VM completed its boot process: "run_command".
With this method, CB will run a command and consider that the VM is booted in
case the exit status is 0.
Changes:

1) Added "msgpub" to the list of API calls. An example of usage follows:
api.msgpub("TESTSIMCLOUD","VM","channel name","some message").

2) Added "hostalter" to the list of API calls. Usage exactly identical to other
*alter (e.g., vmalter, aialter) calls.

3) Users can now replace attributes on objects through a msgpub API call. For
instance, attaching a vm with "vmattach tinyvm auto empty iron32
pause_provision_started async" would cause the VM to pause and wait for the user
to publish a message. At this point, the user could run its own custom placement
engine mechanism and then communicate its decision back to the VM with an API
call like api.msgpub("TESTSIMCLOUD", "VM", "staging",
"vm_2;continue;host_name:simhosta1"), effectively overriding the cloud's
placement engine. Evidently, the cloud has to provide support for placement
engine overriding (e.g., OpenStack).

4) The coremark Virtual Application type has now the number of operation
determined by the combination of the parameters LOAD_LEVEL*LOAD_FACTOR.

5) Several simplifications and improvements for the *ycsb Virtual Application
types (i.e., redis_ycsb, cassandra_ycsb, mongo_ycsb), including a new parameter
RECORD_SIZE.
Two small changes:

1) Bugfix for SimCloud. Now the host_resource_update method is called even
when the actual placement is determined by an external engine (communicated
back to CB through the pubsub mechanism).

2) The AI/VApp specific attribute "sut" is now propagated to the VMs. Useful
in case an external placement engine needs to make decisions for all VMs
that belong to a given AI/VApp.
Added support for altering object attribute using deltas (only works for
numerical attributes obviously). To use this, just append to value to
be changed with "C-" or "C+". For instance, to change the attribute on a host
do "hostalter simhostd2 someattribute C+3", and the current value of the
attribute "someattribute" will be incremented by 3.
Bugfix: When running CBTool's Orchestration Node outside of the OpenStack's
Controller Node, make sure that connections established between CBTOOL and the
Keystone daemon are explicitly closed as soon as they are no longer needed.
Merge branch 'master' of https://github.com/jtaleric/cbtool into jtaleric-master2

Conflicts:
	clients/ycsb_workload.py
	lib/clouds/osk_cloud_ops.py
	scripts/cassandra_ycsb/cb_setup_ycsb.sh
	scripts/cassandra_ycsb/cb_ycsb_common.sh
Merged Joe Talerico's changes
Merge branch 'jtaleric-master2'
Additional changes for Floating IP support in OpenStack (still requires
additional work).
Bugfixes for API calls related to performance metrics

Bugfixes for Cassandra YCSB shell scripts.
Merge remote-tracking branch 'upstream/master'

Conflicts:
	lib/clouds/osk_cloud_ops.py