Use instance name as prefix when snapshot_name not defined

Change-Id: Icaaa90e1f8761cd59a8c932ee00856222f358860
add repodiff output based on the configured repo

* repo diff between old=production new=stage
* or repo diff between old=stage new=testing

Capture the data in the console and log
This is not capturing all the output w/ command, shell
or raw.

Change-Id: I78ed406bd036dfe927ad82f5d07b7edb3adb4d32
Refactor and simplify bash scripts

Simplifies run.sh by
- moving all common methods to functions.bash
- sharing the generate_settings_file function between run and
  generate-settings-file.sh
- making setting.sh into an executable script so that the
  following works
      source /path/to/my-khaleesi-settings.rc
     ./generate-settings-file.sh icehouse-multi-rhel7.yml

Change-Id: Iaf59ea066c2909393b879a84326c633b69da5bfe
get_nodes: more robust handling of network-type

When hosts are added, add_hosts gets called for 'nova' and 'neutron'
without verifying if the nodes_created and floating_ips have any value.
This resulted in long skip messages and fails when nodes_created is
None but floating_ips is just text "unchanged ... ".

This changeset
- ensures that tasks are skipped when any of the nodes_created or
  floating_ips is Node
- The task prints the current os_network_type and the expected_network_type
- simplifies when: '"{{ foo }}" == "bar"' to "foo == 'bar'"

Change-Id: I13daf729fa54c6198ccdde7ec669367712cd88e5
run.sh: fix typo in var names that caused critical errors

Change-Id: I606d8147811a1eb8f3c62ecfe237f6955cd7ee73
Collapse all fact setting to a single task

Use the template during set_facts that may or may not be set for
individual nodes. This gets rid of extraneous tasks just for slightly
different node types.

Do the same thing during get_nodes when first adding the hosts to the
in-memory inventory.

Change-Id: I3ae30b10e65c35456daecbee34d82bf4b0fd6a5a
packstack/neutron: add ml2-plugin role

Change-Id: I2789169304e3badfa59fb43ca23f5e646c2a1bb2
Refactors tempest role into setup and run

Splits tempest role into setup and run. Changes include
- split tempest/tasks/main into tempest/setup and tempest/run
- define appropriate defaults for the two new roles
- move common tasks to playbooks/tempest.yml
- minor: renames all tempest['foobar'] to tempest.foobar for legibility

Change-Id: Ibb788ed993b826de5dbcefe5d0995c5a539521d7
tempest: multiple setup methods (packstack, config_script)

Adds a flag tempest.setup_method to select how tempest should be setup
Preserves the existing behaviour to use the packstack/puppet scripts to
setup tempest. Setting tempest.setup_method to tempest/config_script would
use the redhat-openstack/tempest config_tempest script to setup and
generate the tempest.conf file.

Change-Id: I4e99a87a1df46ec34adf09ee3b05784030754b72
Support astapor and openstack-puppet-modules from source

Source support for astapor already present. Adds support for
openstack-puppet-modules from source. Cannot use git module yet since
recursive is not supported until Ansible 1.6.

Must set use_astapor, astapor_branch, astapor_repo and use_opm_src,
opm_branch, opm_repo.

Change-Id: Id00f4d0fcea4d41b0ec5cebdf739dbf0391421be
rhel,centos were missing the linux/tasks/main.yml

* setup the meta/defaults.yml to call the linux task

Change-Id: I3cdb7ed2da70356de8dc77643cf0630c7049fbdc
run.sh: fix critical error that prevents cleanup

Change-Id: Id7e1b05716ecf4e773410e277aa18ac86b1feb95
add iptables-services rpm to rhel, req rhel7

RHEL7 stage job is failing due to iptables not starting.

/Stage[main]/Firewall::Linux::Redhat/Service[iptables]/ensure:
change from stopped to running failed: Could not start
Service[iptables]: Execution of '/sbin/service iptables start

Change-Id: I0ce2efb0916afae1c9c3d24b8b9b0422a89cdb71
rhel7 iptable service workaround enable only if flag is set

Change-Id: I4d8868c9ae9476952bfc48d03113e39dc0b0fe1b
run.sh: Fix critical error when skipping tags

Change-Id: I8bf751aded638286de877b82a248040d440d8802
workaround for rabbitmq-server on rhel7, /var/run/rabbitmq

Change-Id: Ibf403ae6142d5c7e1e813401a20053d55a20c504
Remove Foreman from the add hosts task

Change-Id: Id06ff628333e99640da79ebb237d731c713c992c
Change pre to post in the foreman playbook

Change-Id: I990cc6c4fb01d87be064ee5e429364e7814dea38
python-kombu is required for glance

Change-Id: Iafe00a640168aa4d65fe7fc39fa9a4c689662aa5
Allow specification of a destination directory for source clone

This allows a destination directory to be specified for the clone of the
astapor and opm source, to account for differeneces in versions.

Change-Id: Ief7f7f4cd77876e9015b2133cd79616575241c62