neutron/neutron
Slawek Kaplonski ba12b9e369 Fix mismatch of tags in dnsmasq options
In some cases (I don't know exactly how) it may happend that
when new subnet, e.g. IPv6 is added to the network, subnets
can change their order based on uuid.
As before this patch we were using in dnsmasq options tags like
"tagN" for subnets (where N was just number based on position of
the subnet in the sorted list) it could happend sometimes that
dnsmasq ended up with mismatch of tags configured in "dhcp-range"
cmd option and set in "opts" file. That caused problem with serving
proper DHCP options to the vms.

This patch fixes this issue by using tags with format:
"subnet-<uuid>" where uuid is id of the subnet. That was it's not
based on order of subnets in the list and will always match with tag
configured in opts file for specific subnet.

As we was currently using port id as tag for "per port" DHCP options,
this patch changes that to use tags like "port-<uuid>" to make it
consistent with options configured "per subnet" and to make it easier
to debug from where each option comes.

Conflicts:
    neutron/agent/linux/dhcp.py
    neutron/tests/unit/agent/linux/test_dhcp.py

Change-Id: Idaea33d62fa31edd7149ec916ec314438375724a
Partial-Bug: #1848738
(cherry picked from commit 88f2073526)
(cherry picked from commit a0730e684d)
2019-10-23 21:52:46 +02:00
..
agent Fix mismatch of tags in dnsmasq options 2019-10-23 21:52:46 +02:00
api Optimize the code that fixes the race condition of DHCP agent. 2019-06-11 09:28:40 +08:00
cmd Secure dnsmasq process against external abuse 2019-02-01 09:07:14 +00:00
common Packets getting lost during SNAT with too many connections 2019-06-04 23:23:07 +00:00
conf Add custom ethertype processing 2019-07-01 15:33:34 +00:00
core_extensions Refactor duplicated implementation of _get_policy_obj 2018-06-20 09:51:02 +08:00
db Handle ports assigned to routers without routerports 2019-10-15 10:44:54 +00:00
debug Fix all pep8 E265 errors 2018-04-30 16:35:52 -04:00
extensions Improve invalid port ranges error message 2019-03-21 10:16:55 -04:00
hacking use sqla functions from neutron-lib 2018-07-25 21:04:20 +00:00
ipam Allow first address in an IPv6 subnet as valid unicast 2019-05-24 17:32:08 -04:00
locale Imported Translations from Zanata 2018-11-30 09:16:33 +00:00
notifiers Fix W503 pep8 warnings 2018-04-17 14:22:58 +00:00
objects Handle ports assigned to routers without routerports 2019-10-15 10:44:54 +00:00
pecan_wsgi Use list instead of six.viewkeys to avoid py2 to py3 problems 2019-05-31 13:22:11 +00:00
plugins raise priority of dead vlan drop 2019-10-03 08:02:52 +00:00
privileged Check the namespace is ready in test_mtu_update tests 2019-09-16 09:30:43 +00:00
quota Fetch specific columns rather than full ORM entities 2018-09-27 16:28:37 +00:00
scheduler Fetch specific columns rather than full ORM entities 2018-09-27 16:28:37 +00:00
server Allow neutron-api load config from WSGI process 2018-07-25 15:22:14 +07:00
services Increase number of retries in _process_trunk_subport_bindings 2019-08-29 08:18:44 +00:00
tests Fix mismatch of tags in dnsmasq options 2019-10-23 21:52:46 +02:00
__init__.py
_i18n.py Make code follow log translation guideline 2017-08-14 02:01:48 +00:00
auth.py Use oslo.context class method to construct context object 2017-03-23 09:02:46 +00:00
manager.py Avoid loading same service plugin more than once 2019-04-12 08:33:38 +00:00
neutron_plugin_base_v2.py Do not load default service plugins if core plugin is not DB based 2017-11-09 20:34:52 +00:00
opts.py Merge "Remove deprecated cache_url" 2018-01-03 06:35:59 +00:00
policy.py Treat networks shared by RBAC in same way as shared with all tenants 2019-06-28 06:05:33 +00:00
service.py Allow neutron-api load config from WSGI process 2018-07-25 15:22:14 +07:00
version.py
worker.py replace WorkerSupportServiceMixin with neutron-lib's WorkerBase 2017-06-14 06:56:48 -06:00
wsgi.py Fix all pep8 E265 errors 2018-04-30 16:35:52 -04:00