Change Daemon class to better match process command lines.

Add additional uuid argument Daemon class to help it better
match output from /proc/$id/cmdline to the correct daemon.
If there is a stale pid in the pidfile, and that process has
the same name, then it could match accidentally and not
start the daemon up properly.

Fixes bug 1177416

Change-Id: I1109ca73c539c5e96cbe3dbb55ce68c92013ee10
Log a warning if dnsmasq version is below the minimum required

It has been noted that older versions of dnsmasq may have unexpected
behavior, so this patch introduces a check on dnsmasq version; if
the minimum version is not met, a warning is logged. This is less
invasive than raising an Exception and abort the dhcp agent, even
though this also seems like a perfectly acceptable behavior.

Fixes bug 1170793

Change-Id: Idd91c3753fb05f223ed0e3c53ad692ee65ea4905
Fix usage of NexusPortBindingNotFound exception

Currently the required keyword argument (port_id)
is not passed when the exception is raised. In fact
this exception has never been raised before due to
another bug (1173131) so this change also has to
ensure it doesn't break any existing code using
functions which can possibly raise this exception.

Fixes bug 1174323.

Change-Id: I81f0b0def7db163fb0fbb5e03be511113c8d0be5
Fix usage of SQLAlchemy Query.first() method

Query.first() doesn't raise the NoResultFound exception
if no result is found but rather returns None, so wrapping
of Query.first() call into a try/except NoResultFound block
is useless.

Fixes bug 1177842.

Change-Id: I0bd0e6d8299734b485dd1a1ac36bf6c295fd8932
Add a configuration item to disable metadata proxy

Bug #1166543

Change-Id: If7aee8d79b7ca275f89cf9299eac1f76d5500fcc
Add kill-metadata rootwrap filter to support RHEL.

 * Fixes bug 1178419

Change-Id: I9c1cf0d19d1134ec3b85c905c6c8bb7145847ce7
Imported Translations from Transifex

Change-Id: Iabc0688a9d195eb85bbc7d134b72084839bd7d49
Merge "Log a warning if dnsmasq version is below the minimum required"
Merge "Imported Translations from Transifex"
Merge "Fix usage of NexusPortBindingNotFound exception"
Merge "Fix usage of SQLAlchemy Query.first() method"
Merge "Change Daemon class to better match process command lines."
Do not require sudo/rootwrap to check for dnsmasq version

The dnsmasq version check does not need root privileges
to run as with low privs it works just fine. As a side
effect, the use of the rootwrapper was causing unit tests
to hung because the execute call in check_version was not
being stubbed out. Weirdly enough this wasn't caught in
a previous Gerrit run; there must be a passwordless sudo
lurking around somewhere in the Gerrit infrastructure.

Fixes bug #1178800

Change-Id: I4d0bd218768eec2439d3907587682ff35884a262
Imported Translations from Transifex

Change-Id: I04fdf1c00edf8a0ac9bc1c91223cc5caef105b51
Update flake8 pinned versions.

We've learned this lesson the hard way in the past...

Change-Id: I02c75853234c16f3666185998202431cc7a4f2eb
Imported Translations from Transifex

Change-Id: Ic35873cb4e370a1ab5a1cc880752e261afe93621
Merge "Update flake8 pinned versions."
Fix invalid status code assertion after handle expected exception

Fix bug 1179350

Change-Id: I88b511206d97f2ad607a7889c61df69a8638ced3
Fix testcase 'TestPortsV2.test_range_allocation' failed randomly

Fix bug 1179370

Change-Id: Id5645546c98549c9d7cf68359e0f6fa128ad84b7
Merge "Add a configuration item to disable metadata proxy"