# Install AbuseSA Search. # class abusesasearch { if !$abusesasearch_package { if $abusesasearch_package_latest { $abusesasearch_package = $abusesasearch_package_latest } else { fail("Must define \$abusesasearch_package or \$abusesasearch_package_latest") } } file { "/usr/local/src/abusesa-search.tar.gz": ensure => present, mode => "0644", owner => "root", group => "root", source => "puppet:///files/packages/${abusesasearch_package}", } util::extract::tar { "/usr/local/src/abusesa-search": ensure => latest, strip => 1, source => "/usr/local/src/abusesa-search.tar.gz", require => File["/usr/local/src/abusesa-search.tar.gz"], before => Python::Setup::Install["/usr/local/src/abusesa-search"], } python::setup::install { "/usr/local/src/abusesa-search": } python::setup::install { "/usr/local/src/abusesa-search/sources/solrbot": } package { [ "python-beautifulsoup", "python-pysolr", "python-lxml", ]: ensure => installed, } file { "/srv/solr/cores/generic": ensure => directory, mode => "0660", owner => "solr", group => "solr", source => "/usr/local/src/abusesa-search/config/solr/cores/generic", recurse => true, purge => true, force => true, require => [ File["/srv/solr/cores"], Util::Extract::Tar["/usr/local/src/abusesa-search"], ], } file { "/srv/solr/cores/lib/solr-analysis-clarified.jar": ensure => present, mode => "0660", owner => "solr", group => "solr", source => "/usr/local/src/abusesa-search/bin/solr-4.1-analysis-clarified.jar", require => Util::Extract::Tar["/usr/local/src/abusesa-search"], require => [ File["/srv/solr/cores/lib"], Util::Extract::Tar["/usr/local/src/abusesa-search"], ], } file { "/srv/solr/cores/lib/commons-net-3.1.jar": ensure => present, mode => "0660", owner => "solr", group => "solr", source => "/usr/local/src/abusesa-search/sources/analysis-clarified/lib/commons-net-3.1.jar", require => [ File["/srv/solr/cores/lib"], Util::Extract::Tar["/usr/local/src/abusesa-search"], ], } file { "/srv/solr/cores/lib/java-ipv6-0.8.jar": ensure => present, mode => "0660", owner => "solr", group => "solr", source => "/usr/local/src/abusesa-search/sources/analysis-clarified/lib/java-ipv6-0.8.jar", require => [ File["/srv/solr/cores/lib"], Util::Extract::Tar["/usr/local/src/abusesa-search"], ], } $htdocs = $::operatingsystem ? { "ubuntu" => "/usr/local/share/abusesa-search/htdocs", default => "/usr/share/abusesa-search/htdocs", } define configwebhost($htdocs) { file { "/srv/www/https/${name}/ui": ensure => link, target => $htdocs, require => File["/srv/www/https/${name}"], } } if $abusesasearch_webhosts { configwebhost { $abusesasearch_webhosts: htdocs => $htdocs, } } }