Manually merge abusesa::search and solr from parameterize
This commit is contained in:
parent
a5a7b8f15c
commit
695f353f3b
3 changed files with 99 additions and 73 deletions
|
@ -93,22 +93,35 @@ class abusesa {
|
||||||
|
|
||||||
# Install AbuseSA Search.
|
# Install AbuseSA Search.
|
||||||
#
|
#
|
||||||
class abusesa::search {
|
# === Parameters
|
||||||
|
#
|
||||||
|
# $solrurl:
|
||||||
|
# URL to sorl.
|
||||||
|
#
|
||||||
|
# $logourl:
|
||||||
|
# Path to logo image.
|
||||||
|
#
|
||||||
|
# $cssfile:
|
||||||
|
# Path to css file.
|
||||||
|
#
|
||||||
|
# $webhosts:
|
||||||
|
# List of search virtual hosts.
|
||||||
|
#
|
||||||
|
class abusesa::search(
|
||||||
|
$solrurl="https://${::homename}/solr/generic/",
|
||||||
|
$logourl="img/Codenomicon_logo_small.png",
|
||||||
|
$cssfile="css/code.css",
|
||||||
|
$webhosts=undef
|
||||||
|
) {
|
||||||
|
|
||||||
include solr
|
if ! $abusesa_search_package {
|
||||||
|
if $::abusesa_search_package_latest {
|
||||||
if !$abusesa_search_package {
|
$abusesa_search_package = $::abusesa_search_package_latest
|
||||||
if $abusesa_search_package_latest {
|
|
||||||
$abusesa_search_package = $abusesa_search_package_latest
|
|
||||||
} else {
|
} else {
|
||||||
fail("Must define \$abusesa_search_package or \$abusesa_search_package_latest")
|
fail("Must define \$abusesa_search_package or \$abusesa_search_package_latest")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if !$abusesa_search_solrurl {
|
|
||||||
$abusesa_search_solrurl = "https://${::homename}/solr/generic/"
|
|
||||||
}
|
|
||||||
|
|
||||||
file { "/usr/local/src/abusesa-search.tar.gz":
|
file { "/usr/local/src/abusesa-search.tar.gz":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
mode => "0644",
|
mode => "0644",
|
||||||
|
@ -136,10 +149,6 @@ class abusesa::search {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
package { "python-lxml":
|
|
||||||
ensure => installed,
|
|
||||||
}
|
|
||||||
|
|
||||||
file { "/srv/solr/cores/generic":
|
file { "/srv/solr/cores/generic":
|
||||||
ensure => directory,
|
ensure => directory,
|
||||||
mode => "0660",
|
mode => "0660",
|
||||||
|
@ -206,18 +215,23 @@ class abusesa::search {
|
||||||
require => Python::Setup::Install["/usr/local/src/abusesa-search"],
|
require => Python::Setup::Install["/usr/local/src/abusesa-search"],
|
||||||
}
|
}
|
||||||
|
|
||||||
define configwebhost($htdocs) {
|
if $webhosts {
|
||||||
file { "/srv/www/https/${name}/search":
|
abusesa::search::configwebhost { $webhosts:
|
||||||
ensure => link,
|
|
||||||
target => $htdocs,
|
|
||||||
require => File["/srv/www/https/${name}"],
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if $abusesa_search_webhosts {
|
|
||||||
configwebhost { $abusesa_search_webhosts:
|
|
||||||
htdocs => $htdocs,
|
htdocs => $htdocs,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Enable AbuseSA Search for virtual host.
|
||||||
|
#
|
||||||
|
define abusesa::search::configwebhost($htdocs) {
|
||||||
|
|
||||||
|
file { "/srv/www/https/${name}/search":
|
||||||
|
ensure => link,
|
||||||
|
target => $htdocs,
|
||||||
|
require => File["/srv/www/https/${name}"],
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -1,19 +1,34 @@
|
||||||
# Install Apache Solr.
|
# Install Apache Solr.
|
||||||
#
|
#
|
||||||
class solr {
|
# === Parameters
|
||||||
|
#
|
||||||
|
# $cores:
|
||||||
|
# List of cores to enable.
|
||||||
|
#
|
||||||
|
# $datadir:
|
||||||
|
# Solr data directory. Defaults to "/srv/solr".
|
||||||
|
#
|
||||||
|
# $webhosts:
|
||||||
|
# List of Solr virtual hosts.
|
||||||
|
#
|
||||||
|
class solr(
|
||||||
|
$cores,
|
||||||
|
$datadir="/srv/solr",
|
||||||
|
$webhosts=undef
|
||||||
|
) {
|
||||||
|
|
||||||
if !$solr_package {
|
if ! ($::apache::sslserver::user and $::apache::sslserver::group) {
|
||||||
if $solr_package_latest {
|
fail("Must declare apache before solr")
|
||||||
$solr_package = $solr_package_latest
|
}
|
||||||
|
|
||||||
|
if ! $solr_package {
|
||||||
|
if $::solr_package_latest {
|
||||||
|
$solr_package = $::solr_package_latest
|
||||||
} else {
|
} else {
|
||||||
fail("Must define \$solr_package or \$solr_package_latest")
|
fail("Must define \$solr_package or \$solr_package_latest")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if !$solr_core {
|
|
||||||
fail("Must define \$solr_core")
|
|
||||||
}
|
|
||||||
|
|
||||||
file { "/usr/local/src/solr.tgz":
|
file { "/usr/local/src/solr.tgz":
|
||||||
ensure => present,
|
ensure => present,
|
||||||
mode => "0644",
|
mode => "0644",
|
||||||
|
@ -32,29 +47,21 @@ class solr {
|
||||||
include user::system
|
include user::system
|
||||||
realize(User["solr"], Group["solr"])
|
realize(User["solr"], Group["solr"])
|
||||||
|
|
||||||
if $solr_datadir {
|
if $datadir != "/srv/solr" {
|
||||||
file { $solr_datadir:
|
|
||||||
ensure => directory,
|
|
||||||
mode => "0770",
|
|
||||||
owner => "solr",
|
|
||||||
group => "solr",
|
|
||||||
require => User["solr"],
|
|
||||||
}
|
|
||||||
|
|
||||||
file { "/srv/solr":
|
file { "/srv/solr":
|
||||||
ensure => link,
|
ensure => link,
|
||||||
target => $solr_datadir,
|
target => $datadir,
|
||||||
require => File[$solr_datadir],
|
require => File[$datadir],
|
||||||
}
|
}
|
||||||
} else {
|
}
|
||||||
file { "/srv/solr":
|
|
||||||
|
file { $datadir:
|
||||||
ensure => directory,
|
ensure => directory,
|
||||||
mode => "0770",
|
mode => "0770",
|
||||||
owner => "solr",
|
owner => "solr",
|
||||||
group => "solr",
|
group => "solr",
|
||||||
require => User["solr"],
|
require => User["solr"],
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
file { [ "/srv/solr/cores",
|
file { [ "/srv/solr/cores",
|
||||||
"/srv/solr/cores/lib",
|
"/srv/solr/cores/lib",
|
||||||
|
@ -153,7 +160,7 @@ class solr {
|
||||||
ensure => present,
|
ensure => present,
|
||||||
mode => "0640",
|
mode => "0640",
|
||||||
owner => "root",
|
owner => "root",
|
||||||
group => $apache::sslserver::group,
|
group => $::apache::sslserver::group,
|
||||||
require => File["/etc/solr"],
|
require => File["/etc/solr"],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -176,15 +183,7 @@ class solr {
|
||||||
require => File[$htdocs],
|
require => File[$htdocs],
|
||||||
}
|
}
|
||||||
|
|
||||||
define configwebhost($htdocs) {
|
if $webhosts {
|
||||||
file { "/srv/www/https/${name}/solr":
|
|
||||||
ensure => link,
|
|
||||||
target => $htdocs,
|
|
||||||
require => File["/srv/www/https/${name}"],
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if $solr_webhosts {
|
|
||||||
include apache::mod::proxy
|
include apache::mod::proxy
|
||||||
include apache::mod::proxy_http
|
include apache::mod::proxy_http
|
||||||
include apache::mod::rewrite
|
include apache::mod::rewrite
|
||||||
|
@ -194,22 +193,22 @@ class solr {
|
||||||
source => "puppet:///modules/solr/solr-httpd.conf",
|
source => "puppet:///modules/solr/solr-httpd.conf",
|
||||||
}
|
}
|
||||||
|
|
||||||
configwebhost { $solr_webhosts:
|
solr::configwebhost { $webhosts:
|
||||||
htdocs => $htdocs,
|
htdocs => $htdocs,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if !$solr_requests_package {
|
if ! $solr_requests_package {
|
||||||
if $solr_requests_package_latest {
|
if $::solr_requests_package_latest {
|
||||||
$solr_requests_package = $solr_requests_package_latest
|
$solr_requests_package = $::solr_requests_package_latest
|
||||||
} else {
|
} else {
|
||||||
fail("Must define \$solr_requests_package or \$solr_requests_package_latest")
|
fail("Must define \$solr_requests_package or \$solr_requests_package_latest")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if !$solr_pysolr_package {
|
if ! $solr_pysolr_package {
|
||||||
if $solr_pysolr_package_latest {
|
if $::solr_pysolr_package_latest {
|
||||||
$solr_pysolr_package = $solr_pysolr_package_latest
|
$solr_pysolr_package = $::solr_pysolr_package_latest
|
||||||
} else {
|
} else {
|
||||||
fail("Must define \$solr_pysolr_package or \$solr_pysolr_package_latest")
|
fail("Must define \$solr_pysolr_package or \$solr_pysolr_package_latest")
|
||||||
}
|
}
|
||||||
|
@ -225,3 +224,16 @@ class solr {
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Enable solr for virtual host.
|
||||||
|
#
|
||||||
|
define solr::configwebhost($htdocs) {
|
||||||
|
|
||||||
|
file { "/srv/www/https/${name}/solr":
|
||||||
|
ensure => link,
|
||||||
|
target => $htdocs,
|
||||||
|
require => File["/srv/www/https/${name}"],
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" ?>
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
<solr persistent="false" sharedLib="lib">
|
<solr persistent="false" sharedLib="lib">
|
||||||
<cores adminPath="/admin/cores" host="${host:}" hostPort="${jetty.port:8983}" hostContext="${hostContext:solr}">
|
<cores adminPath="/admin/cores" host="${host:}" hostPort="${jetty.port:8983}" hostContext="${hostContext:solr}">
|
||||||
<% @solr_core.each do |core| -%>
|
<% @cores.each do |core| -%>
|
||||||
<core name="<%= core %>" instanceDir="<%= core %>">
|
<core name="<%= core %>" instanceDir="<%= core %>">
|
||||||
<property name="dataDir" value="/srv/solr/index/<%= core %>" />
|
<property name="dataDir" value="/srv/solr/index/<%= core %>" />
|
||||||
</core>
|
</core>
|
||||||
|
|
Loading…
Add table
Reference in a new issue