Public bug reported:

###  Scenario ###
Deploy Devstack without enabling DNS extension, using the attached localrc file.
Create network, subnet, Dns Zone and try to update the network with 
“dns_domain”:

stack@seal08:~/devstack$ openstack
(openstack) zone create example.com. --email [email protected]
(openstack) zone list --all
(openstack) network create net1
(openstack) subnet create subnet1 --network net1 --subnet-range 192.0.2.0/24
(openstack) network list  
(openstack) network set --dns-domain example.com. 
f9b1ff63-6ad4-4569-8d6c-6d17ed34014b

### Expected result ###
Set "dns_domain" command should fail, as no DNS is enabled.

### Actual Result ###
"network set" command is PASS, but in fact it's passively failing as no 
"dns_domain" is set and it's None

(openstack) network show f9b1ff63-6ad4-4569-8d6c-6d17ed34014b
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | UP                                   |
| availability_zone_hints   |                                      |
| availability_zones        |                                      |
| created_at                | 2021-08-12T11:04:29Z                 |
| description               |                                      |
| dns_domain                | None                                 |
| id                        | f9b1ff63-6ad4-4569-8d6c-6d17ed34014b |
| ipv4_address_scope        | None                                 |
| ipv6_address_scope        | None                                 |
| is_default                | None                                 |
| is_vlan_transparent       | None                                 |
| mtu                       | 1442                                 |
| name                      | net1                                 |
| port_security_enabled     | True                                 |
| project_id                | 1318c4bf4aeb4f9892502f25875ae293     |
| provider:network_type     | geneve                               |
| provider:physical_network | None                                 |
| provider:segmentation_id  | 44396                                |
| qos_policy_id             | None                                 |
| revision_number           | 3                                    |
| router:external           | Internal                             |
| segments                  | None                                 |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   | afe01181-c299-44a3-ba94-328e0ebaed11 |
| tags                      |                                      |
| updated_at                | 2021-08-12T11:05:46Z                 |
+---------------------------+--------------------------------------+


Here are some details with (-vvv verbosity):
stack@seal08:~/devstack$ 
stack@seal08:~/devstack$ openstack network set --dns-domain example.com.  
1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 -vvv
START with options: network set --dns-domain example.com. 
1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 -vvv
options: Namespace(access_key='', access_secret='***', access_token='***', 
access_token_endpoint='', access_token_type='', application_credential_id='', 
application_credential_name='', application_credential_secret='***', 
auth_methods='', auth_type='', auth_url='http://10.35.64.8/identity', 
cacert=None, cert='', client_id='', client_secret='***', cloud='', code='', 
consumer_key='', consumer_secret='***', debug=False, default_domain='default', 
default_domain_id='', default_domain_name='', deferred_help=False, 
discovery_endpoint='', domain_id='', domain_name='', endpoint='', 
identity_provider='', identity_provider_url='', insecure=None, 
interface='public', key='', log_file=None, openid_scope='', 
os_beta_command=False, os_compute_api_version='', os_dns_api_version='2', 
os_identity_api_version='3', os_image_api_version='', 
os_key_manager_api_version='1', os_network_api_version='', 
os_object_api_version='', os_placement_api_version='1', os_project_id=None, 
os_project_name=None, os_volume_api_version='', passcode='', password='***', 
profile='', project_domain_id='default', project_domain_name='', project_id='', 
project_name='admin', protocol='', redirect_uri='', region_name='RegionOne', 
remote_project_domain_id='', remote_project_domain_name='', 
remote_project_id='', remote_project_name='', service_provider='', 
service_provider_endpoint='', service_provider_entity_id='', system_scope='', 
timing=False, token='***', trust_id='', user_domain_id='default', 
user_domain_name='', user_id='', username='admin', verbose_level=4, verify=None)
Auth plugin password selected
auth_config_hook(): {'api_timeout': None, 'verify': True, 'cacert': None, 
'cert': None, 'key': None, 'baremetal_status_code_retries': '5', 
'baremetal_introspection_status_code_retries': '5', 
'image_status_code_retries': '5', 'disable_vendor_agent': {}, 'interface': 
'public', 'floating_ip_source': 'neutron', 'image_api_use_tasks': False, 
'image_format': 'qcow2', 'message': '', 'network_api_version': '2', 
'object_store_api_version': '1', 'secgroup_source': 'neutron', 'status': 
'active', 'auth': {'user_domain_id': 'default', 'project_domain_id': 'default', 
'project_name': 'admin'}, 'verbose_level': 4, 'deferred_help': False, 
'region_name': 'RegionOne', 'default_domain': 'default', 'timing': False, 
'auth_url': 'http://10.35.64.8/identity', 'username': 'admin', 'password': 
'***', 'beta_command': False, 'identity_api_version': '3', 
'placement_api_version': '1', 'dns_api_version': '2', 
'key_manager_api_version': '1', 'auth_type': 'password', 'networks': []}
defaults: {'api_timeout': None, 'verify': True, 'cacert': None, 'cert': None, 
'key': None, 'auth_type': 'password', 'baremetal_status_code_retries': 5, 
'baremetal_introspection_status_code_retries': 5, 'image_status_code_retries': 
5, 'disable_vendor_agent': {}, 'interface': None, 'floating_ip_source': 
'neutron', 'image_api_use_tasks': False, 'image_format': 'qcow2', 'message': 
'', 'network_api_version': '2', 'object_store_api_version': '1', 
'secgroup_source': 'neutron', 'status': 'active'}
cloud cfg: {'api_timeout': None, 'verify': True, 'cacert': None, 'cert': None, 
'key': None, 'baremetal_status_code_retries': '5', 
'baremetal_introspection_status_code_retries': '5', 
'image_status_code_retries': '5', 'disable_vendor_agent': {}, 'interface': 
'public', 'floating_ip_source': 'neutron', 'image_api_use_tasks': False, 
'image_format': 'qcow2', 'message': '', 'network_api_version': '2', 
'object_store_api_version': '1', 'secgroup_source': 'neutron', 'status': 
'active', 'auth': {'user_domain_id': 'default', 'project_domain_id': 'default', 
'project_name': 'admin'}, 'verbose_level': 4, 'deferred_help': False, 
'region_name': 'RegionOne', 'default_domain': 'default', 'timing': False, 
'auth_url': 'http://10.35.64.8/identity', 'username': 'admin', 'password': 
'***', 'beta_command': False, 'identity_api_version': '3', 
'placement_api_version': '1', 'dns_api_version': '2', 
'key_manager_api_version': '1', 'auth_type': 'password', 'networks': []}
compute API version 2.1, cmd group openstack.compute.v2
identity API version 3, cmd group openstack.identity.v3
image API version 2, cmd group openstack.image.v2
network API version 2, cmd group openstack.network.v2
object_store API version 1, cmd group openstack.object_store.v1
volume API version 3, cmd group openstack.volume.v3
neutronclient API version 2, cmd group openstack.neutronclient.v2
placement API version 1, cmd group openstack.placement.v1
dns API version 2, cmd group openstack.dns.v2
/usr/local/lib/python3.8/dist-packages/barbicanclient/__init__.py:57: 
UserWarning: The secrets module is moved to barbicanclient/v1 directory, direct 
import of barbicanclient.secrets will be deprecated. Please import 
barbicanclient.v1.secrets instead.
  warnings.warn("The %s module is moved to barbicanclient/v1 "
key_manager API version 1, cmd group openstack.key_manager.v1
command: network set -> openstackclient.network.v2.network.SetNetwork 
(auth=True)
Auth plugin password selected
auth_config_hook(): {'api_timeout': None, 'verify': True, 'cacert': None, 
'cert': None, 'key': None, 'baremetal_status_code_retries': '5', 
'baremetal_introspection_status_code_retries': '5', 
'image_status_code_retries': '5', 'disable_vendor_agent': {}, 'interface': 
'public', 'floating_ip_source': 'neutron', 'image_api_use_tasks': False, 
'image_format': 'qcow2', 'message': '', 'network_api_version': '2', 
'object_store_api_version': '1', 'secgroup_source': 'neutron', 'status': 
'active', 'auth': {'user_domain_id': 'default', 'project_domain_id': 'default', 
'project_name': 'admin'}, 'additional_user_agent': [('osc-lib', '2.4.1')], 
'verbose_level': 4, 'deferred_help': False, 'region_name': 'RegionOne', 
'default_domain': 'default', 'timing': False, 'auth_url': 
'http://10.35.64.8/identity', 'username': 'admin', 'password': '***', 
'beta_command': False, 'identity_api_version': '3', 'placement_api_version': 
'1', 'dns_api_version': '2', 'key_manager_api_version': '1', 'auth_type': 
'password', 'networks': []}
Using auth plugin: password
Using parameters {'auth_url': 'http://10.35.64.8/identity', 'project_name': 
'admin', 'project_domain_id': 'default', 'username': 'admin', 'user_domain_id': 
'default', 'password': '***'}
Get auth_ref
REQ: curl -g -i -X GET http://10.35.64.8/identity -H "Accept: application/json" 
-H "User-Agent: openstacksdk/0.58.0 keystoneauth1/4.3.1 python-requests/2.26.0 
CPython/3.8.10"
Starting new HTTP connection (1): 10.35.64.8:80
http://10.35.64.8:80 "GET /identity HTTP/1.1" 300 269
RESP: [300] Connection: close Content-Length: 269 Content-Type: 
application/json Date: Thu, 12 Aug 2021 10:23:54 GMT Location: 
http://10.35.64.8/identity/v3/ Server: Apache/2.4.41 (Ubuntu) Vary: 
X-Auth-Token x-openstack-request-id: req-7f5231d9-db05-4569-97cd-f1f8d8e538e7
RESP BODY: {"versions": {"values": [{"id": "v3.14", "status": "stable", 
"updated": "2020-04-07T00:00:00Z", "links": [{"rel": "self", "href": 
"http://10.35.64.8/identity/v3/"}], "media-types": [{"base": 
"application/json", "type": "application/vnd.openstack.identity-v3+json"}]}]}}
GET call to http://10.35.64.8/identity used request id 
req-7f5231d9-db05-4569-97cd-f1f8d8e538e7
Making authentication request to http://10.35.64.8/identity/v3/auth/tokens
Resetting dropped connection: 10.35.64.8
http://10.35.64.8:80 "POST /identity/v3/auth/tokens HTTP/1.1" 201 2601
{"token": {"methods": ["password"], "user": {"domain": {"id": "default", 
"name": "Default"}, "id": "e512007d3ceb4ca6ba7d929d854d6e73", "name": "admin", 
"password_expires_at": null}, "audit_ids": ["xvquFzqWSTSSGJ-IVT-aEQ"], 
"expires_at": "2021-08-12T11:23:55.000000Z", "issued_at": 
"2021-08-12T10:23:55.000000Z", "project": {"domain": {"id": "default", "name": 
"Default"}, "id": "89351aba4a0245f7ae35743cf9293731", "name": "admin"}, 
"is_domain": false, "roles": [{"id": "878281a829e947b5a733672330eb4bc6", 
"name": "admin"}, {"id": "4ba277b9720742f0822560b9d8b51c0d", "name": "reader"}, 
{"id": "e9efcd9d81fc4b8f81939272ecd465f7", "name": "member"}], "catalog": 
[{"endpoints": [{"id": "b70cd1cdcb8a4734b84f0b45292e41e3", "interface": 
"public", "region_id": "RegionOne", "url": "http://10.35.64.8/compute/v2.1";, 
"region": "RegionOne"}], "id": "214ae70e9abe4687af52df9688acaa72", "type": 
"compute", "name": "nova"}, {"endpoints": [{"id": 
"0af5f7c3f0f04c5da0d474753542420a", "interface": "public", "region_id": 
"RegionOne", "url": "http://10.35.64.8/identity";, "region": "RegionOne"}, 
{"id": "b03dc09329cf41bcad253eced66509ef", "interface": "admin", "region_id": 
"RegionOne", "url": "http://10.35.64.8/identity";, "region": "RegionOne"}], 
"id": "4a704259550d43c782a6312c4e244886", "type": "identity", "name": 
"keystone"}, {"endpoints": [{"id": "0d1069290dee4f60bfefae84d5475810", 
"interface": "public", "region_id": "RegionOne", "url": 
"http://10.35.64.8/placement";, "region": "RegionOne"}], "id": 
"4ca525e0606b4de29d20b43272abda14", "type": "placement", "name": "placement"}, 
{"endpoints": [{"id": "a58b6ba134fa4593953ff77ba3aa8756", "interface": 
"public", "region_id": "RegionOne", "url": "http://10.35.64.8:9696/";, "region": 
"RegionOne"}], "id": "56c08179db6c443ea1281d25c8dcd8d3", "type": "network", 
"name": "neutron"}, {"endpoints": [{"id": "e31a0ba6ef0148f29566267113213694", 
"interface": "public", "region_id": "RegionOne", "url": 
"http://10.35.64.8/dns";, "region": "RegionOne"}], "id": 
"89bb49f9a5a846a7a00405817d4d3282", "type": "dns", "name": "designate"}, 
{"endpoints": [{"id": "1fb48753c2154aecbe586d6167d1c6a7", "interface": 
"public", "region_id": "RegionOne", "url": "http://10.35.64.8/image";, "region": 
"RegionOne"}], "id": "a84cfeb4d9754245ae57d2f6bef5dcea", "type": "image", 
"name": "glance"}, {"endpoints": [{"id": "cb79cfc1b5fc4cef9461f503346cb6bf", 
"interface": "public", "region_id": "RegionOne", "url": 
"http://10.35.64.8/compute/v2/89351aba4a0245f7ae35743cf9293731";, "region": 
"RegionOne"}], "id": "ea9257ee5e2b4c7f90e7cc133c6c71e3", "type": 
"compute_legacy", "name": "nova_legacy"}]}}
run(Namespace(default=False, description=None, disable=False, 
disable_port_security=False, dns_domain='example.com.', enable=None, 
enable_port_security=False, external=False, internal=False, mtu=None, 
name=None, network='1749f7dd-e4b9-478b-bd28-a3dd7c539bd3', no_default=False, 
no_qos_policy=False, no_share=False, no_tag=False, physical_network=None, 
provider_network_type=None, qos_policy=None, segmentation_id=None, share=None, 
tags=None))
Network client initialized using OpenStack SDK: 
<openstack.network.v2._proxy.Proxy object at 0x7f7e41ffa0a0>
REQ: curl -g -i -X GET 
http://10.35.64.8:9696/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 -H 
"User-Agent: openstacksdk/0.58.0 keystoneauth1/4.3.1 python-requests/2.26.0 
CPython/3.8.10" -H "X-Auth-Token: 
{SHA256}0b366d0d7824a66262cce8503d03539f1652189c3c34726454ca00ae14112422"
Starting new HTTP connection (1): 10.35.64.8:9696
http://10.35.64.8:9696 "GET /v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 
HTTP/1.1" 200 659
RESP: [200] Connection: keep-alive Content-Length: 659 Content-Type: 
application/json Date: Thu, 12 Aug 2021 10:23:55 GMT X-Openstack-Request-Id: 
req-827a2e49-8435-4c90-8316-2f84da9982b6
RESP BODY: 
{"network":{"id":"1749f7dd-e4b9-478b-bd28-a3dd7c539bd3","name":"net1","tenant_id":"89351aba4a0245f7ae35743cf9293731","admin_state_up":true,"mtu":1442,"status":"ACTIVE","subnets":["b7870888-7216-4f17-8aec-e1ecf29a6f8e"],"shared":false,"availability_zone_hints":[],"availability_zones":[],"ipv4_address_scope":null,"ipv6_address_scope":null,"router:external":false,"description":"","port_security_enabled":true,"tags":[],"created_at":"2021-08-11T09:55:47Z","updated_at":"2021-08-11T09:56:16Z","revision_number":2,"project_id":"89351aba4a0245f7ae35743cf9293731","provider:network_type":"geneve","provider:physical_network":null,"provider:segmentation_id":39538}}
GET call to network for 
http://10.35.64.8:9696/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 used 
request id req-827a2e49-8435-4c90-8316-2f84da9982b6
REQ: curl -g -i -X PUT 
http://10.35.64.8:9696/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 -H 
"Content-Type: application/json" -H "User-Agent: openstacksdk/0.58.0 
keystoneauth1/4.3.1 python-requests/2.26.0 CPython/3.8.10" -H "X-Auth-Token: 
{SHA256}0b366d0d7824a66262cce8503d03539f1652189c3c34726454ca00ae14112422" -d 
'{"network": {"dns_domain": "example.com."}}'
http://10.35.64.8:9696 "PUT /v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 
HTTP/1.1" 200 659
RESP: [200] Connection: keep-alive Content-Length: 659 Content-Type: 
application/json Date: Thu, 12 Aug 2021 10:23:55 GMT X-Openstack-Request-Id: 
req-20be4550-489e-4f8a-8efd-11fe0a4ea604
RESP BODY: 
{"network":{"id":"1749f7dd-e4b9-478b-bd28-a3dd7c539bd3","name":"net1","tenant_id":"89351aba4a0245f7ae35743cf9293731","admin_state_up":true,"mtu":1442,"status":"ACTIVE","subnets":["b7870888-7216-4f17-8aec-e1ecf29a6f8e"],"shared":false,"availability_zone_hints":[],"availability_zones":[],"ipv4_address_scope":null,"ipv6_address_scope":null,"router:external":false,"description":"","port_security_enabled":true,"tags":[],"created_at":"2021-08-11T09:55:47Z","updated_at":"2021-08-11T09:56:16Z","revision_number":2,"project_id":"89351aba4a0245f7ae35743cf9293731","provider:network_type":"geneve","provider:physical_network":null,"provider:segmentation_id":39538}}
PUT call to network for 
http://10.35.64.8:9696/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 used 
request id req-20be4550-489e-4f8a-8efd-11fe0a4ea604
clean_up SetNetwork: 
END return value: 0


Note: 
After redeploying Devstack with DNS enabled, it means enabling "q-dns" in 
localrc:

# Neutron
ENABLED_SERVICES+=,q-svc,neutron,q-dns

everything works as expected and "dns_domain" is properly set:
stack@seal08:~/devstack$ openstack zone list --all
+--------------------------------------+----------------------------------+--------------+---------+------------+--------+--------+
| id                                   | project_id                       | 
name         | type    |     serial | status | action |
+--------------------------------------+----------------------------------+--------------+---------+------------+--------+--------+
| f6922edf-611f-4ba2-9bd8-e40eb7cade7d | 89351aba4a0245f7ae35743cf9293731 | 
example.com. | PRIMARY | 1628670413 | ACTIVE | NONE   |
+--------------------------------------+----------------------------------+--------------+---------+------------+--------+--------+
stack@seal08:~/devstack$
stack@seal08:~/devstack$
stack@seal08:~/devstack$ openstack network list      
 
+--------------------------------------+----------------------------------+----------------------------------------------------------------------------+
| ID                                   | Name                             | 
Subnets                                                                    |
+--------------------------------------+----------------------------------+----------------------------------------------------------------------------+
| 65dd5e84-33c6-4b70-aad9-64c6f2f72d6d | private                          | 
03bb2ab9-1bff-4fea-ae6b-04506cab5122, c65d6919-6c3f-4c7a-a888-1a60d7366f12 |
| 8f7ec778-a6f2-4358-abb3-2d3b880870fa | tempest-test-network--1234138305 | 
fd6e1a7c-eefb-49d8-8f0f-9e22ac070608                                       |
| bf2e9b00-a52f-44a3-8369-9cf132276ebd | public                           | 
4a253538-673d-41cc-b3e6-928cdb19c762, 7a5e6ccd-f46a-4551-a3e9-b8df36428ce4 |
| d38e2fed-f784-47e8-b0f1-dddb56e27905 | shared                           | 
d02072b0-b3bc-47d9-b82a-e305ee1c3e92                                       |
+--------------------------------------+----------------------------------+----------------------------------------------------------------------------+
stack@seal08:~/devstack$
stack@seal08:~/devstack$ openstack network set --dns-domain example.com.  
8f7ec778-a6f2-4358-abb3-2d3b880870fa -v
START with options: network set --dns-domain example.com. 
8f7ec778-a6f2-4358-abb3-2d3b880870fa -v
/usr/local/lib/python3.8/dist-packages/barbicanclient/__init__.py:57: 
UserWarning: The secrets module is moved to barbicanclient/v1 directory, direct 
import of barbicanclient.secrets will be deprecated. Please import 
barbicanclient.v1.secrets instead.
  warnings.warn("The %s module is moved to barbicanclient/v1 "
command: network set -> openstackclient.network.v2.network.SetNetwork 
(auth=True)
Using auth plugin: password
END return value: 0
stack@seal08:~/devstack$
stack@seal08:~/devstack$
stack@seal08:~/devstack$ openstack network show 
8f7ec778-a6f2-4358-abb3-2d3b880870fa
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | UP                                   |
| availability_zone_hints   |                                      |
| availability_zones        |                                      |
| created_at                | 2021-08-11T09:37:06Z                 |
| description               |                                      |
| dns_domain                | None                                 |
| id                        | 8f7ec778-a6f2-4358-abb3-2d3b880870fa |
| ipv4_address_scope        | None                                 |
| ipv6_address_scope        | None                                 |
| is_default                | None                                 |
| is_vlan_transparent       | None                                 |
| mtu                       | 1442                                 |
| name                      | tempest-test-network--1234138305     |
| port_security_enabled     | True                                 |
| project_id                | f4cd701eb82a46c28918886ad1594b7c     |
| provider:network_type     | geneve                               |
| provider:physical_network | None                                 |
| provider:segmentation_id  | 19626                                |
| qos_policy_id             | None                                 |
| revision_number           | 2                                    |
| router:external           | Internal                             |
| segments                  | None                                 |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   | fd6e1a7c-eefb-49d8-8f0f-9e22ac070608 |
| tags                      |                                      |
| updated_at                | 2021-08-11T09:37:07Z                 |
+---------------------------+--------------------------------------+

** Affects: neutron
     Importance: Undecided
         Status: New

** Attachment added: "localrc.txt"
   
https://bugs.launchpad.net/bugs/1939680/+attachment/5517509/+files/localrc.txt

** Project changed: designate => neutron

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1939680

Title:
  Neutron - set "dns_domain" for existing network is passively failing
  when Designate DNS extension is not enabled for Neutron

Status in neutron:
  New

Bug description:
  ###  Scenario ###
  Deploy Devstack without enabling DNS extension, using the attached localrc 
file.
  Create network, subnet, Dns Zone and try to update the network with 
“dns_domain”:

  stack@seal08:~/devstack$ openstack
  (openstack) zone create example.com. --email [email protected]
  (openstack) zone list --all
  (openstack) network create net1
  (openstack) subnet create subnet1 --network net1 --subnet-range 192.0.2.0/24
  (openstack) network list  
  (openstack) network set --dns-domain example.com. 
f9b1ff63-6ad4-4569-8d6c-6d17ed34014b

  ### Expected result ###
  Set "dns_domain" command should fail, as no DNS is enabled.

  ### Actual Result ###
  "network set" command is PASS, but in fact it's passively failing as no 
"dns_domain" is set and it's None

  (openstack) network show f9b1ff63-6ad4-4569-8d6c-6d17ed34014b
  +---------------------------+--------------------------------------+
  | Field                     | Value                                |
  +---------------------------+--------------------------------------+
  | admin_state_up            | UP                                   |
  | availability_zone_hints   |                                      |
  | availability_zones        |                                      |
  | created_at                | 2021-08-12T11:04:29Z                 |
  | description               |                                      |
  | dns_domain                | None                                 |
  | id                        | f9b1ff63-6ad4-4569-8d6c-6d17ed34014b |
  | ipv4_address_scope        | None                                 |
  | ipv6_address_scope        | None                                 |
  | is_default                | None                                 |
  | is_vlan_transparent       | None                                 |
  | mtu                       | 1442                                 |
  | name                      | net1                                 |
  | port_security_enabled     | True                                 |
  | project_id                | 1318c4bf4aeb4f9892502f25875ae293     |
  | provider:network_type     | geneve                               |
  | provider:physical_network | None                                 |
  | provider:segmentation_id  | 44396                                |
  | qos_policy_id             | None                                 |
  | revision_number           | 3                                    |
  | router:external           | Internal                             |
  | segments                  | None                                 |
  | shared                    | False                                |
  | status                    | ACTIVE                               |
  | subnets                   | afe01181-c299-44a3-ba94-328e0ebaed11 |
  | tags                      |                                      |
  | updated_at                | 2021-08-12T11:05:46Z                 |
  +---------------------------+--------------------------------------+

  
  Here are some details with (-vvv verbosity):
  stack@seal08:~/devstack$ 
  stack@seal08:~/devstack$ openstack network set --dns-domain example.com.  
1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 -vvv
  START with options: network set --dns-domain example.com. 
1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 -vvv
  options: Namespace(access_key='', access_secret='***', access_token='***', 
access_token_endpoint='', access_token_type='', application_credential_id='', 
application_credential_name='', application_credential_secret='***', 
auth_methods='', auth_type='', auth_url='http://10.35.64.8/identity', 
cacert=None, cert='', client_id='', client_secret='***', cloud='', code='', 
consumer_key='', consumer_secret='***', debug=False, default_domain='default', 
default_domain_id='', default_domain_name='', deferred_help=False, 
discovery_endpoint='', domain_id='', domain_name='', endpoint='', 
identity_provider='', identity_provider_url='', insecure=None, 
interface='public', key='', log_file=None, openid_scope='', 
os_beta_command=False, os_compute_api_version='', os_dns_api_version='2', 
os_identity_api_version='3', os_image_api_version='', 
os_key_manager_api_version='1', os_network_api_version='', 
os_object_api_version='', os_placement_api_version='1', os_project_id=None, 
os_project_name=None, os_volume_api_version='', passcode='', password='***', 
profile='', project_domain_id='default', project_domain_name='', project_id='', 
project_name='admin', protocol='', redirect_uri='', region_name='RegionOne', 
remote_project_domain_id='', remote_project_domain_name='', 
remote_project_id='', remote_project_name='', service_provider='', 
service_provider_endpoint='', service_provider_entity_id='', system_scope='', 
timing=False, token='***', trust_id='', user_domain_id='default', 
user_domain_name='', user_id='', username='admin', verbose_level=4, verify=None)
  Auth plugin password selected
  auth_config_hook(): {'api_timeout': None, 'verify': True, 'cacert': None, 
'cert': None, 'key': None, 'baremetal_status_code_retries': '5', 
'baremetal_introspection_status_code_retries': '5', 
'image_status_code_retries': '5', 'disable_vendor_agent': {}, 'interface': 
'public', 'floating_ip_source': 'neutron', 'image_api_use_tasks': False, 
'image_format': 'qcow2', 'message': '', 'network_api_version': '2', 
'object_store_api_version': '1', 'secgroup_source': 'neutron', 'status': 
'active', 'auth': {'user_domain_id': 'default', 'project_domain_id': 'default', 
'project_name': 'admin'}, 'verbose_level': 4, 'deferred_help': False, 
'region_name': 'RegionOne', 'default_domain': 'default', 'timing': False, 
'auth_url': 'http://10.35.64.8/identity', 'username': 'admin', 'password': 
'***', 'beta_command': False, 'identity_api_version': '3', 
'placement_api_version': '1', 'dns_api_version': '2', 
'key_manager_api_version': '1', 'auth_type': 'password', 'networks': []}
  defaults: {'api_timeout': None, 'verify': True, 'cacert': None, 'cert': None, 
'key': None, 'auth_type': 'password', 'baremetal_status_code_retries': 5, 
'baremetal_introspection_status_code_retries': 5, 'image_status_code_retries': 
5, 'disable_vendor_agent': {}, 'interface': None, 'floating_ip_source': 
'neutron', 'image_api_use_tasks': False, 'image_format': 'qcow2', 'message': 
'', 'network_api_version': '2', 'object_store_api_version': '1', 
'secgroup_source': 'neutron', 'status': 'active'}
  cloud cfg: {'api_timeout': None, 'verify': True, 'cacert': None, 'cert': 
None, 'key': None, 'baremetal_status_code_retries': '5', 
'baremetal_introspection_status_code_retries': '5', 
'image_status_code_retries': '5', 'disable_vendor_agent': {}, 'interface': 
'public', 'floating_ip_source': 'neutron', 'image_api_use_tasks': False, 
'image_format': 'qcow2', 'message': '', 'network_api_version': '2', 
'object_store_api_version': '1', 'secgroup_source': 'neutron', 'status': 
'active', 'auth': {'user_domain_id': 'default', 'project_domain_id': 'default', 
'project_name': 'admin'}, 'verbose_level': 4, 'deferred_help': False, 
'region_name': 'RegionOne', 'default_domain': 'default', 'timing': False, 
'auth_url': 'http://10.35.64.8/identity', 'username': 'admin', 'password': 
'***', 'beta_command': False, 'identity_api_version': '3', 
'placement_api_version': '1', 'dns_api_version': '2', 
'key_manager_api_version': '1', 'auth_type': 'password', 'networks': []}
  compute API version 2.1, cmd group openstack.compute.v2
  identity API version 3, cmd group openstack.identity.v3
  image API version 2, cmd group openstack.image.v2
  network API version 2, cmd group openstack.network.v2
  object_store API version 1, cmd group openstack.object_store.v1
  volume API version 3, cmd group openstack.volume.v3
  neutronclient API version 2, cmd group openstack.neutronclient.v2
  placement API version 1, cmd group openstack.placement.v1
  dns API version 2, cmd group openstack.dns.v2
  /usr/local/lib/python3.8/dist-packages/barbicanclient/__init__.py:57: 
UserWarning: The secrets module is moved to barbicanclient/v1 directory, direct 
import of barbicanclient.secrets will be deprecated. Please import 
barbicanclient.v1.secrets instead.
    warnings.warn("The %s module is moved to barbicanclient/v1 "
  key_manager API version 1, cmd group openstack.key_manager.v1
  command: network set -> openstackclient.network.v2.network.SetNetwork 
(auth=True)
  Auth plugin password selected
  auth_config_hook(): {'api_timeout': None, 'verify': True, 'cacert': None, 
'cert': None, 'key': None, 'baremetal_status_code_retries': '5', 
'baremetal_introspection_status_code_retries': '5', 
'image_status_code_retries': '5', 'disable_vendor_agent': {}, 'interface': 
'public', 'floating_ip_source': 'neutron', 'image_api_use_tasks': False, 
'image_format': 'qcow2', 'message': '', 'network_api_version': '2', 
'object_store_api_version': '1', 'secgroup_source': 'neutron', 'status': 
'active', 'auth': {'user_domain_id': 'default', 'project_domain_id': 'default', 
'project_name': 'admin'}, 'additional_user_agent': [('osc-lib', '2.4.1')], 
'verbose_level': 4, 'deferred_help': False, 'region_name': 'RegionOne', 
'default_domain': 'default', 'timing': False, 'auth_url': 
'http://10.35.64.8/identity', 'username': 'admin', 'password': '***', 
'beta_command': False, 'identity_api_version': '3', 'placement_api_version': 
'1', 'dns_api_version': '2', 'key_manager_api_version': '1', 'auth_type': 
'password', 'networks': []}
  Using auth plugin: password
  Using parameters {'auth_url': 'http://10.35.64.8/identity', 'project_name': 
'admin', 'project_domain_id': 'default', 'username': 'admin', 'user_domain_id': 
'default', 'password': '***'}
  Get auth_ref
  REQ: curl -g -i -X GET http://10.35.64.8/identity -H "Accept: 
application/json" -H "User-Agent: openstacksdk/0.58.0 keystoneauth1/4.3.1 
python-requests/2.26.0 CPython/3.8.10"
  Starting new HTTP connection (1): 10.35.64.8:80
  http://10.35.64.8:80 "GET /identity HTTP/1.1" 300 269
  RESP: [300] Connection: close Content-Length: 269 Content-Type: 
application/json Date: Thu, 12 Aug 2021 10:23:54 GMT Location: 
http://10.35.64.8/identity/v3/ Server: Apache/2.4.41 (Ubuntu) Vary: 
X-Auth-Token x-openstack-request-id: req-7f5231d9-db05-4569-97cd-f1f8d8e538e7
  RESP BODY: {"versions": {"values": [{"id": "v3.14", "status": "stable", 
"updated": "2020-04-07T00:00:00Z", "links": [{"rel": "self", "href": 
"http://10.35.64.8/identity/v3/"}], "media-types": [{"base": 
"application/json", "type": "application/vnd.openstack.identity-v3+json"}]}]}}
  GET call to http://10.35.64.8/identity used request id 
req-7f5231d9-db05-4569-97cd-f1f8d8e538e7
  Making authentication request to http://10.35.64.8/identity/v3/auth/tokens
  Resetting dropped connection: 10.35.64.8
  http://10.35.64.8:80 "POST /identity/v3/auth/tokens HTTP/1.1" 201 2601
  {"token": {"methods": ["password"], "user": {"domain": {"id": "default", 
"name": "Default"}, "id": "e512007d3ceb4ca6ba7d929d854d6e73", "name": "admin", 
"password_expires_at": null}, "audit_ids": ["xvquFzqWSTSSGJ-IVT-aEQ"], 
"expires_at": "2021-08-12T11:23:55.000000Z", "issued_at": 
"2021-08-12T10:23:55.000000Z", "project": {"domain": {"id": "default", "name": 
"Default"}, "id": "89351aba4a0245f7ae35743cf9293731", "name": "admin"}, 
"is_domain": false, "roles": [{"id": "878281a829e947b5a733672330eb4bc6", 
"name": "admin"}, {"id": "4ba277b9720742f0822560b9d8b51c0d", "name": "reader"}, 
{"id": "e9efcd9d81fc4b8f81939272ecd465f7", "name": "member"}], "catalog": 
[{"endpoints": [{"id": "b70cd1cdcb8a4734b84f0b45292e41e3", "interface": 
"public", "region_id": "RegionOne", "url": "http://10.35.64.8/compute/v2.1";, 
"region": "RegionOne"}], "id": "214ae70e9abe4687af52df9688acaa72", "type": 
"compute", "name": "nova"}, {"endpoints": [{"id": 
"0af5f7c3f0f04c5da0d474753542420a", "interface": "public", "region_id": 
"RegionOne", "url": "http://10.35.64.8/identity";, "region": "RegionOne"}, 
{"id": "b03dc09329cf41bcad253eced66509ef", "interface": "admin", "region_id": 
"RegionOne", "url": "http://10.35.64.8/identity";, "region": "RegionOne"}], 
"id": "4a704259550d43c782a6312c4e244886", "type": "identity", "name": 
"keystone"}, {"endpoints": [{"id": "0d1069290dee4f60bfefae84d5475810", 
"interface": "public", "region_id": "RegionOne", "url": 
"http://10.35.64.8/placement";, "region": "RegionOne"}], "id": 
"4ca525e0606b4de29d20b43272abda14", "type": "placement", "name": "placement"}, 
{"endpoints": [{"id": "a58b6ba134fa4593953ff77ba3aa8756", "interface": 
"public", "region_id": "RegionOne", "url": "http://10.35.64.8:9696/";, "region": 
"RegionOne"}], "id": "56c08179db6c443ea1281d25c8dcd8d3", "type": "network", 
"name": "neutron"}, {"endpoints": [{"id": "e31a0ba6ef0148f29566267113213694", 
"interface": "public", "region_id": "RegionOne", "url": 
"http://10.35.64.8/dns";, "region": "RegionOne"}], "id": 
"89bb49f9a5a846a7a00405817d4d3282", "type": "dns", "name": "designate"}, 
{"endpoints": [{"id": "1fb48753c2154aecbe586d6167d1c6a7", "interface": 
"public", "region_id": "RegionOne", "url": "http://10.35.64.8/image";, "region": 
"RegionOne"}], "id": "a84cfeb4d9754245ae57d2f6bef5dcea", "type": "image", 
"name": "glance"}, {"endpoints": [{"id": "cb79cfc1b5fc4cef9461f503346cb6bf", 
"interface": "public", "region_id": "RegionOne", "url": 
"http://10.35.64.8/compute/v2/89351aba4a0245f7ae35743cf9293731";, "region": 
"RegionOne"}], "id": "ea9257ee5e2b4c7f90e7cc133c6c71e3", "type": 
"compute_legacy", "name": "nova_legacy"}]}}
  run(Namespace(default=False, description=None, disable=False, 
disable_port_security=False, dns_domain='example.com.', enable=None, 
enable_port_security=False, external=False, internal=False, mtu=None, 
name=None, network='1749f7dd-e4b9-478b-bd28-a3dd7c539bd3', no_default=False, 
no_qos_policy=False, no_share=False, no_tag=False, physical_network=None, 
provider_network_type=None, qos_policy=None, segmentation_id=None, share=None, 
tags=None))
  Network client initialized using OpenStack SDK: 
<openstack.network.v2._proxy.Proxy object at 0x7f7e41ffa0a0>
  REQ: curl -g -i -X GET 
http://10.35.64.8:9696/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 -H 
"User-Agent: openstacksdk/0.58.0 keystoneauth1/4.3.1 python-requests/2.26.0 
CPython/3.8.10" -H "X-Auth-Token: 
{SHA256}0b366d0d7824a66262cce8503d03539f1652189c3c34726454ca00ae14112422"
  Starting new HTTP connection (1): 10.35.64.8:9696
  http://10.35.64.8:9696 "GET 
/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 HTTP/1.1" 200 659
  RESP: [200] Connection: keep-alive Content-Length: 659 Content-Type: 
application/json Date: Thu, 12 Aug 2021 10:23:55 GMT X-Openstack-Request-Id: 
req-827a2e49-8435-4c90-8316-2f84da9982b6
  RESP BODY: 
{"network":{"id":"1749f7dd-e4b9-478b-bd28-a3dd7c539bd3","name":"net1","tenant_id":"89351aba4a0245f7ae35743cf9293731","admin_state_up":true,"mtu":1442,"status":"ACTIVE","subnets":["b7870888-7216-4f17-8aec-e1ecf29a6f8e"],"shared":false,"availability_zone_hints":[],"availability_zones":[],"ipv4_address_scope":null,"ipv6_address_scope":null,"router:external":false,"description":"","port_security_enabled":true,"tags":[],"created_at":"2021-08-11T09:55:47Z","updated_at":"2021-08-11T09:56:16Z","revision_number":2,"project_id":"89351aba4a0245f7ae35743cf9293731","provider:network_type":"geneve","provider:physical_network":null,"provider:segmentation_id":39538}}
  GET call to network for 
http://10.35.64.8:9696/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 used 
request id req-827a2e49-8435-4c90-8316-2f84da9982b6
  REQ: curl -g -i -X PUT 
http://10.35.64.8:9696/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 -H 
"Content-Type: application/json" -H "User-Agent: openstacksdk/0.58.0 
keystoneauth1/4.3.1 python-requests/2.26.0 CPython/3.8.10" -H "X-Auth-Token: 
{SHA256}0b366d0d7824a66262cce8503d03539f1652189c3c34726454ca00ae14112422" -d 
'{"network": {"dns_domain": "example.com."}}'
  http://10.35.64.8:9696 "PUT 
/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 HTTP/1.1" 200 659
  RESP: [200] Connection: keep-alive Content-Length: 659 Content-Type: 
application/json Date: Thu, 12 Aug 2021 10:23:55 GMT X-Openstack-Request-Id: 
req-20be4550-489e-4f8a-8efd-11fe0a4ea604
  RESP BODY: 
{"network":{"id":"1749f7dd-e4b9-478b-bd28-a3dd7c539bd3","name":"net1","tenant_id":"89351aba4a0245f7ae35743cf9293731","admin_state_up":true,"mtu":1442,"status":"ACTIVE","subnets":["b7870888-7216-4f17-8aec-e1ecf29a6f8e"],"shared":false,"availability_zone_hints":[],"availability_zones":[],"ipv4_address_scope":null,"ipv6_address_scope":null,"router:external":false,"description":"","port_security_enabled":true,"tags":[],"created_at":"2021-08-11T09:55:47Z","updated_at":"2021-08-11T09:56:16Z","revision_number":2,"project_id":"89351aba4a0245f7ae35743cf9293731","provider:network_type":"geneve","provider:physical_network":null,"provider:segmentation_id":39538}}
  PUT call to network for 
http://10.35.64.8:9696/v2.0/networks/1749f7dd-e4b9-478b-bd28-a3dd7c539bd3 used 
request id req-20be4550-489e-4f8a-8efd-11fe0a4ea604
  clean_up SetNetwork: 
  END return value: 0


  Note: 
  After redeploying Devstack with DNS enabled, it means enabling "q-dns" in 
localrc:

  # Neutron
  ENABLED_SERVICES+=,q-svc,neutron,q-dns

  everything works as expected and "dns_domain" is properly set:
  stack@seal08:~/devstack$ openstack zone list --all
  
+--------------------------------------+----------------------------------+--------------+---------+------------+--------+--------+
  | id                                   | project_id                       | 
name         | type    |     serial | status | action |
  
+--------------------------------------+----------------------------------+--------------+---------+------------+--------+--------+
  | f6922edf-611f-4ba2-9bd8-e40eb7cade7d | 89351aba4a0245f7ae35743cf9293731 | 
example.com. | PRIMARY | 1628670413 | ACTIVE | NONE   |
  
+--------------------------------------+----------------------------------+--------------+---------+------------+--------+--------+
  stack@seal08:~/devstack$
  stack@seal08:~/devstack$
  stack@seal08:~/devstack$ openstack network list      
   
  
+--------------------------------------+----------------------------------+----------------------------------------------------------------------------+
  | ID                                   | Name                             | 
Subnets                                                                    |
  
+--------------------------------------+----------------------------------+----------------------------------------------------------------------------+
  | 65dd5e84-33c6-4b70-aad9-64c6f2f72d6d | private                          | 
03bb2ab9-1bff-4fea-ae6b-04506cab5122, c65d6919-6c3f-4c7a-a888-1a60d7366f12 |
  | 8f7ec778-a6f2-4358-abb3-2d3b880870fa | tempest-test-network--1234138305 | 
fd6e1a7c-eefb-49d8-8f0f-9e22ac070608                                       |
  | bf2e9b00-a52f-44a3-8369-9cf132276ebd | public                           | 
4a253538-673d-41cc-b3e6-928cdb19c762, 7a5e6ccd-f46a-4551-a3e9-b8df36428ce4 |
  | d38e2fed-f784-47e8-b0f1-dddb56e27905 | shared                           | 
d02072b0-b3bc-47d9-b82a-e305ee1c3e92                                       |
  
+--------------------------------------+----------------------------------+----------------------------------------------------------------------------+
  stack@seal08:~/devstack$
  stack@seal08:~/devstack$ openstack network set --dns-domain example.com.  
8f7ec778-a6f2-4358-abb3-2d3b880870fa -v
  START with options: network set --dns-domain example.com. 
8f7ec778-a6f2-4358-abb3-2d3b880870fa -v
  /usr/local/lib/python3.8/dist-packages/barbicanclient/__init__.py:57: 
UserWarning: The secrets module is moved to barbicanclient/v1 directory, direct 
import of barbicanclient.secrets will be deprecated. Please import 
barbicanclient.v1.secrets instead.
    warnings.warn("The %s module is moved to barbicanclient/v1 "
  command: network set -> openstackclient.network.v2.network.SetNetwork 
(auth=True)
  Using auth plugin: password
  END return value: 0
  stack@seal08:~/devstack$
  stack@seal08:~/devstack$
  stack@seal08:~/devstack$ openstack network show 
8f7ec778-a6f2-4358-abb3-2d3b880870fa
  +---------------------------+--------------------------------------+
  | Field                     | Value                                |
  +---------------------------+--------------------------------------+
  | admin_state_up            | UP                                   |
  | availability_zone_hints   |                                      |
  | availability_zones        |                                      |
  | created_at                | 2021-08-11T09:37:06Z                 |
  | description               |                                      |
  | dns_domain                | None                                 |
  | id                        | 8f7ec778-a6f2-4358-abb3-2d3b880870fa |
  | ipv4_address_scope        | None                                 |
  | ipv6_address_scope        | None                                 |
  | is_default                | None                                 |
  | is_vlan_transparent       | None                                 |
  | mtu                       | 1442                                 |
  | name                      | tempest-test-network--1234138305     |
  | port_security_enabled     | True                                 |
  | project_id                | f4cd701eb82a46c28918886ad1594b7c     |
  | provider:network_type     | geneve                               |
  | provider:physical_network | None                                 |
  | provider:segmentation_id  | 19626                                |
  | qos_policy_id             | None                                 |
  | revision_number           | 2                                    |
  | router:external           | Internal                             |
  | segments                  | None                                 |
  | shared                    | False                                |
  | status                    | ACTIVE                               |
  | subnets                   | fd6e1a7c-eefb-49d8-8f0f-9e22ac070608 |
  | tags                      |                                      |
  | updated_at                | 2021-08-11T09:37:07Z                 |
  +---------------------------+--------------------------------------+

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1939680/+subscriptions


-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to