Fix vlan_interface option for VlanManager

Add fix for compute-vmware and controller roles
Add noop test for compute-vmware and controller roles

Change-Id: Ieec93f663439701ca5b1a6ba627f7682f6f4a54b
Closes-Bug: #1495949
(cherry picked from commit 230d8574e0)
This commit is contained in:
Alexander Arzhanov 2015-09-15 18:32:36 +03:00
parent 0623b4daad
commit 6efc6698dd
7 changed files with 2133 additions and 7 deletions

View File

@ -10,6 +10,9 @@ $computes_hash = parse_vcenter_settings($vcenter_hash['computes'])
$uid = hiera('uid')
$node_name = "node-$uid"
$defaults = { current_node => $node_name }
$defaults = {
current_node => $node_name,
vlan_interface => $vcenter_hash['esxi_vlan_interface']
}
create_resources(vmware::compute_vmware, $computes_hash, $defaults)

View File

@ -10,7 +10,7 @@ $debug = hiera('debug', false)
if $use_vcenter {
class { 'vmware':
vcenter_settings => $vcenter_hash['computes'],
vlan_interface => $vcenter_hash['vlan_interface'],
vlan_interface => $vcenter_hash['esxi_vlan_interface'],
use_quantum => $use_neutron,
vnc_address => $public_vip,
ceilometer => $ceilometer_hash['enabled'],

View File

@ -27,6 +27,7 @@ define vmware::compute_vmware(
$service_name,
$current_node,
$target_node,
$vlan_interface,
$datastore_regex = undef,
$api_retry_count = 5,
$maximum_objects = 100,

View File

@ -0,0 +1,814 @@
---
tasks:
- priority: 100
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/hiera/hiera.pp"
timeout: 3600
cwd: "/"
- priority: 200
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/globals/globals.pp"
timeout: 3600
cwd: "/"
- priority: 300
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/logging/logging.pp"
timeout: 3600
cwd: "/"
- priority: 400
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/tools/tools.pp"
timeout: 3600
cwd: "/"
- priority: 500
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/netconfig/netconfig.pp"
timeout: 3600
cwd: "/"
- priority: 600
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/netconfig/connectivity_tests.pp"
timeout: 3600
cwd: "/"
- priority: 700
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/firewall/firewall.pp"
timeout: 3600
cwd: "/"
- priority: 800
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/hosts/hosts.pp"
timeout: 3600
cwd: "/"
- priority: 1000
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/zabbix/zabbix.pp"
timeout: 3600
cwd: "/"
- priority: 1100
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/roles/compute.pp"
timeout: 3600
cwd: "/"
- priority: 1200
type: puppet
uids:
- '4'
parameters:
puppet_modules: "/etc/puppet/modules"
puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/vmware/compute-vmware.pp"
timeout: 180
cwd: "/"
user_node_name: Untitled (c8:39)
uid: '4'
storage:
iser: false
volumes_ceph: false
per_pool_pg_nums:
compute: 128
default_pg_num: 128
volumes: 128
images: 128
backups: 128
".rgw": 128
objects_ceph: false
ephemeral_ceph: false
volumes_lvm: true
images_vcenter: false
osd_pool_size: '2'
pg_num: 128
images_ceph: false
metadata:
weight: 60
label: Storage
resume_guests_state_on_host_boot: true
public_vip: 10.109.6.2
syslog:
syslog_port: '514'
syslog_transport: tcp
syslog_server: ''
metadata:
weight: 50
label: Syslog
libvirt_type: qemu
puppet:
modules: rsync://10.109.0.2:/puppet/2015.1.0-7.0/modules/
manifests: rsync://10.109.0.2:/puppet/2015.1.0-7.0/manifests/
mysql:
root_password: 4t67JmJk
wsrep_password: vugKPCKR
fail_if_error: false
use_cow_images: true
glance:
db_password: ICT8nfNP
vc_user: ''
vc_datastore: ''
vc_host: ''
vc_datacenter: ''
vc_password: ''
user_password: ONErUJGW
cobbler:
profile: ubuntu_1404_x86_64
mongo:
enabled: false
quantum_settings:
metadata:
metadata_proxy_shared_secret: V16UWm5S
keystone:
admin_password: SeGPcTrc
database:
passwd: abgXDCNV
network_metadata:
nodes:
node-5:
user_node_name: Untitled (56:9f)
uid: '5'
fqdn: node-5.test.domain.local
network_roles:
murano/api: 172.16.1.6
keystone/api: 172.16.1.6
mgmt/database: 172.16.1.6
sahara/api: 172.16.1.6
ceilometer/api: 172.16.1.6
ex: 172.16.0.6
ceph/public: 172.16.1.6
mgmt/messaging: 172.16.1.6
management: 172.16.1.6
swift/api: 172.16.1.6
storage: 192.168.1.4
mgmt/corosync: 172.16.1.6
cinder/api: 172.16.1.6
public/vip: 172.16.0.6
swift/replication: 192.168.1.4
ceph/radosgw: 172.16.0.6
admin/pxe: 10.109.0.7
mongo/db: 172.16.1.6
fw-admin: 10.109.0.7
glance/api: 172.16.1.6
mgmt/vip: 172.16.1.6
heat/api: 172.16.1.6
nova/api: 172.16.1.6
horizon: 172.16.1.6
mgmt/memcache: 172.16.1.6
cinder/iscsi: 192.168.1.4
ceph/replication: 192.168.1.4
swift_zone: '5'
node_roles:
- controller
name: node-5
node-4:
user_node_name: Untitled (c8:39)
uid: '4'
fqdn: node-4.test.domain.local
network_roles:
murano/api: 172.16.1.7
keystone/api: 172.16.1.7
mgmt/database: 172.16.1.7
sahara/api: 172.16.1.7
ceilometer/api: 172.16.1.7
ex: 172.16.0.7
ceph/public: 172.16.1.7
mgmt/messaging: 172.16.1.7
management: 172.16.1.7
swift/api: 172.16.1.7
storage: 192.168.1.5
mgmt/corosync: 172.16.1.7
cinder/api: 172.16.1.7
public/vip: 172.16.0.7
swift/replication: 192.168.1.5
ceph/radosgw: 172.16.0.7
admin/pxe: 10.109.0.6
mongo/db: 172.16.1.7
fw-admin: 10.109.0.6
glance/api: 172.16.1.7
mgmt/vip: 172.16.1.7
heat/api: 172.16.1.7
nova/api: 172.16.1.7
horizon: 172.16.1.7
mgmt/memcache: 172.16.1.7
cinder/iscsi: 192.168.1.5
ceph/replication: 192.168.1.5
swift_zone: '4'
node_roles:
- compute-vmware
name: node-4
node-7:
user_node_name: Untitled (c1:0b)
uid: '7'
fqdn: node-7.test.domain.local
network_roles:
murano/api: 172.16.1.4
keystone/api: 172.16.1.4
mgmt/database: 172.16.1.4
sahara/api: 172.16.1.4
ceilometer/api: 172.16.1.4
ex: 172.16.0.4
ceph/public: 172.16.1.4
mgmt/messaging: 172.16.1.4
management: 172.16.1.4
swift/api: 172.16.1.4
storage: 192.168.1.2
mgmt/corosync: 172.16.1.4
cinder/api: 172.16.1.4
public/vip: 172.16.0.4
swift/replication: 192.168.1.2
ceph/radosgw: 172.16.0.4
admin/pxe: 10.109.0.8
mongo/db: 172.16.1.4
fw-admin: 10.109.0.8
glance/api: 172.16.1.4
mgmt/vip: 172.16.1.4
heat/api: 172.16.1.4
nova/api: 172.16.1.4
horizon: 172.16.1.4
mgmt/memcache: 172.16.1.4
cinder/iscsi: 192.168.1.2
ceph/replication: 192.168.1.2
swift_zone: '7'
node_roles:
- cinder-vmware
name: node-7
node-6:
user_node_name: Untitled (8b:3c)
uid: '6'
fqdn: node-6.test.domain.local
network_roles:
murano/api: 172.16.1.3
keystone/api: 172.16.1.3
mgmt/database: 172.16.1.3
sahara/api: 172.16.1.3
ceilometer/api: 172.16.1.3
ex: 172.16.0.8
ceph/public: 172.16.1.3
mgmt/messaging: 172.16.1.3
management: 172.16.1.3
swift/api: 172.16.1.3
storage: 192.168.1.1
mgmt/corosync: 172.16.1.3
cinder/api: 172.16.1.3
public/vip: 172.16.0.8
swift/replication: 192.168.1.1
ceph/radosgw: 172.16.0.8
admin/pxe: 10.109.0.9
mongo/db: 172.16.1.3
fw-admin: 10.109.0.9
glance/api: 172.16.1.3
mgmt/vip: 172.16.1.3
heat/api: 172.16.1.3
nova/api: 172.16.1.3
horizon: 172.16.1.3
mgmt/memcache: 172.16.1.3
cinder/iscsi: 192.168.1.1
ceph/replication: 192.168.1.1
swift_zone: '6'
node_roles:
- controller
name: node-6
node-3:
user_node_name: Untitled (19:f0)
uid: '3'
fqdn: node-3.test.domain.local
network_roles:
murano/api: 172.16.1.5
keystone/api: 172.16.1.5
mgmt/database: 172.16.1.5
sahara/api: 172.16.1.5
ceilometer/api: 172.16.1.5
ex: 172.16.0.5
ceph/public: 172.16.1.5
mgmt/messaging: 172.16.1.5
management: 172.16.1.5
swift/api: 172.16.1.5
storage: 192.168.1.3
mgmt/corosync: 172.16.1.5
cinder/api: 172.16.1.5
public/vip: 172.16.0.5
swift/replication: 192.168.1.3
ceph/radosgw: 172.16.0.5
admin/pxe: 10.109.0.4
mongo/db: 172.16.1.5
fw-admin: 10.109.0.4
glance/api: 172.16.1.5
mgmt/vip: 172.16.1.5
heat/api: 172.16.1.5
nova/api: 172.16.1.5
horizon: 172.16.1.5
mgmt/memcache: 172.16.1.5
cinder/iscsi: 192.168.1.3
ceph/replication: 192.168.1.3
swift_zone: '3'
node_roles:
- primary-controller
name: node-3
vips:
vrouter_pub:
network_role: public/vip
ipaddr: 172.16.0.2
node_roles:
- controller
- primary-controller
namespace: vrouter
management:
network_role: mgmt/vip
ipaddr: 172.16.1.2
node_roles:
- controller
- primary-controller
namespace: haproxy
public:
network_role: public/vip
ipaddr: 172.16.0.3
node_roles:
- controller
- primary-controller
namespace: haproxy
vrouter:
network_role: mgmt/vip
ipaddr: 172.16.1.1
node_roles:
- controller
- primary-controller
namespace: vrouter
openstack_version: 2015.1.0-7.0
kernel_params:
kernel: console=ttyS0,9600 console=tty0 net.ifnames=0 biosdevname=0 rootdelay=90
nomodeset
metadata:
weight: 40
label: Kernel parameters
provision:
image_data:
"/boot":
container: gzip
uri: http://10.109.0.2:8080/targetimages/env_3_ubuntu_1404_amd64-boot.img.gz
format: ext2
"/":
container: gzip
uri: http://10.109.0.2:8080/targetimages/env_3_ubuntu_1404_amd64.img.gz
format: ext4
codename: trusty
method: image
metadata:
restrictions:
- action: hide
condition: 'true'
weight: 80
label: Provision
fixed_network_range: 10.0.0.0/16
nova:
db_password: owRNCV7f
user_password: 77CHLe8y
state_path: "/var/lib/nova"
master_ip: 10.109.0.2
priority: 300
external_dns:
dns_list: 10.109.0.1
metadata:
weight: 90
label: Host OS DNS Servers
murano:
db_password: LpTa5Fel
user_password: N0VcO3j3
enabled: false
rabbit_password: OWZM0x9z
murano_settings:
murano_repo_url: http://storage.apps.openstack.org/
metadata:
restrictions:
- action: hide
message: Murano is not enabled on the Additional Components section
condition: settings:additional_components.murano.value == false
weight: 20
label: Murano Settings
role: compute-vmware
external_mongo:
mongo_db_name: ceilometer
mongo_replset: ''
mongo_user: ceilometer
hosts_ip: ''
mongo_password: ceilometer
metadata:
restrictions:
- action: hide
message: Ceilometer and MongoDB are not enabled on the Additional Components
section
condition: settings:additional_components.mongo.value == false
weight: 20
label: External MongoDB
online: true
keystone:
db_password: RGAv0zS2
admin_token: Ro9qKUKs
vcenter:
computes:
- datastore_regex: ".*"
target_node: controllers
service_name: cluster1
availability_zone_name: vcenter
vc_cluster: Cluster1
vc_host: 172.16.0.254
vc_password: Qwer!1234
vc_user: administrator@vsphere.local
- datastore_regex: ".*"
target_node: node-4
service_name: cluster2
availability_zone_name: vcenter
vc_cluster: Cluster2
vc_host: 172.16.0.254
vc_password: Qwer!1234
vc_user: administrator@vsphere.local
esxi_vlan_interface: vmnic0
nova_quota: false
ceilometer:
db_password: r56XkOlD
user_password: rM79wR8O
metering_secret: RJzs6Oyi
enabled: false
corosync:
group: 226.94.1.1
verified: false
port: '12000'
metadata:
restrictions:
- action: hide
condition: 'true'
weight: 50
label: Corosync
metadata:
weight: 30
label: Common
status: discover
swift:
user_password: JpzD0qLl
repo_setup:
installer_kernel:
local: "/var/www/nailgun/ubuntu/x86_64/images/linux"
remote_relative: dists/trusty/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/linux
repos:
- name: ubuntu
section: main universe multiverse
uri: http://archive.ubuntu.com/ubuntu/
priority:
suite: trusty
type: deb
- name: ubuntu-updates
section: main universe multiverse
uri: http://archive.ubuntu.com/ubuntu/
priority:
suite: trusty-updates
type: deb
- name: ubuntu-security
section: main universe multiverse
uri: http://archive.ubuntu.com/ubuntu/
priority:
suite: trusty-security
type: deb
- name: mos
section: main restricted
uri: http://10.109.0.2:8080/2015.1.0-7.0/ubuntu/x86_64
priority: 1050
suite: mos7.0
type: deb
- name: mos-updates
section: main restricted
uri: http://mirror.fuel-infra.org/mos-repos/ubuntu/7.0/
priority: 1050
suite: mos7.0-updates
type: deb
- name: mos-security
section: main restricted
uri: http://mirror.fuel-infra.org/mos-repos/ubuntu/7.0/
priority: 1050
suite: mos7.0-security
type: deb
- name: mos-holdback
section: main restricted
uri: http://mirror.fuel-infra.org/mos-repos/ubuntu/7.0/
priority: 1100
suite: mos7.0-holdback
type: deb
- name: Auxiliary
section: main restricted
uri: http://10.109.0.2:8080/2015.1.0-7.0/ubuntu/auxiliary
priority: 1150
suite: auxiliary
type: deb
metadata:
always_editable: true
weight: 50
label: Repositories
installer_initrd:
local: "/var/www/nailgun/ubuntu/x86_64/images/initrd.gz"
remote_relative: dists/trusty/main/installer-amd64/current/images/netboot/ubuntu-installer/amd64/initrd.gz
deployment_mode: ha_compact
novanetwork_parameters:
vlan_start: 103
network_manager: VlanManager
num_networks: 1
network_size: 256
sahara:
db_password: cvgVWOPT
user_password: uG7mcKEZ
enabled: false
use_vcenter: true
network_scheme:
transformations:
- action: add-br
name: br-fw-admin
- action: add-br
name: br-storage
- action: add-br
name: br-mgmt
- action: add-br
name: br-ex
- action: add-port
bridge: br-fw-admin
name: eth0
- action: add-port
bridge: br-ex
name: eth1
- action: add-port
bridge: br-mgmt
name: eth2.101
- action: add-port
bridge: br-storage
name: eth4.102
roles:
murano/api: br-mgmt
keystone/api: br-mgmt
mgmt/database: br-mgmt
sahara/api: br-mgmt
ceilometer/api: br-mgmt
ex: br-ex
ceph/public: br-mgmt
mgmt/messaging: br-mgmt
management: br-mgmt
swift/api: br-mgmt
storage: br-storage
mgmt/corosync: br-mgmt
cinder/api: br-mgmt
public/vip: br-ex
swift/replication: br-storage
ceph/radosgw: br-ex
admin/pxe: br-fw-admin
mongo/db: br-mgmt
fw-admin: br-fw-admin
glance/api: br-mgmt
heat/api: br-mgmt
mgmt/vip: br-mgmt
nova/api: br-mgmt
horizon: br-mgmt
novanetwork/vlan: eth1
mgmt/memcache: br-mgmt
cinder/iscsi: br-storage
ceph/replication: br-storage
interfaces:
eth4: {}
eth3: {}
eth2: {}
eth1: {}
eth0: {}
version: '1.1'
provider: lnx
endpoints:
br-fw-admin:
IP:
- 10.109.0.6/24
br-storage:
IP:
- 192.168.1.5/24
br-mgmt:
IP:
- 172.16.1.7/24
eth1:
IP: none
br-ex:
IP:
- 172.16.0.7/24
gateway: 172.16.0.1
heat:
db_password: vvKwC5nk
user_password: Iu130Azv
enabled: true
auth_encryption_key: cce511b05ad01c693e2cc93d90a28fc2
rabbit_password: fzGamkpk
storage_network_range: 192.168.1.0/24
fuel_version: '7.0'
rabbit:
password: XrExAeLy
public_network_assignment:
assign_to_all_nodes: false
metadata:
restrictions:
- action: hide
condition: cluster:net_provider != 'neutron'
weight: 50
label: Public network assignment
test_vm_image:
- os_name: cirros
img_path: "/usr/share/cirros-testvm/cirros-i386-disk.vmdk"
container_format: bare
min_ram: 64
disk_format: vmdk
glance_properties: "--property vmware_disktype=sparse --property vmware_adaptertype=lsilogic
--property hypervisor_type=vmware"
img_name: TestVM-VMDK
public: 'true'
- os_name: cirros
img_path: "/usr/share/cirros-testvm/cirros-x86_64-disk.img"
container_format: bare
min_ram: 64
disk_format: qcow2
glance_properties: ''
img_name: TestVM
public: 'true'
management_network_range: 172.16.1.0/24
nodes:
- user_node_name: Untitled (19:f0)
uid: '3'
public_address: 172.16.0.5
internal_netmask: 255.255.255.0
fqdn: node-3.test.domain.local
role: primary-controller
public_netmask: 255.255.255.0
internal_address: 172.16.1.5
storage_address: 192.168.1.3
swift_zone: '3'
storage_netmask: 255.255.255.0
name: node-3
- user_node_name: Untitled (c8:39)
uid: '4'
public_address: 172.16.0.7
internal_netmask: 255.255.255.0
fqdn: node-4.test.domain.local
role: compute-vmware
public_netmask: 255.255.255.0
internal_address: 172.16.1.7
storage_address: 192.168.1.5
swift_zone: '4'
storage_netmask: 255.255.255.0
name: node-4
- user_node_name: Untitled (56:9f)
uid: '5'
public_address: 172.16.0.6
internal_netmask: 255.255.255.0
fqdn: node-5.test.domain.local
role: controller
public_netmask: 255.255.255.0
internal_address: 172.16.1.6
storage_address: 192.168.1.4
swift_zone: '5'
storage_netmask: 255.255.255.0
name: node-5
- user_node_name: Untitled (8b:3c)
uid: '6'
public_address: 172.16.0.8
internal_netmask: 255.255.255.0
fqdn: node-6.test.domain.local
role: controller
public_netmask: 255.255.255.0
internal_address: 172.16.1.3
storage_address: 192.168.1.1
swift_zone: '6'
storage_netmask: 255.255.255.0
name: node-6
- user_node_name: Untitled (c1:0b)
uid: '7'
public_address: 172.16.0.4
internal_netmask: 255.255.255.0
fqdn: node-7.test.domain.local
role: cinder-vmware
public_netmask: 255.255.255.0
internal_address: 172.16.1.4
storage_address: 192.168.1.2
swift_zone: '7'
storage_netmask: 255.255.255.0
name: node-7
neutron_advanced_configuration:
neutron_dvr: false
neutron_l2_pop: false
metadata:
restrictions:
- action: hide
condition: cluster:net_provider != 'neutron'
weight: 45
label: Neutron Advanced Configuration
base_syslog:
syslog_port: '514'
syslog_server: 10.109.0.2
vms_conf: []
workloads_collector:
username: fuel_stats_user
enabled: true
create_user: true
password: xOa1RAu5
tenant: services
metadata:
restrictions:
- action: hide
condition: 'true'
weight: 10
label: Workloads Collector User
floating_network_range:
- 172.16.0.128-172.16.0.254
auth_key: ''
horizon:
secret_key: 12a6ce8f434e2891f12c4aa82381238b325978703a2fdfe58b9e7c38f7e57f07
puppet_debug: true
access:
metadata:
weight: 10
label: Access
password: admin
user: admin
tenant: admin
email: admin@localhost
last_controller: node-6
fqdn: node-4.test.domain.local
public_ssl:
hostname: public.fuel.local
horizon: true
services: true
cert_data:
content: 'somedataaboutyourkeypair'
cert_source: self_signed
metadata:
weight: 110
label: Public TLS
auto_assign_floating_ip: false
mp:
- weight: '1'
point: '1'
- weight: '2'
point: '2'
neutron_mellanox:
vf_num: '16'
metadata:
restrictions:
- action: hide
condition: not ('experimental' in version:feature_groups)
enabled: true
weight: 50
toggleable: false
label: Mellanox Neutron components
plugin: disabled
dns_nameservers:
- 8.8.4.4
- 8.8.8.8
debug: false
cinder:
instances:
- availability_zone_name: vcenter
vc_password: Qwer!1234
vc_host: 172.16.0.254
vc_user: administrator@vsphere.local
user_password: isWEnzor
fixed_key: 94fce8fa7b77d25911b2b311c965ac31014d6e39d3256998501f188ba805484d
db_password: Q4I97R7I
deployment_id: 3
external_ntp:
ntp_list: 10.109.0.1
metadata:
weight: 100
label: Host OS NTP Servers
openstack_version_prev:

File diff suppressed because it is too large Load Diff

View File

@ -4,12 +4,25 @@ manifest = 'vmware/compute-vmware.pp'
describe manifest do
shared_examples 'catalog' do
it 'should have cache_prefix option set to $host' do
should contain_file('/etc/nova/nova-compute.conf').with_content(
%r{\n\s*cache_prefix=\$host\n}
)
end
end
test_ubuntu_and_centos manifest
end
network_manager = Noop.hiera_structure('novanetwork_parameters/network_manager')
if network_manager == 'VlanManager'
it 'should have vlan_interface option set to vmnic0' do
should contain_file('/etc/nova/nova-compute.conf').with_content(
%r{\n\s*vlan_interface=vmnic0\n}
)
end
end
end # end of shared_examples
test_ubuntu_and_centos manifest
end

View File

@ -3,6 +3,20 @@ require 'shared-examples'
manifest = 'vmware/vcenter.pp'
describe manifest do
test_ubuntu_and_centos manifest
end
shared_examples 'catalog' do
network_manager = Noop.hiera_structure('novanetwork_parameters/network_manager')
if network_manager == 'VlanManager'
it 'should declare vmware::controller with vlan_interface option set to vmnic0' do
should contain_class('vmware::controller').with(
'vlan_interface' => 'vmnic0',
)
end
end
end # end of shared_examples
test_ubuntu_and_centos manifest
end