A Puppet module for managing Minio (Amazon S3 compatible storage) settings.
This module allows you to install and configure Minio using pre-built binaries and does not need external package repositories. You can chose to install Minio with default settings, or customize all settings to your liking.
puppet-minio
depends on- it manages a user and group
minio
- it manages the Minio directory (
/opt/minio
) and the storage (/var/minio
) - it install a
minio
service listening on port9000
The simplest use case is to rely on defaults. This can be done by simply including the class:
include ::minio
class { 'minio':
package_ensure => 'present',
manage_user => true,
manage_group => true,
manage_home => true,
owner => 'minio',
group => 'minio',
home => '/home/minio',
version => 'RELEASE.2017-05-05T01-14-51Z',
checksum => '59cd3fb52292712bd374a215613d6588122d93ab19d812b8393786172b51d556',
checksum_type => 'sha256',
configuration_directory => '/etc/minio',
installation_directory => '/opt/minio',
storage_root => '/var/minio',
listen_ip => '127.0.0.1',
listen_port => '9000',
configuration => {
'credential' => {
'accessKey' => 'ADMIN',
'secretKey' => 'PASSWORD',
},
'region' => 'us-east-1',
'browser' => 'on',
},
manage_service => true,
service_template => 'minio/systemd.erb',
service_path => '/lib/systemd/system/minio.service',
service_provider => 'systemd',
service_mode => '0644',
}
class { 'minio::user':
manage_user => true,
manage_group => true,
manage_home => true,
owner => 'minio',
group => 'minio',
home => '/home/minio',
}
class { 'minio::install':
package_ensure => 'present',
owner => 'minio',
group => 'minio',
version => 'RELEASE.2017-05-05T01-14-51Z',
checksum => '59cd3fb52292712bd374a215613d6588122d93ab19d812b8393786172b51d556',
checksum_type => 'sha256',
installation_directory => '/opt/minio',
storage_root => '/var/minio',
listen_ip => '127.0.0.1',
listen_port => '9000',
manage_service => true,
service_template => 'minio/systemd.erb',
service_path => '/lib/systemd/system/minio.service',
service_provider => 'systemd',
service_mode => '0644',
}
class { 'minio::service':
manage_service => true,
service_provider => 'systemd',
}
class { 'minio::config':
configuration => {
'credential' => {
'accessKey' => 'ADMIN',
'secretKey' => 'PASSWORD',
},
'region' => 'us-east-1',
'browser' => 'on',
},
owner => 'minio',
group => 'minio',
installation_directory => '/opt/minio',
storage_root => '/var/minio',
}
See metadata.json for supported platforms.
This project contains tests for rspec-puppet.
Quickstart:
pdk bundle install
pdk bundle exec rake 'litmus:provision_list[puppet6]'
pdk bundle exec rake 'litmus:install_agent[puppet6]'
pdk bundle exec rake litmus:install_module
pdk bundle exec rake litmus:acceptance:parallel
pdk bundle exec rake litmus:tear_down
When submitting pull requests, please make sure that module documentation, test cases and syntax checks pass.