Fixed description of Murano

Fixed description of Murano project in Fuel WebUI,
where user can enable checkbox 'Install Murano'.

Change-Id: Ib09302b39e9b23455651763bd519005d07bccec2
Closes-Bug: #1328127
Write correct upstream nameservers

Fuelmenu was saving DNS_UPSTREAM with the format
server1,server2 instead of server1 server2,
breaking DNS lookups.

Change-Id: I0c06454d867b995bc7d51df0a0199a21e1481384
Partial-Bug: #1327799
(cherry picked from commit 1512e723c76dd2abaf7ae834dedc14012864545d)
Send json in correct format for nodes/<id>/interfaces

Fix format for PUT request to nodes/id/interfaces handler

Change-Id: I3a6194383c9d85448b32afeea3dedf807c6069e5
Closes-Bug: #1331883
Improve get_node_networks in network manager

get_node_networks method from network manager
causes multiple queries to database on single api request

adding ip_addrs relationship allows to eagerload all required
data
viewonly required to prevent races in several fake tasks

Change-Id: I5f6fe92707b551b20c5140dd339b3e402a774ee7
Closes-Bug: #1328200
Ensure all nested attributes loaded once

- subqueryload_all for each nested attributes ensures that
  attribute is loaded once
- minor refactoring of get admin_interface logic in
  network manager to use sql relations instead of queries each time
- removed yield_per from eagerload methods
  see: http://docs.sqlalchemy.org/en/rel_0_9/orm/query.html#sqlalchemy.orm.query.Query.yield_per
- by deafault collection.eager will use joinedload for each provided field

Change-Id: Ifea46654335bf9ea91835880fbf9d6c96b8b63e7
Closes-Bug: #1328240
Remove bonds from configuration on node unnassign

- Bonds should be removed from configuration when node
  unnasigned from cluster
- If no admin network group is found, lookup admin interface
  by cidr only on node.nic_interfaces

This bug partially fixed by previous refactoring

Change-Id: Ibafab7d2aa2a3377a6c184a689a2607b4953ee09
Closes-Bug: #1328163
Merge "Send json in correct format for nodes/<id>/interfaces" into stable/5.0
Pass admin IP on stop_deployment

Change-Id: Ib113894aefbe1f60da1303abb4c736f42216e65d
Related-Bug: #1316583
(cherry picked from commit fbf4a1cc7b891e84f78cc01faec43671f3880efc)
Fuelmenu cleanup for settings and interfaces

Excludes docker* and veth* interfaces from
being configurable. Naily facts are removed
from fuelmenu completely.
Update astute.yaml path to /etc/fuel

Change-Id: Ib854c4fd17d1c62ca92f565553a6ee8ead2dd765
Closes-Bug: #1323369
Closes-Bug: #1327009
(cherry picked from commit 178ec641d88fe14b78e5903af0175d194954dbe8)
Sort releases to put the latest ones first

Closes-Bug:#1336241

Change-Id: I8d1a2ba49ca4400a704fd00c486cf41dec11316c
Fuel upgrade backport to 5.0.X

fuel_upgrade_system/fuel_upgrade directory copied from master branch
openstack.yaml is changed according to https://review.openstack.org/#/c/102533/

No other changes were found to fuel-web within https://blueprints.launchpad.net/fuel/+spec/upgrade-to-5-1

blueprint upgrade-to-5-0-1

Change-Id: I6f95863c424fe3d217b635f60509df8065f8a27d
Add OpenStack upgrader to fuel-upgrade

OpenStack upgrader performs the following tasks:

* add information about new releases to Nailgun
* add notification about new releases to Nailgun

blueprint upgrade-to-5-0-1

Orig_Change-Id: I962921492e09e06eb0396fae26c4bea1774720df

Notification topic is changed to "done" - it's the difference from original commit

Change-Id: Id15e686136b0df722274329c81033aef276ca7d5
fuel-upgrade: use extended markup for fixtures

Since now the Fuel-Upgrade script supports extended YAML syntax
for loading fixtures. That means we can create new releases.yaml
based on openstack.yaml from the Fuel repo.

Implements blueprint upgrade-to-5-0-1

Change-Id: I01bcf26efe681cb767290e9e57ffe0e7e425d0be
Upgrade system, migrate cobbler data from old container to new

During cluster deployment, orchestrator registers nodes
in cobbler, cobbler keeps all this information in file
system based database which is in /var/lib/cobbler/config
directory, we have to migrate this directory from one
container to another.

We have the next data migartion flow for cobbler
* take /var/lib/cobbler/config from previous container
* save it in working directory in
  /var/lib/fuel_upgrade/version/cobbler_configs
* mount /var/lib/fuel_upgrade/version in container
  as /tmp/upgrade
* right after cobbler container is created, copy
  cobbler data from mounted directory to
  /var/lib/cobbler/config

blueprint upgrade-to-5-0-1
Closes-bug: #1331975
Change-Id: I6a3a20831ef1aa85a90da64e7c2c1434a9ae59a1
Upgrades, remove unused method `run` from docker upgarder

Method `run` in DockerUpgrader class was used for
db migration, since we have new migration mechanism
this method is unused.

blueprint upgrade-to-5-0-1

Change-Id: I9f3d59234cd83230ea472fd98f7e3581a0c98fcd
Upgrade, enable stdout log only if pseudo-tty is enabled

When user runs fuel upgrade script in no-tty mode
and then closes stdout (for example suspends ^Z the process),
during some time (i.e. when buffer is over) it hangs on
writing to stdout.

blueprint upgrade-to-5-0-1
Closes-bug: #1336218
Change-Id: I42af9c59e6a5e10645c8e59d13dfa111da53851d
Upgrades, implemented free space validator

* renamed checker to health_checker
* created new module before_upgrade_checker
  where we keep all our checkers
* added flexible free space calculation
  system which recognizes mount points
* simplifed upgrade manager now it has
  only general upgarde logic

Closes-bug: #1333350
blueprint upgrade-to-5-0-1
Change-Id: Ic382001101d0ef178a048fc4aad8100de2f89317
Add orchestration_data to releases if empty

We need to set orchestration_data manually if it doesn't exist in
openstack.yaml. It's a workaround of the issuee when we don't have
versioned puppers/repos on 5.0.1/5.1.

blueprint upgrade-to-5-0-1

Closes-Bug: #1336379

Change-Id: I9241753008338d3acbc9c4876ae4b70004ccda1c
Upgrades, changed workflow for versions.yaml config file

Now we have the next worflow
* if user runs upgrade script first time,
  we save current version.yaml file into
  work directory
* if user for some reaons runs the script
  second or third time, we use version.yaml
  from work directory as the version which
  we need to rollback to, we cannot use
  config from /etc/fuel/version.yaml.
  Because upgrade script could be
  interrupted after symlink creation

Additional fixes
* config has version parameters which looks
  like strings instead of dicts with hierarchy,
  because we don't need all of the data from
  version.yaml file
* removed before and post upgrade section
  because they were useless, in fact we
  can do this actions in upgrade method
* created before upgrade checker which is
  activated only if the script was ran
  with docker parameter, this checker
  checks if ugprade make sense. For example
  now impossible to run upgrade from version
  5.0 to 5.0 and from 5.1 to 5.0.1

blueprint upgrade-to-5-0-1
Closes-bug: #1331363
Closes-bug: #1333584
Change-Id: I719799db216260d527ce5e9be2f03acc234cf3b0
fuel_upgrade: add bootstrap engine

We need to deliver a new bootstrap image to end users. For this purpose
we've introduced a new engine.

Implements blueprint upgrade-to-5-0-1

Partial-Bug: #1336689

Change-Id: Ibda51284ccd7a79b7ebd2bbed28c55915cfd019f