Merge "Convert noop NetworkExtraConfig to OS::Heat::None"
[apex-tripleo-heat-templates.git] / puppet / manifests / overcloud_volume.pp
1 # Copyright 2015 Red Hat, Inc.
2 # All Rights Reserved.
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License"); you may
5 # not use this file except in compliance with the License. You may obtain
6 # a copy of the License at
7 #
8 #     http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13 # License for the specific language governing permissions and limitations
14 # under the License.
15
16 include ::tripleo::packages
17 include ::tripleo::firewall
18
19 if hiera('step') >= 1 {
20
21   create_resources(kmod::load, hiera('kernel_modules'), {})
22   create_resources(sysctl::value, hiera('sysctl_settings'), {})
23   Exec <| tag == 'kmod::load' |>  -> Sysctl <| |>
24
25   include ::timezone
26
27   if count(hiera('ntp::servers')) > 0 {
28     include ::ntp
29   }
30
31 }
32
33 if hiera('step') >= 4 {
34
35   include ::cinder
36   include ::cinder::config
37   include ::cinder::glance
38   include ::cinder::volume
39   include ::cinder::setup_test_volume
40
41   $cinder_enable_iscsi = hiera('cinder_enable_iscsi_backend', true)
42   if $cinder_enable_iscsi {
43     $cinder_iscsi_backend = 'tripleo_iscsi'
44
45     cinder::backend::iscsi { $cinder_iscsi_backend :
46       iscsi_ip_address => hiera('cinder_iscsi_ip_address'),
47       iscsi_helper     => hiera('cinder_iscsi_helper'),
48     }
49   }
50
51   $cinder_enabled_backends = any2array($cinder_iscsi_backend)
52   class { '::cinder::backends' :
53     enabled_backends => union($cinder_enabled_backends, hiera('cinder_user_enabled_backends')),
54   }
55
56   $snmpd_user = hiera('snmpd_readonly_user_name')
57   snmp::snmpv3_user { $snmpd_user:
58     authtype => 'MD5',
59     authpass => hiera('snmpd_readonly_user_password'),
60   }
61   class { '::snmp':
62     agentaddress => ['udp:161','udp6:[::1]:161'],
63     snmpd_config => [ join(['createUser ', hiera('snmpd_readonly_user_name'), ' MD5 "', hiera('snmpd_readonly_user_password'), '"']), join(['rouser ', hiera('snmpd_readonly_user_name')]), 'proc  cron', 'includeAllDisks  10%', 'master agentx', 'trapsink localhost public', 'iquerySecName internalUser', 'rouser internalUser', 'defaultMonitors yes', 'linkUpDownNotifications yes' ],
64   }
65
66   hiera_include('volume_classes')
67 }
68
69 $package_manifest_name = join(['/var/lib/tripleo/installed-packages/overcloud_volume', hiera('step')])
70 package_manifest{$package_manifest_name: ensure => present}