Skip to content

Commit 9f87ae0

Browse files
authored
Merge pull request #127 from stackhpc/upstream/zed-2024-03-04
Synchronise zed with upstream
2 parents d8515db + efb504f commit 9f87ae0

File tree

9 files changed

+31
-111
lines changed

9 files changed

+31
-111
lines changed

neutron/agent/metadata/driver.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ def spawn_monitored_metadata_proxy(cls, monitor, ns_name, port, conf,
295295
ns_name=ns_name,
296296
callback=callback)
297297
try:
298-
pm.enable()
298+
pm.enable(ensure_active=True)
299299
except exceptions.ProcessExecutionError as exec_err:
300300
LOG.error("Encountered process execution error %(err)s while "
301301
"starting process in namespace %(ns)s",

neutron/agent/ovn/metadata/driver.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ def spawn_monitored_metadata_proxy(cls, monitor, ns_name, port, conf,
206206
ns_name=ns_name,
207207
callback=callback)
208208
try:
209-
pm.enable()
209+
pm.enable(ensure_active=True)
210210
except exceptions.ProcessExecutionError as exec_err:
211211
LOG.error("Encountered process execution error %(err)s while "
212212
"starting process in namespace %(ns)s",

neutron/privileged/agent/linux/ip_lib.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -348,6 +348,10 @@ def set_link_flags(device, namespace, flags):
348348
_run_iproute_link("set", device, namespace, flags=new_flags)
349349

350350

351+
@tenacity.retry(
352+
retry=tenacity.retry_if_exception_type(NetworkInterfaceNotFound),
353+
wait=tenacity.wait_exponential(multiplier=0.02, max=1),
354+
stop=tenacity.stop_after_delay(3), reraise=True)
351355
@privileged.link_cmd.entrypoint
352356
def set_link_attribute(device, namespace, **attributes):
353357
_run_iproute_link("set", device, namespace, **attributes)
@@ -378,7 +382,8 @@ def set_link_bridge_master(device, bridge, namespace=None):
378382

379383
@tenacity.retry(
380384
retry=tenacity.retry_if_exception_type(
381-
netlink_exceptions.NetlinkDumpInterrupted),
385+
(netlink_exceptions.NetlinkDumpInterrupted,
386+
NetworkInterfaceNotFound)),
382387
wait=tenacity.wait_exponential(multiplier=0.02, max=1),
383388
stop=tenacity.stop_after_delay(8),
384389
reraise=True)

neutron/tests/unit/agent/dhcp/test_agent.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -637,6 +637,7 @@ def test_dhcp_ready_ports_updates_after_enable_dhcp(self, *args):
637637
'IpAddrCommand.wait_until_address_ready') as mock_wait:
638638
mock_wait.return_value = True
639639
dhcp = dhcp_agent.DhcpAgent(HOSTNAME)
640+
dhcp.update_isolated_metadata_proxy = mock.Mock()
640641
self.assertEqual(set(), dhcp.dhcp_ready_ports)
641642
dhcp.configure_dhcp_for_network(fake_network)
642643
self.assertEqual({fake_port1.id}, dhcp.dhcp_ready_ports)
@@ -834,7 +835,7 @@ def _enable_dhcp_helper(self, network, enable_isolated_metadata=False,
834835
process_instance.assert_has_calls([
835836
mock.call.disable(sig=str(int(signal.SIGTERM))),
836837
mock.call.get_pid_file_name(),
837-
mock.call.enable()])
838+
mock.call.enable(ensure_active=True)])
838839
else:
839840
process_instance.assert_has_calls([
840841
mock.call.disable(sig=str(int(signal.SIGTERM)))])

neutron/tests/unit/agent/metadata/test_driver.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,12 @@ def _test_spawn_metadata_proxy(self, dad_failed=False):
168168
'IpAddrCommand.wait_until_address_ready') as mock_wait,\
169169
mock.patch(
170170
'neutron.agent.linux.ip_lib.'
171-
'delete_ip_address') as mock_del:
171+
'delete_ip_address') as mock_del,\
172+
mock.patch(
173+
'neutron.agent.linux.external_process.'
174+
'ProcessManager.active',
175+
new_callable=mock.PropertyMock,
176+
side_effect=[False, True]):
172177
agent = l3_agent.L3NATAgent('localhost')
173178
agent.process_monitor = mock.Mock()
174179
cfg_file = os.path.join(

neutron/tests/unit/agent/ovn/metadata/test_driver.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,12 @@ def test_spawn_metadata_proxy(self):
6868
return_value=test_utils.FakeUser(self.EUNAME)),\
6969
mock.patch('grp.getgrnam',
7070
return_value=test_utils.FakeGroup(self.EGNAME)),\
71-
mock.patch('os.makedirs'):
71+
mock.patch('os.makedirs'),\
72+
mock.patch(
73+
'neutron.agent.linux.external_process.'
74+
'ProcessManager.active',
75+
new_callable=mock.PropertyMock,
76+
side_effect=[False, True]):
7277
cfg_file = os.path.join(
7378
metadata_driver.HaproxyConfigurator.get_config_path(
7479
cfg.CONF.state_path),

zuul.d/job-templates.yaml

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -70,19 +70,6 @@
7070
voting: true
7171
- ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa
7272
- openstacksdk-functional-devstack-networking
73-
- tripleo-ci-centos-9-content-provider
74-
- neutron-centos-9-tripleo-standalone:
75-
voting: true
76-
vars: &consumer_vars
77-
consumer_job: true
78-
build_container_images: false
79-
remove_tags:
80-
- build
81-
dependencies: &consumer_deps
82-
- tripleo-ci-centos-9-content-provider
83-
- neutron-ovn-tripleo-ci-centos-9-containers-multinode:
84-
vars: *consumer_vars
85-
dependencies: *consumer_deps
8673
- neutron-linuxbridge-tempest-plugin-nftables
8774
- neutron-ovs-tempest-plugin-iptables_hybrid-nftables
8875
- devstack-enforce-scope
@@ -139,19 +126,10 @@
139126
- neutron-ovn-tempest-ovs-release-ipv6-only
140127
- neutron-ovs-tempest-fips
141128
- neutron-ovn-tempest-ovs-release-fips
142-
- neutron-ovs-grenade-multinode-tick-tick
143129
- devstack-tobiko-neutron:
144130
voting: true
145131
- ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa
146132
- openstacksdk-functional-devstack-networking
147-
- tripleo-ci-centos-9-content-provider
148-
- neutron-centos-9-tripleo-standalone:
149-
voting: true
150-
vars: *consumer_vars
151-
dependencies: *consumer_deps
152-
- neutron-ovn-tripleo-ci-centos-9-containers-multinode:
153-
vars: *consumer_vars
154-
dependencies: *consumer_deps
155133
- neutron-linuxbridge-tempest-plugin-scenario-nftables
156134
- neutron-ovs-tempest-plugin-scenario-iptables_hybrid-nftables
157135
- devstack-enforce-scope

zuul.d/project.yaml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,11 @@
2020
- neutron-functional-with-uwsgi
2121
- neutron-fullstack-with-uwsgi
2222
- neutron-ovs-rally-task
23-
- neutron-ovs-grenade-multinode
24-
- neutron-ovs-grenade-dvr-multinode
23+
# TODO: re enable once jobs fixed
24+
#- neutron-ovs-grenade-multinode:
25+
# voting: false
26+
#- neutron-ovs-grenade-dvr-multinode:
27+
# voting: false
2528
- neutron-ovs-tempest-multinode-full
2629
- neutron-ovs-tempest-dvr-ha-multinode-full
2730
- neutron-ovn-tempest-ipv6-only
@@ -32,6 +35,8 @@
3235
- neutron-functional-with-uwsgi
3336
- neutron-fullstack-with-uwsgi
3437
- neutron-ovs-tempest-multinode-full
35-
- neutron-ovs-grenade-multinode
36-
- neutron-ovs-grenade-dvr-multinode
38+
#- neutron-ovs-grenade-multinode:
39+
# voting: false
40+
#- neutron-ovs-grenade-dvr-multinode:
41+
# voting: false
3742
- neutron-ovn-tempest-ipv6-only

zuul.d/tripleo.yaml

Lines changed: 0 additions & 79 deletions
This file was deleted.

0 commit comments

Comments
 (0)