# # Copyright (C) 2013 eNovance SAS # # Author: Emilien Macchi # François Charlier # # Licensed under the Apache License, Version 2.0 (the "License"); you may # not use this file except in compliance with the License. You may obtain # a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. # # # Configuring the database in each cell # == Namevar # The namevar will be the name of the cell # # == Parameters # [*cell_type*] # (optional) Whether the cell is a 'parent' or 'child' # Defaults to 'parent' # # [*cell_parent_name*] # (optional) If a child cell, this is the name of the 'parent' cell. # If a parent cell, should be left to undef. # Defaults to undef # # [*rabbit_username*] # (optional) Username for the message broker in this cell # Defaults to 'guest' # # [*rabbit_password*] # (optional) Password for the message broker in this cell # Defaults to 'guest' # # [*rabbit_hosts*] # (optional) Address of the message broker in this cell # Defaults to 'localhost' # # [*rabbit_port*] # (optional) Port number of the message broker in this cell # Defaults to '5672' # # [*rabbit_virtual_host*] # (optional) The virtual host of the message broker in this cell # Defaults to '/' # # [*weight_offset*] # (optional) It might be used by some cell scheduling code in the future # Defaults to '1.0' # # [*weight_scale*] # (optional) It might be used by some cell scheduling code in the future # Defaults to '1.0' # define nova::manage::cells ( $cell_type = 'parent', $cell_parent_name = undef, $rabbit_username = 'guest', $rabbit_password = 'guest', $rabbit_hosts = 'localhost', $rabbit_port = '5672', $rabbit_virtual_host = '/', $weight_offset = '1.0', $weight_scale = '1.0' ) { File['/etc/nova/nova.conf'] -> Nova_cells[$name] Exec<| title == 'nova-db-sync' |> -> Nova_cells[$name] nova_cells { $name: ensure => present, cell_type => $cell_type, cell_parent_name => $cell_parent_name, rabbit_username => $rabbit_username, rabbit_password => $rabbit_password, rabbit_hosts => $rabbit_hosts, rabbit_port => $rabbit_port, rabbit_virtual_host => $rabbit_virtual_host, weight_offset => $weight_offset, weight_scale => $weight_scale } }