diff --git a/abusesa/Makefile b/abusesa/Makefile index 588606e..7e51dec 100644 --- a/abusesa/Makefile +++ b/abusesa/Makefile @@ -1,13 +1,21 @@ include $(CURDIR)/../Makefile.inc BRANCH = default + SOURCE = https://bitbucket.org/clarifiednetworks/abusesa/get/$(BRANCH).tar.gz TARGET = abusesa-$(BRANCH)-$(TIMESTAMP).tar.gz +SEARCHSOURCE = https://bitbucket.org/clarifiednetworks/abusesa-search/get/$(BRANCH).tar.gz +SEARCHTARGET = abusesa-search-$(BRANCH)-$(TIMESTAMP).tar.gz + all: tarball manifest tarball: $(PACKAGES)/$(TARGET) manifest: $(MANIFESTS)/abusesa.pp +search: searchtarball searchmanifest +searchtarball: $(PACKAGES)/$(SEARCHTARGET) +searchmanifest: $(MANIFESTS)/abusesa_search.pp + $(PACKAGES)/$(TARGET): @umask 022; echo $@; \ test -f $@ || curl --digest -u $(USER) -o $@ $(SOURCE) @@ -15,3 +23,11 @@ $(PACKAGES)/$(TARGET): $(MANIFESTS)/abusesa.pp: $(PACKAGES)/$(TARGET) @umask 022; echo $@; \ echo '$$abusesa_package_latest = "$(TARGET)"' > $@ + +$(PACKAGES)/$(SEARCHTARGET): + @umask 022; echo $@; \ + test -f $@ || curl --digest -u $(USER) -o $@ $(SEARCHSOURCE) + +$(MANIFESTS)/abusesa_search.pp: $(PACKAGES)/$(SEARCHTARGET) + @umask 022; echo $@; \ + echo '$$abusesa_search_package_latest = "$(SEARCHTARGET)"' > $@ diff --git a/abusesa/manifests/init.pp b/abusesa/manifests/init.pp index 4ad416c..21c710b 100644 --- a/abusesa/manifests/init.pp +++ b/abusesa/manifests/init.pp @@ -86,3 +86,108 @@ class abusesa { } } + + +# Install AbuseSA Search. +# +class abusesa::search { + + if !$abusesa_search_package { + if $abusesa_search_package_latest { + $abusesa_search_package = $abusesa_search_package_latest + } else { + fail("Must define \$abusesa_search_package or \$abusesa_search_package_latest") + } + } + + file { "/usr/local/src/abusesa-search.tar.gz": + ensure => present, + mode => "0644", + owner => "root", + group => "root", + source => "puppet:///files/packages/${abusesa_search_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": } + + package { [ "python-BeautifulSoup", + "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 => [ + 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}/search": + ensure => link, + target => $htdocs, + require => File["/srv/www/https/${name}"], + } + } + + if $abusesa_search_webhosts { + configwebhost { $abusesa_search_webhosts: + htdocs => $htdocs, + } + } + +} diff --git a/abusesasearch/Makefile b/abusesasearch/Makefile deleted file mode 100644 index 681d839..0000000 --- a/abusesasearch/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -include $(CURDIR)/../Makefile.inc - -BRANCH = default -SOURCE = https://bitbucket.org/clarifiednetworks/abusesa-search/get/$(BRANCH).tar.gz -TARGET = abusesa-search-$(BRANCH)-$(TIMESTAMP).tar.gz - -all: tarball manifest -tarball: $(PACKAGES)/$(TARGET) -manifest: $(MANIFESTS)/abusesasearch.pp - -$(PACKAGES)/$(TARGET): - @umask 022; echo $@; \ - test -f $@ || curl --digest -u $(USER) -o $@ $(SOURCE) - -$(MANIFESTS)/abusesasearch.pp: $(PACKAGES)/$(TARGET) - @umask 022; echo $@; \ - echo '$$abusesasearch_package_latest = "$(TARGET)"' > $@ diff --git a/abusesasearch/manifests/init.pp b/abusesasearch/manifests/init.pp deleted file mode 100644 index a490ce8..0000000 --- a/abusesasearch/manifests/init.pp +++ /dev/null @@ -1,104 +0,0 @@ -# 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": } - - 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 => [ - 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, - } - } - -}