Bug 1409330 - Custom roles bridge_name input is not passed down into custom roles' nic-configs.
Summary: Custom roles bridge_name input is not passed down into custom roles' nic-conf...
Keywords:
Status: CLOSED DUPLICATE of bug 1405929
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 10.0 (Newton)
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: ---
Assignee: Jiri Stransky
QA Contact: Arik Chernetsky
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-12-31 20:16 UTC by Andreas Karis
Modified: 2020-02-14 18:24 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-12-31 20:19:05 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Andreas Karis 2016-12-31 20:16:52 UTC
Description of problem:
Custom roles bridge_name input is not passed down into custom roles' nic-configs. 

Version-Release number of selected component (if applicable):
OSP 10

How reproducible:


Steps to Reproduce:
1.Configure custom role for additional compute node type with network isolation. cp compute.yaml to customcompute.yaml and deploy.

Actual results:
/etc/os-net-config/config.json
(...)  {"use_dhcp": false, "type": "ovs_bridge", "name": None, (...)

Expected results:
/etc/os-net-config/config.json
 {"use_dhcp": false, "type": "ovs_bridge", "name": "br-ex",

Additional info:

workaround:

(...)
            -
              type: ovs_bridge
              # note that input bridge_name will not work here, configure a static bridge name
              #name: {get_input: bridge_name}
              name: br-ex
(...)


Unless I misunderstand the templates, this is completely missing for all roles but computes, and for controllers it's hardcoded to br-ex?
~~~
[stack@undercloud-1 templates]$ grep bridge_name /usr/share/openstack-tripleo-heat-templates/* -R | grep -v net-config | grep -v 'network/config'
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml:        bridge_name: {get_param: NeutronPhysicalBridge}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml:        bridge_name: br-ex
~~~

In any way, this is not working for custom roles.


~~~
[stack@undercloud-1 templates]$ grep NetworkDeployment: /usr/share/openstack-tripleo-heat-templates/* -R -C10
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      StorageMgmtIpUri: {get_attr: [StorageMgmtPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      TenantIp: {get_attr: [TenantPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      TenantIpUri: {get_attr: [TenantPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      ManagementIp: {get_attr: [ManagementPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      ManagementIpUri: {get_attr: [ManagementPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml:  NetworkDeployment:
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-    type: OS::TripleO::SoftwareDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-    properties:
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      name: NetworkDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      config: {get_resource: NetworkConfig}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      server: {get_resource: BlockStorage}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-      actions: {get_param: NetworkDeploymentActions}
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-  BlockStorageDeployment:
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-    type: OS::Heat::StructuredDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/blockstorage-role.yaml-    depends_on: NetworkDeployment
--
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      StorageMgmtIpUri: {get_attr: [StorageMgmtPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      TenantIp: {get_attr: [TenantPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      TenantIpUri: {get_attr: [TenantPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      ManagementIp: {get_attr: [ManagementPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      ManagementIpUri: {get_attr: [ManagementPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml:  NetworkDeployment:
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-    type: OS::TripleO::SoftwareDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-    properties:
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      name: NetworkDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      config: {get_resource: NetworkConfig}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      server: {get_resource: CephStorage}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-      actions: {get_param: NetworkDeploymentActions}
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-  CephStorageDeployment:
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-    type: OS::Heat::StructuredDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/cephstorage-role.yaml-    depends_on: NetworkDeployment
--
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-    type: OS::TripleO::Compute::Net::SoftwareConfig
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-    properties:
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      ControlPlaneIp: {get_attr: [NovaCompute, networks, ctlplane, 0]}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml:  NetworkDeployment:
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-    type: OS::TripleO::SoftwareDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-    properties:
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      name: NetworkDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      config: {get_resource: NetworkConfig}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      server: {get_resource: NovaCompute}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      actions: {get_param: NetworkDeploymentActions}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-      input_values:
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-        bridge_name: {get_param: NeutronPhysicalBridge}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-        interface_name: {get_param: NeutronPublicInterface}
/usr/share/openstack-tripleo-heat-templates/puppet/compute-role.yaml-
--
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-    type: OS::TripleO::Controller::Net::SoftwareConfig
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-    properties:
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      ControlPlaneIp: {get_attr: [Controller, networks, ctlplane, 0]}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      ExternalIpSubnet: {get_attr: [ExternalPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml:  NetworkDeployment:
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-    type: OS::TripleO::SoftwareDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-    properties:
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      name: NetworkDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      config: {get_resource: NetworkConfig}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      server: {get_resource: Controller}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      actions: {get_param: NetworkDeploymentActions}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-      input_values:
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-        bridge_name: br-ex
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-        interface_name: {get_param: NeutronPublicInterface}
/usr/share/openstack-tripleo-heat-templates/puppet/controller-role.yaml-
--
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      StorageMgmtIpUri: {get_attr: [StorageMgmtPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      TenantIp: {get_attr: [TenantPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      TenantIpUri: {get_attr: [TenantPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      ManagementIp: {get_attr: [ManagementPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      ManagementIpUri: {get_attr: [ManagementPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml:  NetworkDeployment:
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-    type: OS::TripleO::SoftwareDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-    properties:
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      name: NetworkDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      config: {get_resource: NetworkConfig}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      server: {get_resource: SwiftStorage}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-      actions: {get_param: NetworkDeploymentActions}
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-  SwiftStorageHieraConfig:
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-    type: OS::Heat::StructuredConfig
/usr/share/openstack-tripleo-heat-templates/puppet/objectstorage-role.yaml-    properties:
--
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      StorageMgmtIp: {get_attr: [StorageMgmtPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      StorageMgmtIpUri: {get_attr: [StorageMgmtPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      TenantIp: {get_attr: [TenantPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      TenantIpSubnet: {get_attr: [TenantPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      TenantIpUri: {get_attr: [TenantPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      ManagementIp: {get_attr: [ManagementPort, ip_address]}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      ManagementIpSubnet: {get_attr: [ManagementPort, ip_subnet]}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      ManagementIpUri: {get_attr: [ManagementPort, ip_address_uri]}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml:  NetworkDeployment:
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-    type: OS::TripleO::SoftwareDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-    properties:
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      name: NetworkDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      config: {get_resource: NetworkConfig}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      server: {get_resource: {{role}}}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-      actions: {get_param: NetworkDeploymentActions}
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-  {{role}}Deployment:
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-    type: OS::Heat::StructuredDeployment
/usr/share/openstack-tripleo-heat-templates/puppet/role.role.j2.yaml-    depends_on: NetworkDeployment
~~~

Comment 1 Andreas Karis 2016-12-31 20:19:05 UTC

*** This bug has been marked as a duplicate of bug 1405929 ***


Note You need to log in before you can comment on or make changes to this bug.