Drop extraconfig for neutron-opencontrail.yaml
authorDan Prince <dprince@redhat.com>
Fri, 10 Jun 2016 19:51:51 +0000 (15:51 -0400)
committerDan Prince <dprince@redhat.com>
Thu, 16 Jun 2016 19:04:25 +0000 (15:04 -0400)
This patch drops the extraconfig interface in favor
of using the composable services nested stack instead.

The benefit is that it is easier to enable multiple services
(like network and storage backends at the same time) and all
of the opencontrail settings get to live in the same file.

Partially-implements: blueprint composable-services-within-roles

Change-Id: I0edbd86a8c981bd6e8a547cd2a6ebed18ecdbb31

environments/neutron-opencontrail.yaml
puppet/controller.yaml
puppet/extraconfig/pre_deploy/controller/neutron-opencontrail.yaml [deleted file]
puppet/services/neutron-plugin-opencontrail.yaml

index 36354bc..340bac7 100644 (file)
@@ -1,7 +1,6 @@
 # A Heat environment file which can be used to enable OpenContrail
 # extensions, configured via puppet
 resource_registry:
-  OS::TripleO::ControllerExtraConfigPre: ../puppet/extraconfig/pre_deploy/controller/neutron-opencontrail.yaml
   OS::TripleO::ComputeExtraConfigPre: ../puppet/extraconfig/pre_deploy/compute/neutron-opencontrail.yaml
   OS::TripleO::Services::NeutronDhcpAgent: OS::Heat::None
   OS::TripleO::Services::NeutronL3Agent: OS::Heat::None
index 57d4386..f12656d 100644 (file)
@@ -821,7 +821,6 @@ resources:
             - neutron_cisco_data # Optionally provided by ControllerExtraConfigPre
             - cisco_n1kv_data # Optionally provided by ControllerExtraConfigPre
             - midonet_data #Optionally provided by AllNodesExtraConfig
-            - neutron_opencontrail_data # Optionally provided by ControllerExtraConfigPre
           merge_behavior: deeper
           datafiles:
             service_configs:
diff --git a/puppet/extraconfig/pre_deploy/controller/neutron-opencontrail.yaml b/puppet/extraconfig/pre_deploy/controller/neutron-opencontrail.yaml
deleted file mode 100644 (file)
index 5c686fe..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-heat_template_version: 2015-04-30
-
-description: Controller hieradata for Neutron OpenContrail configuration
-
-parameters:
-  server:
-    description: ID of the controller node to apply this config to
-    type: string
-  ContrailApiServerIp:
-    description: IP address of the OpenContrail API server
-    type: string
-  ContrailApiServerPort:
-    description: Port of the OpenContrail API
-    type: string
-    default: 8082
-  ContrailMultiTenancy:
-    description: Whether to enable multi tenancy
-    type: boolean
-    default: false
-  ContrailExtensions:
-    description: List of OpenContrail extensions to be enabled
-    type: comma_delimited_list
-    default: ''
-
-resources:
-  ControllerContrailConfig:
-    type: OS::Heat::StructuredConfig
-    properties:
-      group: os-apply-config
-      config:
-        hiera:
-          datafiles:
-            neutron_opencontrail_data:
-              mapped_data:
-                neutron::api_extensions_path: /usr/lib/python2.7/site-packages/neutron_plugin_contrail/extensions
-
-                neutron::plugins::opencontrail::api_server_ip: {get_input: contrail_api_server_ip}
-                neutron::plugins::opencontrail::api_server_port: {get_input: contrail_api_server_port}
-                neutron::plugins::opencontrail::multi_tenancy: {get_input: contrail_multi_tenancy}
-                neutron::plugins::opencontrail::contrail_extensions: {get_input: contrail_extensions}
-                neutron::plugins::opencontrail::keystone_auth_url: '"%{hiera(''keystone_auth_uri'')}"'
-                neutron::plugins::opencontrail::keystone_admin_user: admin
-                neutron::plugins::opencontrail::keystone_admin_tenant_name: admin
-                neutron::plugins::opencontrail::keystone_admin_password: '"%{hiera(''admin_password'')}"'
-                neutron::plugins::opencontrail::keystone_admin_token: '"%{hiera(''keystone::admin_token'')}"'
-
-  ControllerContrailDeployment:
-    type: OS::Heat::StructuredDeployment
-    properties:
-      config: {get_resource: ControllerContrailConfig}
-      server: {get_param: server}
-      input_values:
-        contrail_api_server_ip: {get_param: ContrailApiServerIp}
-        contrail_api_server_port: {get_param: ContrailApiServerPort}
-        contrail_multi_tenancy: {get_param: ContrailMultiTenancy}
-        contrail_extensions: {get_param: ContrailExtensions}
-
-
-outputs:
-  deploy_stdout:
-    description: Output of the extra hiera data deployment
-    value: {get_attr: [ControllerContrailDeployment, deploy_stdout]}
index c6499e2..9c58c03 100644 (file)
@@ -9,6 +9,29 @@ parameters:
     description: Mapping of service endpoint -> protocol. Typically set
                  via parameter_defaults in the resource registry.
     type: json
+  AdminPassword:
+    description: The password for the keystone admin account, used for monitoring, querying neutron etc.
+    type: string
+    hidden: true
+  AdminToken:
+    description: The keystone auth secret and db password.
+    type: string
+    hidden: true
+  ContrailApiServerIp:
+    description: IP address of the OpenContrail API server
+    type: string
+  ContrailApiServerPort:
+    description: Port of the OpenContrail API
+    type: string
+    default: 8082
+  ContrailMultiTenancy:
+    description: Whether to enable multi tenancy
+    type: boolean
+    default: false
+  ContrailExtensions:
+    description: List of OpenContrail extensions to be enabled
+    type: comma_delimited_list
+    default: ''
 
 resources:
 
@@ -22,5 +45,16 @@ outputs:
       config_settings:
         map_merge:
           - get_attr: [NeutronBase, role_data, config_settings]
+          - neutron::api_extensions_path: /usr/lib/python2.7/site-packages/neutron_plugin_contrail/extensions
+
+            neutron::plugins::opencontrail::api_server_ip: {get_param: ContrailApiServerIp}
+            neutron::plugins::opencontrail::api_server_port: {get_param: ContrailApiServerPort}
+            neutron::plugins::opencontrail::multi_tenancy: {get_param: ContrailMultiTenancy}
+            neutron::plugins::opencontrail::contrail_extensions: {get_param: ContrailExtensions}
+            neutron::plugins::opencontrail::keystone_auth_url: {get_param: [EndpointMap, KeystoneInternal, uri] }
+            neutron::plugins::opencontrail::keystone_admin_user: admin
+            neutron::plugins::opencontrail::keystone_admin_tenant_name: admin
+            neutron::plugins::opencontrail::keystone_admin_password: {get_param: AdminPassword}
+            neutron::plugins::opencontrail::keystone_admin_token: {get_param: AdminToken}
       step_config: |
         include tripleo::profile::base::neutron::plugins::opencontrail