Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

lsf_name : use a unique name in all situations #54

Open
wants to merge 10 commits into
base: master
Choose a base branch
from
23 changes: 20 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
language: ruby
rvm:
- 1.8.7
- 1.9.3
- 2.0.0
- 2.1
before_install: rm Gemfile.lock || true
script:
- "bundle exec rake lint"
Expand All @@ -15,6 +15,23 @@ env:
- PUPPET_VERSION="~> 3.2.0"
- PUPPET_VERSION="~> 3.3.0"
- PUPPET_VERSION="~> 3.4.0"
- PUPPET_VERSION="~> 3.5.0"
matrix:
allow_failures:
- rvm: 2.0.0
exclude:
- rvm: 1.9.3
env: PUPPET_VERSION="~> 2.7.0"
- rvm: 2.0.0
env: PUPPET_VERSION="~> 2.7.0"
- rvm: 2.0.0
env: PUPPET_VERSION="~> 3.1.0"
- rvm: 2.1
env: PUPPET_VERSION="~> 2.7.0"
- rvm: 2.1
env: PUPPET_VERSION="~> 3.1.0"
- rvm: 2.1
env: PUPPET_VERSION="~> 3.2.0"
- rvm: 2.1
env: PUPPET_VERSION="~> 3.3.0"
- rvm: 2.1
env: PUPPET_VERSION="~> 3.4.0"

4 changes: 2 additions & 2 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ source 'https://rubygems.org'
puppetversion = ENV['PUPPET_VERSION'] || '~> 3.7.0'
gem 'puppet', puppetversion, :require => false

gem 'beaker', :git => 'git@github.com:puppetlabs/beaker.git', :branch => 'master'
gem 'beaker-rspec', :git => 'git@github.com:puppetlabs/beaker-rspec.git', :branch => 'master'
gem 'beaker', :git => 'https://github.com/puppetlabs/beaker.git', :branch => 'master'
gem 'beaker-rspec', :git => 'https://github.com/puppetlabs/beaker-rspec.git', :branch => 'master'
gem 'metadata-json-lint', :git => 'https://github.com/nibalizer/metadata-json-lint.git', :branch => 'master'
gem 'rspec-puppet', :git => 'https://github.com/rodjek/rspec-puppet.git', :branch => 'master'

Expand Down
2 changes: 1 addition & 1 deletion manifests/config.pp
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@
logstashforwarder_config { 'lsf-config':
ensure => 'present',
config => $main_config,
path => '/etc/logstash-forwarder.conf',
path => "${logstashforwarder::configdir}/${logstashforwarder::lsf_name}.conf",
tag => "LSF_CONFIG_${::fqdn}",
owner => $logstashforwarder::logstashforwarder_user,
group => $logstashforwarder::logstashforwarder_group,
Expand Down
5 changes: 5 additions & 0 deletions manifests/init.pp
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@
# * This is thus destructive and should be used with care.
# Defaults to <tt>present</tt>.
#
# [*lsf_name*]
# String. Set the name used in any situations to avoid gap of naming.
# Defaults to <tt>logstash-forwarder</tt>.
#
# [*autoupgrade*]
# Boolean. If set to <tt>true</tt>, any managed package gets upgraded
# on each Puppet run when the package provider is able to find a newer
Expand Down Expand Up @@ -154,6 +158,7 @@
#
class logstashforwarder(
$ensure = $logstashforwarder::params::ensure,
$lsf_name = $logstashforwarder::params::lsf_name,
$servers = undef,
$ssl_cert = undef,
$ssl_key = undef,
Expand Down
15 changes: 9 additions & 6 deletions manifests/params.pp
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@
# ensure
$ensure = 'present'

# Name to use instead of hardcoded name
$lsf_name = 'logstash-forwarder'

# autoupgrade
$autoupgrade = false

Expand Down Expand Up @@ -89,12 +92,12 @@
# Different path definitions
case $::kernel {
'Linux': {
$configdir = '/etc/logstashforwarder'
$package_dir = '/opt/logstashforwarder/swdl'
$installpath = '/opt/logstashforwarder'
$configdir = "/etc/${lsf_name}"
$package_dir = "/opt/${lsf_name}/swdl"
$installpath = "/opt/${lsf_name}"
}
'Darwin': {
$configdir = '/Library/Application Support/Logstashforwarder'
$configdir = '/Library/Application Support/Logstashforwarder'
$package_dir = '/Library/Logstashforwarder/swdl'
$installpath = '/Library/Logstashforwarder'
}
Expand Down Expand Up @@ -123,15 +126,15 @@
# service parameters
case $::operatingsystem {
'RedHat', 'CentOS', 'Fedora', 'Scientific', 'Amazon', 'OracleLinux': {
$service_name = 'logstash-forwarder'
$service_name = $lsf_name
$service_hasrestart = true
$service_hasstatus = true
$service_pattern = $service_name
$service_providers = [ 'init' ]
$defaults_location = '/etc/sysconfig'
}
'Debian', 'Ubuntu': {
$service_name = 'logstash-forwarder'
$service_name = $lsf_name
$service_hasrestart = true
$service_hasstatus = true
$service_pattern = $service_name
Expand Down
2 changes: 1 addition & 1 deletion manifests/repo.pp
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
location => 'http://packages.elasticsearch.org/logstashforwarder/debian',
release => 'stable',
repos => 'main',
key => 'D88E42B4',
key => '46095ACC8548582C1A2699A9D27D666CD88E42B4',
key_source => 'http://packages.elasticsearch.org/GPG-KEY-elasticsearch',
include_src => false,
}
Expand Down
46 changes: 23 additions & 23 deletions spec/classes/001_logstashforwarder_init_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@
it { should contain_class('logstashforwarder::config').that_requires('Class[logstashforwarder::package]') }
it { should contain_class('logstashforwarder::service').that_requires('Class[logstashforwarder::package]').that_requires('Class[logstashforwarder::config]') }

it { should contain_file('/etc/logstashforwarder') }
it { should contain_file('/etc/logstashforwarder/ssl') }
it { should contain_file('/etc/logstash-forwarder') }
it { should contain_file('/etc/logstash-forwarder/ssl') }

it { should contain_logstashforwarder_config('lsf-config') }
end
Expand Down Expand Up @@ -108,10 +108,10 @@
})
}

it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstashforwarder/swdl') }
it { should contain_file('/opt/logstashforwarder/swdl/').with(:purge => false, :force => false, :require => "Exec[create_package_dir_logstashforwarder]") }
it { should contain_file("/opt/logstashforwarder/swdl/package.#{pkg_ext}").with(:source => "puppet:///path/to/package.#{pkg_ext}", :backup => false) }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstashforwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstash-forwarder/swdl') }
it { should contain_file('/opt/logstash-forwarder/swdl/').with(:purge => false, :force => false, :require => "Exec[create_package_dir_logstashforwarder]") }
it { should contain_file("/opt/logstash-forwarder/swdl/package.#{pkg_ext}").with(:source => "puppet:///path/to/package.#{pkg_ext}", :backup => false) }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstash-forwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
end

context 'using http:// schema' do
Expand All @@ -122,10 +122,10 @@
})
}

it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstashforwarder/swdl') }
it { should contain_file('/opt/logstashforwarder/swdl/').with(:purge => false, :force => false, :require => "Exec[create_package_dir_logstashforwarder]") }
it { should contain_exec('download_package_logstashforwarder').with(:command => "wget -O /opt/logstashforwarder/swdl/package.#{pkg_ext} http://www.domain.com/path/to/package.#{pkg_ext} 2> /dev/null", :require => 'File[/opt/logstashforwarder/swdl]') }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstashforwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstash-forwarder/swdl') }
it { should contain_file('/opt/logstash-forwarder/swdl/').with(:purge => false, :force => false, :require => "Exec[create_package_dir_logstashforwarder]") }
it { should contain_exec('download_package_logstashforwarder').with(:command => "wget -O /opt/logstash-forwarder/swdl/package.#{pkg_ext} http://www.domain.com/path/to/package.#{pkg_ext} 2> /dev/null", :require => 'File[/opt/logstash-forwarder/swdl]') }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstash-forwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
end

context 'using https:// schema' do
Expand All @@ -136,10 +136,10 @@
})
}

it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstashforwarder/swdl') }
it { should contain_file('/opt/logstashforwarder/swdl').with(:purge => false, :force => false, :require => 'Exec[create_package_dir_logstashforwarder]') }
it { should contain_exec('download_package_logstashforwarder').with(:command => "wget -O /opt/logstashforwarder/swdl/package.#{pkg_ext} https://www.domain.com/path/to/package.#{pkg_ext} 2> /dev/null", :require => 'File[/opt/logstashforwarder/swdl]') }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstashforwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstash-forwarder/swdl') }
it { should contain_file('/opt/logstash-forwarder/swdl').with(:purge => false, :force => false, :require => 'Exec[create_package_dir_logstashforwarder]') }
it { should contain_exec('download_package_logstashforwarder').with(:command => "wget -O /opt/logstash-forwarder/swdl/package.#{pkg_ext} https://www.domain.com/path/to/package.#{pkg_ext} 2> /dev/null", :require => 'File[/opt/logstash-forwarder/swdl]') }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstash-forwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
end

context 'using ftp:// schema' do
Expand All @@ -150,10 +150,10 @@
})
}

it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstashforwarder/swdl') }
it { should contain_file('/opt/logstashforwarder/swdl').with(:purge => false, :force => false, :require => 'Exec[create_package_dir_logstashforwarder]') }
it { should contain_exec('download_package_logstashforwarder').with(:command => "wget -O /opt/logstashforwarder/swdl/package.#{pkg_ext} ftp://www.domain.com/path/to/package.#{pkg_ext} 2> /dev/null", :require => 'File[/opt/logstashforwarder/swdl]') }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstashforwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstash-forwarder/swdl') }
it { should contain_file('/opt/logstash-forwarder/swdl').with(:purge => false, :force => false, :require => 'Exec[create_package_dir_logstashforwarder]') }
it { should contain_exec('download_package_logstashforwarder').with(:command => "wget -O /opt/logstash-forwarder/swdl/package.#{pkg_ext} ftp://www.domain.com/path/to/package.#{pkg_ext} 2> /dev/null", :require => 'File[/opt/logstash-forwarder/swdl]') }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstash-forwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
end

context 'using file:// schema' do
Expand All @@ -164,10 +164,10 @@
})
}

it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstashforwarder/swdl') }
it { should contain_file('/opt/logstashforwarder/swdl').with(:purge => false, :force => false, :require => 'Exec[create_package_dir_logstashforwarder]') }
it { should contain_file("/opt/logstashforwarder/swdl/package.#{pkg_ext}").with(:source => "/path/to/package.#{pkg_ext}", :backup => false) }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstashforwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
it { should contain_exec('create_package_dir_logstashforwarder').with(:command => 'mkdir -p /opt/logstash-forwarder/swdl') }
it { should contain_file('/opt/logstash-forwarder/swdl').with(:purge => false, :force => false, :require => 'Exec[create_package_dir_logstashforwarder]') }
it { should contain_file("/opt/logstash-forwarder/swdl/package.#{pkg_ext}").with(:source => "/path/to/package.#{pkg_ext}", :backup => false) }
it { should contain_package('logstash-forwarder').with(:ensure => 'present', :source => "/opt/logstash-forwarder/swdl/package.#{pkg_ext}", :provider => pkg_prov) }
end

end
Expand Down Expand Up @@ -282,7 +282,7 @@
})
}

it { should contain_file('/etc/logstashforwarder').with(:ensure => 'absent', :force => true, :recurse => true) }
it { should contain_file('/etc/logstash-forwarder').with(:ensure => 'absent', :force => true, :recurse => true) }
it { should contain_package('logstash-forwarder').with(:ensure => 'purged') }
it { should contain_service('logstash-forwarder').with(:ensure => 'stopped', :enable => false) }

Expand Down