Force ASCII-8BIT since the default encoding for scripts is UTF-8 in 2.0.

See https://www.ruby-lang.org/en/news/2013/02/24/ruby-2-0-0-p0-is-released/
role delete: check for r/o role and role in a group in model

The following (existing) statement in MiqUserRole class:

    has_many :miq_groups, :dependent => :restrict

will prevent from deleting a role in a group, the 'before_destroy'
statement is to prevent a read only role from being deleted.

Therefore, there's no need to be checking for read only role
and a role in a group in the controller code.

https://bugzilla.redhat.com/show_bug.cgi?id=1126536
group delete: check for a r/o group and group used by users in a model

This fix is:
* to make sure during group removal, the check for a read-only group,
as well as a group still in use by user(s) is being made in the model,
rather than the controller.
* to simplify the (controller) code

https://bugzilla.redhat.com/show_bug.cgi?id=1126536
Added QueryCounter helper class for specs.
Snapshot creation disabled for Templates

Implemented the supports_snapshots? method

https://bugzilla.redhat.com/show_bug.cgi?id=1005285
Add upload_import_file and review_import actions to MiqAeToolsController
Add granular automate import functionality
Add modeling for template many-to-many tenant

In OpenStack, an image (TemplateOpenstack) can exist in more than one project
(CloudTenantOpenstack).  These migration and model changes allow an OpenStack
template to list the tenants it can be used in, and allows a Cloud Tenant to
list the templates associated with it.

The table is named "cloud_tenants_vms" to reflect the physical tables used in
for the join.

Despite the table name referring to the generic objects, the relationship is
purposefully restricted to Openstack templates and Openstack cloud tenants in
the association defined in the models.  This keeps the notion of the
many-to-many relationship restricted to the most specific level.

The relationship methods are named:

* TemplateOpenstack#cloud_tenants
* CloudTenantOpenstack#opentack_templates

Additionally, to facilitate keeping the relationship as specific as possible,
CloudTenant is now sublassed to CloudTenantOpenstack.  Since all of the existing
cloud tenants are only openstack tenants, the migration initializes all of the
CloudTenant records to have a type of CloudTenantOpenstack.
Support non-admin ems refresh users - OpenstackHandle

OpenStack handle changes required to support ems refresh
using non-admin credentials.
Support non-admin ems refresh users - openstack parser

Openstack parser changes required to support ems refresh
using non-admin credentials.
Support non-admin ems refresh users - test

Test changes required to support ems refresh
using non-admin credentials.
Don't automatically close the shared pipe used to get the DRb URI.

Ruby 2.0+ automatically closes all descriptors except 0, 1, 2 (input/output/error)
in child processes.  We need the child process (the server) to write it's DRb URI to
the writer descriptor so the client can read it.  Set close_on_exec to false
in the writer descriptor so it doesn't get closed on us.
See: https://bugs.ruby-lang.org/issues/5041

Fixes #459
Updates based on code review comments.
Consistent service request list and details pages

This changes the following:
* service request details page: "Date Approved/Denied" ->
  "Approved/Denied on"
* service request list: adds "Approved/Denied By" column

https://bugzilla.redhat.com/show_bug.cgi?id=1138367
Treat date "from"/operator filters as dates, not times

Without this, the existing tests fail when run on a system that's east
of Greenwich.
Added new columns in the Services List

The following new columns were added to the Services List

- Total VMs
- Total CPUs
- Total Memory
- Total VM Disk Count
- Total VM Disk Space Allocated
- Total VM Disk Space Used
- Total VM Memory on Disk

https://bugzilla.redhat.com/show_bug.cgi?id=1115763
Reset flash_array when viewing screen off off vm summary screen.

Reset flash_array so flash message is not displayed when clicking on links such as Snapshots/Genealogy/Container/Operating System etc from summary screen after perfomring some actions like "Edit Tags".

https://bugzilla.redhat.com/show_bug.cgi?id=1146249
https://bugzilla.redhat.com/show_bug.cgi?id=1102658
simplify copy_hash / copy_array

the second parameter for copy_hash was only used in one place, so
isolate it there.  The second parameter for copy_array was never used,
so delete it.
Convert schedule_form partials to haml
Host view rewritten to haml