Refactor kibana-ruby specific bits to kibana::ruby
Move all of the resources specific to the ruby version of kibana to kibana::ruby. Change-Id: I93a4b0f103b4259f356e93fe025e0a649c79b75b
This commit is contained in:
parent
8423c1ae96
commit
3e95d92cfc
|
@ -15,7 +15,8 @@
|
|||
# Class to install kibana frontend to logstash.
|
||||
#
|
||||
class kibana (
|
||||
$discover_nodes = ['localhost:9200']
|
||||
$discover_nodes = ['localhost:9200'],
|
||||
$version = 'ruby',
|
||||
) {
|
||||
|
||||
group { 'kibana':
|
||||
|
@ -41,64 +42,12 @@ class kibana (
|
|||
require => User['kibana'],
|
||||
}
|
||||
|
||||
vcsrepo { '/opt/kibana/kibana':
|
||||
ensure => latest,
|
||||
provider => git,
|
||||
source => 'https://github.com/rashidkpc/Kibana2.git',
|
||||
revision => 'v0.2.0',
|
||||
require => File['/opt/kibana'],
|
||||
}
|
||||
|
||||
package { 'bundler':
|
||||
ensure => latest,
|
||||
provider => 'gem',
|
||||
}
|
||||
|
||||
if $::osfamily == 'Debian' {
|
||||
package { 'ruby-dev':
|
||||
ensure => installed,
|
||||
before => Exec['install_kibana'],
|
||||
case $version {
|
||||
'ruby': {
|
||||
include ::kibana::ruby
|
||||
}
|
||||
package { 'build-essential':
|
||||
ensure => installed,
|
||||
before => Exec['install_kibana'],
|
||||
default: {
|
||||
fail("Unknown version: ${version}")
|
||||
}
|
||||
}
|
||||
|
||||
exec { 'install_kibana':
|
||||
command => 'bundle install',
|
||||
path => ['/usr/bin', '/usr/local/bin'],
|
||||
cwd => '/opt/kibana/kibana',
|
||||
logoutput => true,
|
||||
refreshonly => true,
|
||||
subscribe => Vcsrepo['/opt/kibana/kibana'],
|
||||
require => [
|
||||
User['kibana'],
|
||||
Package['bundler'],
|
||||
],
|
||||
}
|
||||
|
||||
file { '/opt/kibana/kibana/KibanaConfig.rb':
|
||||
ensure => present,
|
||||
content => template('kibana/config.rb.erb'),
|
||||
replace => true,
|
||||
owner => 'kibana',
|
||||
group => 'kibana',
|
||||
require => Vcsrepo['/opt/kibana/kibana'],
|
||||
}
|
||||
|
||||
file { '/etc/init/kibana.conf':
|
||||
ensure => present,
|
||||
source => 'puppet:///modules/kibana/kibana.init',
|
||||
}
|
||||
|
||||
service { 'kibana':
|
||||
ensure => running,
|
||||
require => [
|
||||
File['/etc/init/kibana.conf'],
|
||||
File['/opt/kibana/kibana/KibanaConfig.rb'],
|
||||
Exec['install_kibana'],
|
||||
],
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,81 @@
|
|||
# Copyright 2015 Hewlett-Packard Development Company, L.P.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
# Class to install kibana frontend to logstash.
|
||||
#
|
||||
class kibana::ruby (
|
||||
$git_revision = 'v0.2.0',
|
||||
) {
|
||||
|
||||
vcsrepo { '/opt/kibana/kibana':
|
||||
ensure => latest,
|
||||
provider => git,
|
||||
source => 'https://github.com/rashidkpc/Kibana2.git',
|
||||
revision => $git_revision,
|
||||
require => File['/opt/kibana'],
|
||||
}
|
||||
|
||||
package { 'bundler':
|
||||
ensure => latest,
|
||||
provider => 'gem',
|
||||
}
|
||||
|
||||
if $::osfamily == 'Debian' {
|
||||
package { 'ruby-dev':
|
||||
ensure => installed,
|
||||
before => Exec['install_kibana'],
|
||||
}
|
||||
package { 'build-essential':
|
||||
ensure => installed,
|
||||
before => Exec['install_kibana'],
|
||||
}
|
||||
}
|
||||
|
||||
exec { 'install_kibana':
|
||||
command => 'bundle install',
|
||||
path => ['/usr/bin', '/usr/local/bin'],
|
||||
cwd => '/opt/kibana/kibana',
|
||||
logoutput => true,
|
||||
refreshonly => true,
|
||||
subscribe => Vcsrepo['/opt/kibana/kibana'],
|
||||
require => [
|
||||
User['kibana'],
|
||||
Package['bundler'],
|
||||
],
|
||||
}
|
||||
|
||||
file { '/opt/kibana/kibana/KibanaConfig.rb':
|
||||
ensure => present,
|
||||
content => template('kibana/config.rb.erb'),
|
||||
replace => true,
|
||||
owner => 'kibana',
|
||||
group => 'kibana',
|
||||
require => Vcsrepo['/opt/kibana/kibana'],
|
||||
}
|
||||
|
||||
file { '/etc/init/kibana.conf':
|
||||
ensure => present,
|
||||
source => 'puppet:///modules/kibana/kibana.init',
|
||||
}
|
||||
|
||||
service { 'kibana':
|
||||
ensure => running,
|
||||
require => [
|
||||
File['/etc/init/kibana.conf'],
|
||||
File['/opt/kibana/kibana/KibanaConfig.rb'],
|
||||
Exec['install_kibana'],
|
||||
],
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue