Drop extraconfig for neutron-nuage.yaml
authorDan Prince <dprince@redhat.com>
Thu, 9 Jun 2016 14:37:11 +0000 (10:37 -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 nuage settings get to live in the same file.

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

Change-Id: I15fe14e9d6881bc408eb6bb10d9293bd914ef858

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

index 59f6d34..28056b3 100644 (file)
@@ -1,7 +1,6 @@
 # A Heat environment file which can be used to enable a
 # a Neutron Nuage backend on the controller, configured via puppet
 resource_registry:
-  OS::TripleO::ControllerExtraConfigPre: ../puppet/extraconfig/pre_deploy/controller/neutron-nuage.yaml
   OS::TripleO::Services::NeutronL3Agent: OS::Heat::None
   OS::TripleO::Services::NeutronMetadataAgent: OS::Heat::None
   OS::TripleO::Services::NeutronOvsAgent: OS::Heat::None
index 70989cc..57d4386 100644 (file)
@@ -820,7 +820,6 @@ resources:
             - neutron_bigswitch_data # Optionally provided by ControllerExtraConfigPre
             - neutron_cisco_data # Optionally provided by ControllerExtraConfigPre
             - cisco_n1kv_data # Optionally provided by ControllerExtraConfigPre
-            - neutron_nuage_data # Optionally provided by ControllerExtraConfigPre
             - midonet_data #Optionally provided by AllNodesExtraConfig
             - neutron_opencontrail_data # Optionally provided by ControllerExtraConfigPre
           merge_behavior: deeper
diff --git a/puppet/extraconfig/pre_deploy/controller/neutron-nuage.yaml b/puppet/extraconfig/pre_deploy/controller/neutron-nuage.yaml
deleted file mode 100644 (file)
index a4cfea0..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-heat_template_version: 2015-04-30
-
-description: Configure hieradata for Nuage configuration on the Controller
-
-parameters:
-  server:
-    description: ID of the controller node to apply this config to
-    type: string
-
-  # Config specific parameters, to be provided via parameter_defaults
-  NeutronNuageOSControllerIp:
-    description: IP address of the OpenStack Controller
-    type: string
-
-  NeutronNuageNetPartitionName:
-    description: Specifies the title that you will see on the VSD
-    type: string
-    default: 'default_name'
-
-  NeutronNuageVSDIp:
-    description: IP address and port of the Virtual Services Directory
-    type: string
-
-  NeutronNuageVSDUsername:
-    description: Username to be used to log into VSD
-    type: string
-
-  NeutronNuageVSDPassword:
-    description: Password to be used to log into VSD
-    type: string
-
-  NeutronNuageVSDOrganization:
-    description: Organization parameter required to log into VSD
-    type: string
-    default: 'organization'
-
-  NeutronNuageBaseURIVersion:
-    description: URI version to be used based on the VSD release
-    type: string
-    default: 'default_uri_version'
-
-  NeutronNuageCMSId:
-    description: Cloud Management System ID (CMS ID) to distinguish between OS instances on the same VSD
-    type: string
-
-  UseForwardedFor:
-    description: Treat X-Forwarded-For as the canonical remote address. Only enable this if you have a sanitizing proxy.
-    type: boolean
-    default: false
-
-resources:
-  NeutronNuageConfig:
-    type: OS::Heat::StructuredConfig
-    properties:
-      group: os-apply-config
-      config:
-        hiera:
-          datafiles:
-            neutron_nuage_data:
-              mapped_data:
-               neutron::plugins::nuage::nuage_oscontroller_ip: {get_input: NuageOSControllerIp}
-               neutron::plugins::nuage::nuage_net_partition_name: {get_input: NuageNetPartitionName}
-               neutron::plugins::nuage::nuage_vsd_ip: {get_input: NuageVSDIp}
-               neutron::plugins::nuage::nuage_vsd_username: {get_input: NuageVSDUsername}
-               neutron::plugins::nuage::nuage_vsd_password: {get_input: NuageVSDPassword}
-               neutron::plugins::nuage::nuage_vsd_organization: {get_input: NuageVSDOrganization}
-               neutron::plugins::nuage::nuage_base_uri_version: {get_input: NuageBaseURIVersion}
-               neutron::plugins::nuage::nuage_cms_id: {get_input: NuageCMSId}
-               nova::api::use_forwarded_for: {get_input: NovaUseForwardedFor}
-
-  NeutronNuageDeployment:
-    type: OS::Heat::StructuredDeployment
-    properties:
-      name: NeutronNuageDeployment
-      config: {get_resource: NeutronNuageConfig}
-      server: {get_param: server}
-      input_values:
-        NuageOSControllerIp: {get_param: NeutronNuageOSControllerIp}
-        NuageNetPartitionName: {get_param: NeutronNuageNetPartitionName}
-        NuageVSDIp: {get_param: NeutronNuageVSDIp}
-        NuageVSDUsername: {get_param: NeutronNuageVSDUsername}
-        NuageVSDPassword: {get_param: NeutronNuageVSDPassword}
-        NuageVSDOrganization: {get_param: NeutronNuageVSDOrganization}
-        NuageBaseURIVersion: {get_param: NeutronNuageBaseURIVersion}
-        NuageCMSId: {get_param: NeutronNuageCMSId}
-        NovaUseForwardedFor: {get_param: UseForwardedFor}
-
-outputs:
-  deploy_stdout:
-    description: Deployment reference, used to trigger puppet apply on changes
-    value: {get_attr: [NeutronNuageDeployment, deploy_stdout]}
index db87f50..3c3d8b6 100644 (file)
@@ -9,6 +9,46 @@ parameters:
     description: Mapping of service endpoint -> protocol. Typically set
                  via parameter_defaults in the resource registry.
     type: json
+  # Config specific parameters, to be provided via parameter_defaults
+  NeutronNuageOSControllerIp:
+    description: IP address of the OpenStack Controller
+    type: string
+
+  NeutronNuageNetPartitionName:
+    description: Specifies the title that you will see on the VSD
+    type: string
+    default: 'default_name'
+
+  NeutronNuageVSDIp:
+    description: IP address and port of the Virtual Services Directory
+    type: string
+
+  NeutronNuageVSDUsername:
+    description: Username to be used to log into VSD
+    type: string
+
+  NeutronNuageVSDPassword:
+    description: Password to be used to log into VSD
+    type: string
+
+  NeutronNuageVSDOrganization:
+    description: Organization parameter required to log into VSD
+    type: string
+    default: 'organization'
+
+  NeutronNuageBaseURIVersion:
+    description: URI version to be used based on the VSD release
+    type: string
+    default: 'default_uri_version'
+
+  NeutronNuageCMSId:
+    description: Cloud Management System ID (CMS ID) to distinguish between OS instances on the same VSD
+    type: string
+
+  UseForwardedFor:
+    description: Treat X-Forwarded-For as the canonical remote address. Only enable this if you have a sanitizing proxy.
+    type: boolean
+    default: false
 
 resources:
 
@@ -22,5 +62,14 @@ outputs:
       config_settings:
         map_merge:
           - get_attr: [NeutronBase, role_data, config_settings]
+          - neutron::plugins::nuage::nuage_oscontroller_ip: {get_param: NeutronNuageOSControllerIp}
+            neutron::plugins::nuage::nuage_net_partition_name: {get_param: NeutronNuageNetPartitionName}
+            neutron::plugins::nuage::nuage_vsd_ip: {get_param: NeutronNuageVSDIp}
+            neutron::plugins::nuage::nuage_vsd_username: {get_param: NeutronNuageVSDUsername}
+            neutron::plugins::nuage::nuage_vsd_password: {get_param: NeutronNuageVSDPassword}
+            neutron::plugins::nuage::nuage_vsd_organization: {get_param: NeutronNuageVSDOrganization}
+            neutron::plugins::nuage::nuage_base_uri_version: {get_param: NeutronNuageBaseURIVersion}
+            neutron::plugins::nuage::nuage_cms_id: {get_param: NeutronNuageCMSId}
+            nova::api::use_forwarded_for: {get_param: UseForwardedFor}
       step_config: |
         include tripleo::profile::base::neutron::plugins::nuage