Require the user to supply Vertica JDBC jar

Vertica JDBC jar can't be redistributed so require user to place jar
in directory where vagrant up is done. This cookbook will then
place the jar in the correct place.

Also, updated maintainer information in metadata.rb

Change-Id: I0c4ac114a3dbfb63ce8c46c5b6735e04b332bf1b
This commit is contained in:
Craig Bryant 2014-08-11 10:21:33 -06:00
parent 51d56f45de
commit 010a642c6d
3 changed files with 43 additions and 5 deletions

View File

@ -1,12 +1,16 @@
mon-persister cookbook
monasca-persister cookbook
======================
Configures and sets up the MON Persister
Configures and sets up the Monasca Persister
Requirements
------------
Sysctl is required for setting os level memory limits.
Additionally when using as part of a chef server it requires the hp_common_functions cookbook.
Using Vertica
------------
If Vertica is used as the database for Monasca, the Vertica JDBC jar that matches the Vertica version must be placed in /opt/mon/vertica. The jar from Vertica will be named like vertica-jdbc-7.0.1-0.jar and must be renamed to vertica_jdbc.jar when placed in /opt/mon/vertica. You can find the Vertica JDBC jar in /opt/vertica/java on a system with the Vertica database installed. This cookbook will copy the Vertica JDBC Jar from /vagrant and place it in /opt/mon/vertica if run using Chef Solo.
Data Bags
---------
The node[:mon_persister][:data_bag] data bag is used for all items. When used in standard chef all data bag items can have a location as the suffix and the get_data_bag_item

View File

@ -1,9 +1,9 @@
# encoding: UTF-8#
#
name 'mon_persister'
maintainer 'Monitoring Team'
maintainer_email 'hpcs-mon@hp.com'
maintainer 'Monasca Team'
maintainer_email 'monasca@lists.launchpad.net'
license 'All rights reserved'
description 'Installs/Configures som_persister'
long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
version '0.1.17'
version '0.1.18'

View File

@ -34,3 +34,37 @@ template '/etc/mon/persister-config.yml' do
)
notifies :restart, 'service[mon-persister]'
end
if settings['database_configuration']['database_type'] == 'vertica'
# Create the directory for the vertica JDBC jar
directory '/opt/mon/vertica' do
recursive true
owner 'root'
group 'root'
mode 0755
action :create
end
# Copy the vertica jdbc jar from /vagrant
bash 'vertica_jdbc.jar' do
action :run
code <<-EOL
DEST=/opt/mon/vertica/vertica_jdbc.jar
if [ ! -s ${DEST} ]; then
SRC=`ls /vagrant/vertica-jdbc-*.jar`
if [ $? != 0 ]; then
echo 'You must place a Vertica JDBC jar in the directory where you do the "vagrant up"' 1>&2
exit 1
fi
cp "$SRC" $DEST
RC=$?
if [ $RC != 0 ]; then
exit $RC
fi
chown root:root $DEST
chmod 0555 $DEST
fi
EOL
end
end