Puppet Class: neutron::plugins::nuage

Defined in:
manifests/plugins/nuage.pp

Overview

DEPRECATED !! Configure the Nuage plugin for neutron.

Parameters

nuage_net_partition_name

(required) The net partition under which the VMs will be seen in the VSD

nuage_vsd_ip

(required) IP address of the Virtual Services Directory

nuage_vsd_username

(required) Username to be used to log into VSD

nuage_vsd_password

(required) Password to be used to log into VSD

nuage_vsd_organization

(required) Parameter required to log into VSD

nuage_base_uri_version

(required) URI version to be used based on the VSD release For example v3_0

nuage_cms_id

(required) CMS ID generated by the VSD

nuage_auth_resource

(optional) The auth resource value to be use to connect to VSD. The default is /me

nuage_server_ssl

(optional) Flag to determine whether to use ssl connection to connect to VSD. The default is True

purge_config

(optional) Whether to set only the specified config options in the nuage config. Defaults to false.

Parameters:

  • nuage_net_partition_name (Any)
  • nuage_vsd_ip (Any)
  • nuage_vsd_username (Any)
  • nuage_vsd_password (Any)
  • nuage_vsd_organization (Any)
  • nuage_base_uri_version (Any)
  • nuage_cms_id (Any)
  • nuage_auth_resource (Any) (defaults to: '/me')
  • nuage_server_ssl (Any) (defaults to: true)
  • purge_config (Any) (defaults to: false)


42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# File 'manifests/plugins/nuage.pp', line 42

class neutron::plugins::nuage (
  $nuage_net_partition_name,
  $nuage_vsd_ip,
  $nuage_vsd_username,
  $nuage_vsd_password,
  $nuage_vsd_organization,
  $nuage_base_uri_version,
  $nuage_cms_id,
  $nuage_auth_resource    = '/me',
  $nuage_server_ssl       = true,
  $purge_config           = false,
) {

  include neutron::deps
  include neutron::params

  warning('Support for Nuage core plugin has been deprecated. Use Nuage ml2 plugin.')

  file { '/etc/neutron/plugins/nuage':
    ensure => directory,
    tag    => 'neutron-config-file',
  }

  if $::osfamily == 'Debian' {
    file_line { '/etc/default/neutron-server:NEUTRON_PLUGIN_CONFIG':
      path  => '/etc/default/neutron-server',
      match => '^NEUTRON_PLUGIN_CONFIG=(.*)$',
      line  => "NEUTRON_PLUGIN_CONFIG=${::neutron::params::nuage_config_file}",
      tag   => 'neutron-file-line',
    }
  }

  if $::osfamily == 'Redhat' {
    file { '/etc/neutron/plugin.ini':
      ensure  => link,
      require => File['/etc/neutron/plugins/nuage/plugin.ini'],
      target  => $::neutron::params::nuage_config_file,
      tag     => 'neutron-config-file',
    }
  }

  file { '/etc/neutron/plugins/nuage/plugin.ini':
    ensure  => file,
    owner   => 'root',
    group   => $::neutron::params::group,
    require => File['/etc/neutron/plugins/nuage'],
    mode    => '0640',
    tag     => 'neutron-config-file',
  }

  resources { 'neutron_plugin_nuage':
    purge => $purge_config,
  }

  $nuage_base_uri_base = '/nuage/api'
  neutron_plugin_nuage {
    'RESTPROXY/default_net_partition_name': value => $nuage_net_partition_name;
    'RESTPROXY/server':                     value => $nuage_vsd_ip;
    'RESTPROXY/serverauth':                 value => "${nuage_vsd_username}:${nuage_vsd_password}";
    'RESTPROXY/organization':               value => $nuage_vsd_organization;
    'RESTPROXY/auth_resource':              value => $nuage_auth_resource;
    'RESTPROXY/serverssl':                  value => $nuage_server_ssl;
    'RESTPROXY/base_uri':                   value => "${nuage_base_uri_base}/${nuage_base_uri_version}";
    'RESTPROXY/cms_id':                     value => $nuage_cms_id;
  }

  if ($::neutron::core_plugin != 'nuage_neutron.plugins.nuage.plugin.NuagePlugin') and
    ($::neutron::core_plugin != 'nuage') {
    fail('Nuage plugin should be the core_plugin in neutron.conf')
  }
}