
This commit splits the example manifest into separate files all and pre and removes the node declarations
82 lines
1.7 KiB
Puppet
82 lines
1.7 KiB
Puppet
#
|
|
# This example file is almost the
|
|
# same as what I have been using
|
|
# to build swift in my environment (which is based on vagrant)
|
|
|
|
$proxy_local_net_ip='127.0.0.1'
|
|
$swift_shared_secret='changeme'
|
|
Exec { logoutput => true }
|
|
|
|
package { 'curl': ensure => present }
|
|
class { 'ssh::server::install': }
|
|
class { 'memcached':
|
|
listen_ip => $proxy_local_net_ip,
|
|
}
|
|
class { 'swift':
|
|
# not sure how I want to deal with this shared secret
|
|
swift_hash_suffix => $swift_shared_secret,
|
|
package_ensure => latest,
|
|
}
|
|
swift::storage::loopback { ['1', '2', '3']:
|
|
require => Class['swift'],
|
|
}
|
|
|
|
Ring_object_device { weight => 1 }
|
|
Ring_container_device { weight => 1 }
|
|
Ring_account_device { weight => 1 }
|
|
|
|
ring_object_device { '127.0.0.1:6010':
|
|
zone => 1,
|
|
device_name => '1',
|
|
}
|
|
ring_object_device { '127.0.0.1:6020':
|
|
zone => 2,
|
|
device_name => '2',
|
|
}
|
|
ring_object_device { '127.0.0.1:6030':
|
|
zone => 3,
|
|
device_name => '3',
|
|
}
|
|
|
|
ring_container_device { '127.0.0.1:6011':
|
|
zone => 1,
|
|
device_name => '1',
|
|
}
|
|
ring_container_device { '127.0.0.1:6021':
|
|
zone => 2,
|
|
device_name => '2',
|
|
}
|
|
ring_container_device { '127.0.0.1:6031':
|
|
zone => 3,
|
|
device_name => '3',
|
|
}
|
|
|
|
ring_account_device { '127.0.0.1:6012':
|
|
zone => 1,
|
|
device_name => '1',
|
|
}
|
|
ring_account_device { '127.0.0.1:6022':
|
|
zone => 2,
|
|
device_name => '2',
|
|
}
|
|
ring_account_device { '127.0.0.1:6032':
|
|
zone => 3,
|
|
device_name => '3',
|
|
}
|
|
|
|
class { 'swift::ringbuilder':
|
|
part_power => '18',
|
|
replicas => '3',
|
|
min_part_hours => 1,
|
|
require => Class['swift'],
|
|
}
|
|
|
|
class { 'swift::storage': }
|
|
|
|
# TODO should I enable swath in the default config?
|
|
class { 'swift::proxy':
|
|
account_autocreate => true,
|
|
require => Class['swift::ringbuilder'],
|
|
}
|
|
|