diff options
author | johnjay <johnjay@localhost> | 2007-05-04 01:33:08 +0000 |
---|---|---|
committer | johnjay <johnjay@localhost> | 2007-05-04 01:33:08 +0000 |
commit | d515f16dc895b856bf0c28fb46ba9208788b21a4 (patch) | |
tree | 4cc04b63c357694691a8af2bba2e995abfcc2248 | |
parent | dev-db/postgresql-server: added independent from -libs LINGUAS set handling. (diff) | |
download | experimental-d515f16dc895b856bf0c28fb46ba9208788b21a4.tar.gz experimental-d515f16dc895b856bf0c28fb46ba9208788b21a4.tar.bz2 experimental-d515f16dc895b856bf0c28fb46ba9208788b21a4.zip |
dev-db/pgfouine: version bump to 1.0
svn path=/experimental/; revision=263
-rw-r--r-- | dev-db/pgfouine/ChangeLog | 4 | ||||
-rw-r--r-- | dev-db/pgfouine/Manifest | 16 | ||||
-rw-r--r-- | dev-db/pgfouine/pgfouine-1.0.ebuild | 193 |
3 files changed, 213 insertions, 0 deletions
diff --git a/dev-db/pgfouine/ChangeLog b/dev-db/pgfouine/ChangeLog index ca1f6ed..cf65cb4 100644 --- a/dev-db/pgfouine/ChangeLog +++ b/dev-db/pgfouine/ChangeLog @@ -2,6 +2,10 @@ # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ + 03 May 2007; John Jawed <johnjawed@gmail.com> pgfouine-1.0.ebuild: + +pgfouine-1.0.ebuild + Version bump. + 26 Aug 2006; John Jawed <johnjawed@gmail.com> pgfouine-0.7.ebuild: +pgfouine-0.7.ebuild Version bump. diff --git a/dev-db/pgfouine/Manifest b/dev-db/pgfouine/Manifest index a2643d2..6b5d465 100644 --- a/dev-db/pgfouine/Manifest +++ b/dev-db/pgfouine/Manifest @@ -4,6 +4,8 @@ RMD160 8677f583544432d8cc01deedf0d98096d09b50c2 files/spgfouine 6207 SHA256 a19c1f408334cebcc39a944320ba14c03927c5970c1065dc99e15ddfa4d6e12a files/spgfouine 6207 DIST pgfouine-0.6.tar.gz 438056 RMD160 0e0564b064998d57bc62f8b3d866dd1f198a0f54 SHA1 dc0a4bc6eb04699e1787471f084cabf90214498d SHA256 c8ad440e1605a8641847b20d382f7ce110856c973fc480a77cee5c81ac332a12 DIST pgfouine-0.7.1.tar.gz 458686 RMD160 0646c84e0b75f118718895bc51fe75e2062ceb4f SHA1 8275c7776447a65bc4a214f0b0bb8bf9b87b0fee SHA256 183a3060c409f060a0c0cef9ec1b41cb6c424e77a0b03572dec8f12848d30498 +DIST pgfouine-0.7.2.tar.gz 461419 RMD160 f8b0f71579041d52207b54e9f58841a3c8149e6b SHA1 00122057395e559f9b009c931034238ba5ef9dc4 SHA256 808d8d71b4a27d3c936dcc4bd6927286671fd37eb43e195c2741d2dd180520cb +DIST pgfouine-1.0.tar.gz 469475 RMD160 0a2bc627a8639090a53cfcdd86d43c2194b1bc52 SHA1 6572493d4f61e48160f4d1f195146230bd812be4 SHA256 48a656c8604e4e743a39782e18440d90beb277db725ef4813ab5cdc06e6f67a4 EBUILD pgfouine-0.6.ebuild 6559 RMD160 b68a2a8e2fb4b9753e148d044a5928e8d3a2363a SHA1 9392eae63e68387309ba14ed443641ab7ca197ec SHA256 764f3a35c350632b117c269db4b1c7b2ed6499773962ec6702748af7b9cb3079 MD5 886a486a938cb170228525156e7b723e pgfouine-0.6.ebuild 6559 RMD160 b68a2a8e2fb4b9753e148d044a5928e8d3a2363a pgfouine-0.6.ebuild 6559 @@ -12,6 +14,14 @@ EBUILD pgfouine-0.7.1.ebuild 6864 RMD160 28b9017241aafc4ed98edc60359fa69bf18ae74 MD5 02dff27103cf897f291fc8c1f322dc25 pgfouine-0.7.1.ebuild 6864 RMD160 28b9017241aafc4ed98edc60359fa69bf18ae748 pgfouine-0.7.1.ebuild 6864 SHA256 c7af265cb436b41b1737fe4c776e04952bd6650016dd341bfb79300be77191b1 pgfouine-0.7.1.ebuild 6864 +EBUILD pgfouine-0.7.2.ebuild 6799 RMD160 f009e20009cc83cffe955c5284e94ad7bd227e6a SHA1 ba6d07a51dfbf692a96a33d578a0feeef349ba7d SHA256 cee7610ddac93c9a715943fae477baa57e6e9c3c25fea017b61122f135b2f046 +MD5 cd72519c34b1b787aa72b211cf1de014 pgfouine-0.7.2.ebuild 6799 +RMD160 f009e20009cc83cffe955c5284e94ad7bd227e6a pgfouine-0.7.2.ebuild 6799 +SHA256 cee7610ddac93c9a715943fae477baa57e6e9c3c25fea017b61122f135b2f046 pgfouine-0.7.2.ebuild 6799 +EBUILD pgfouine-1.0.ebuild 6799 RMD160 c370bd1a6a777690c2ee77e8b0ec24b4eab73161 SHA1 0a434020726a350f6f8a7295275a503e4a00b102 SHA256 f39d3d39a60ed8ce27402e82b9b0d4f4387073f5cb3b8a86ec399e32c345eb82 +MD5 6cf528a653c19161d4e528e387b7b017 pgfouine-1.0.ebuild 6799 +RMD160 c370bd1a6a777690c2ee77e8b0ec24b4eab73161 pgfouine-1.0.ebuild 6799 +SHA256 f39d3d39a60ed8ce27402e82b9b0d4f4387073f5cb3b8a86ec399e32c345eb82 pgfouine-1.0.ebuild 6799 MISC ChangeLog 602 RMD160 7cb4771cf4497782a0e7bdf2a6963a9af5ade7c0 SHA1 63efb4acd108915243e68f8ab11edc7cf7ca4883 SHA256 54da360a03a2c57214fff94828573029defa3c71692648b31c8446913079384e MD5 dbf41971972d3fc6253840d86571cbaf ChangeLog 602 RMD160 7cb4771cf4497782a0e7bdf2a6963a9af5ade7c0 ChangeLog 602 @@ -26,3 +36,9 @@ SHA256 f0f4b906df0755a5b2c99213fdeedb3f947f6ec7499bae1c71670db2dcb0f418 files/di MD5 97f3aa2eac25ec80462165f25dac9e60 files/digest-pgfouine-0.7.1 244 RMD160 f6b64b53651d846f7f05f47a6931a9a5ee13b1da files/digest-pgfouine-0.7.1 244 SHA256 06597ff2ebf39217bca2aeac756dd178c1d87dc80deaec6889e6306439231e9b files/digest-pgfouine-0.7.1 244 +MD5 550e55ec7629ea26a004df1439f23bb6 files/digest-pgfouine-0.7.2 244 +RMD160 1e59a160e1d2efd03ffa2d6619c471ee4fd006ff files/digest-pgfouine-0.7.2 244 +SHA256 9755777382d3338150d2bc2b5aa29eef09392f1a95f5b12f27fba4f1dcc21afb files/digest-pgfouine-0.7.2 244 +MD5 27edd44537f1a0cf5f05b29cc1a3949b files/digest-pgfouine-1.0 238 +RMD160 ef8973db340cc31de2f1ee2cea6d16ddc386162d files/digest-pgfouine-1.0 238 +SHA256 8f82122ad13b57f34606392220f969c2847914cde8ffa7aaf5b036da3ef72f93 files/digest-pgfouine-1.0 238 diff --git a/dev-db/pgfouine/pgfouine-1.0.ebuild b/dev-db/pgfouine/pgfouine-1.0.ebuild new file mode 100644 index 0000000..c573287 --- /dev/null +++ b/dev-db/pgfouine/pgfouine-1.0.ebuild @@ -0,0 +1,193 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +inherit webapp eutils depend.php einput + +DESCRIPTION="Web-based PostgreSQL log analyzer used to determine which queries you should optimize to speed up your PostgreSQL based application." +HOMEPAGE="http://pgfouine.projects.postgresql.org/" +SRC_URI="http://pgfoundry.org/frs/download.php/1334/${P}.tar.gz" +LICENSE="GPL-2" +KEYWORDS="~alpha ~amd64 ~hppa ~mips ~ppc ~sparc ~x86" +IUSE="vhosts tests graphs" +RDEPEND=">=dev-db/postgresql-7.3 + sys-apps/findutils" + +pkg_setup() { + ewarn "Checking if PHP has been installed as a CLI" + ewarn "If the following fails, PHP needs to be compiled with the CLI use flag" + require_php_cli + webapp_pkg_setup + has_php + if use graphs;then + require_php_with_any_use "gd" "gd-external" + fi +} + +src_unpack() { + unpack ${A} + cd ${S} + find ${S} -name rpm-specific\* -or \( -type d -name patches -prune \) -or \ + \( -type f -name pgfouine.spec \) -exec rm -rf {} \; + if ! use tests;then + find ${S} -type d -name tests -prune -exec rm -rf {} \; + fi +} + +src_compile() { + einfo "Nothing left to compile" +} + +src_install() { + webapp_src_preinst + local docs="AUTHORS ChangeLog README COPYING THANKS INSTALL" + cd ${S} + dodoc ${docs} + + rm -rf ${docs} + + einfo "Installing main files into ${MY_MYHOSTROOTDIR}/${P}" + cp -rf . ${D}${MY_HOSTROOTDIR}/${P} + cp -f ${FILESDIR}/spgfouine ${D}${MY_HOSTROOTDIR}/${P} + insinto ${MY_MYHOSTROOTDIR}/${P} + webapp_src_install +} + +pkg_postinst() { + webapp_pkg_postinst + einfo + einfo + einfo "Because of the irregularity of postgresql.conf files" + einfo "you will need to add/update the following variables to" + einfo "your own postgresql.conf manually to enable logging:" + einfo "log_duration = true" + einfo "log_min_duration_statement = 0" + if has_version '>=dev-db/postgresql-8';then + einfo "log_destination = 'syslog'" + pg8=1 + else + einfo "syslog = 2" + pg8=0 + fi + einfo "pgfouine brings many new features, including vacuum support." + einfo "Please see http://pgfouine.projects.postgresql.org/vacuum.html for more information." + ewarn "" + ewarn "IMPORTANT: run emerge --config pgfouine" + ewarn "" +} + +pkg_config() { + G_HOSTNAME="localhost" + webapp_read_config + szInstallPath=${ROOT}${VHOST_ROOT}/${PN} + has_php + szVerPath=${ROOT}${VHOST_ROOT}/${P} + szSysLogDir="/var/log/postgresql" + if has_version ">=app-admin/syslog-ng-1.0";then + einfo "The following config will help you setup:" + einfo + einfo "a) syslog-ng.conf rules for PostgreSQL logging" + einfo "b) cron to generate reports on a regular basis" + einfo + einput_confirm "Continue with setting up /etc/syslog-ng/syslog-ng.conf rules for PostgreSQL?" + if [ "${EINPUT_IANSWER}" == "y" ] || [ "${EINPUT_IANSWER}" == "yes" ];then + einfo + einfo "If you don't know what to do, the defaults denoted inside brackets usually suffice" + einfo "(just hit enter)" + einfo + if [ -w /etc/syslog-ng/syslog-ng.conf ];then + einput_confirm "Detected a syslog-ng.conf in /etc/syslog-ng/, is this the one you want to use?" + if [ "${EINPUT_IANSWER}" == "y" ] || [ "${EINPUT_IANSWER}" == "yes" ];then + szSysLogConf="/etc/syslog-ng/syslog-ng.conf" + else + einput_prompt "Please specify the path to your syslog-ng.conf" "/etc/syslog-ng/syslog-ng.conf" + fi + fi + + if [ ! -w ${szSysLogConf} ];then + einput_prompt "Cannot use ${szSysLogConf}, please specify the path to a valid syslog-ng.conf" "/etc/syslog-ng/syslog-ng.conf" + if [ -w $EINPUT_IANSWER ];then + szSysLogConfpgfouine$2 + else + eerror "Unable to find a writable syslog-ng.conf in $2. Exiting" + fi + fi + einput_prompt "syslog-ng filter?" "filter f_postgres { program(\"postgres\"); };" + szSysLogFilter=${EINPUT_IANSWER} + if [ ! -d /var/log/postgresql ];then + einput_prompt "Specify where I should attempt to create the PostgreSQL log directory" "/var/log/postgresql" + szSysLogDir=${EINPUT_IANSWER} + mkdir -p ${EINPUT_IANSWER} + fi + szDefaultDest="destination dest_postgres { file(\"${szSysLogDir}/log-sql.\$YEAR.\$MONTH.\$DAY\"); };" + einput_prompt "syslog-ng destination?" "${szDefaultDest}" + szSysLogDest="${EINPUT_ANSWER}" + + if [ "${szSysLogDest}" != "${szDefaultDest}" ]; then + ewarn "${szSysLogDest}" + ewarn "Not using default destination rule, be sure to modify the INPUT_SCHEMA in ${szVerPath}/spgfouine" + ewarn "to reflect your changes!" + ewarn "${szDefaultDest}" + fi + + einput_prompt "syslog-ng rule?" "log { source(src); filter(f_postgres); destination(dest_postgres); };" + szSysLogRule=${EINPUT_IANSWER} + einfo + einfo "The following will be written to ${szSysLogConf}" + einfo + einfo "${szSysLogFilter}" + einfo "${szSysLogDest}" + einfo "${szSysLogRule}" + einfo + einput_confirm "Continue with writing these rules to ${szSysLogConf}?" + if [ "${EINPUT_IANSWER}" == "y" ] || [ "${EINPUT_IANSWER}" == "yes" ];then + echo "${szSysLogFilter}" >> ${szSysLogConf} + echo "${szSysLogDest}" >> ${szSysLogConf} + echo "${szSysLogRule}" >> ${szSysLogConf} + einfo "Restarting syslog-ng" + /etc/init.d/syslog-ng restart + else + ewarn "Nothing written to ${szSysLogConf}, please add the rules" + ewarn "manually" + fi + fi + einput_confirm "Continue with setting up a daily cron job for reports?" + if [ ${EINPUT_IANSWER} == "y" ] || [ ${EINPUT_IANSWER} == "yes" ];then + einfo + einfo "Moving spgfouine from ${szVerPath}/spgfouine to /etc/cron.daily" + einfo + mv -f ${szVerPath}/spgfouine /etc/cron.daily + einfo + einfo "chmod'ing spgfouine to 0755" + einfo + chmod 0755 /etc/cron.daily/spgfouine + sed -i -re "s:PATH_TO_PHP=\"\":PATH_TO_PHP=\"${PHPCLI}\":g" /etc/cron.daily/spgfouine + sed -i -re "s:PATH_TO_LOGS=\"\":PATH_TO_LOGS=\"${szSysLogDir}\":g" /etc/cron.daily/spgfouine + sed -i -re "s:PATH_TO_REPORTS=\"\":PATH_TO_REPORTS=\"${szInstallPath}/reports\":g" /etc/cron.daily/spgfouine + sed -i -re "s:PATH_TO_PGFOUINE=\"\":PATH_TO_PGFOUINE=\"${szVerPath}/pgfouine.php\":g" /etc/cron.daily/spgfouine + if [ ! -d ${szInstallPath}/reports ];then + mkdir -p ${szInstallPath}/reports + einfo "Created ${szInstallPath}/reports" + fi + einfo + einfo "NOTE: By default reports will be put in" + einfo "${szInstallPath}/pgsql_report.\$YEAR.\$MONTH.\$DAY.html" + einfo "You can modify this and other paths by editing /etc/cron.daily/spgfouine" + einfo + fi + einfo "Nothing left to do :-)" + else + einfo "Syslog-ng is not emerged on this system. You will need to edit ${szVerPath}/spgfouine" + einfo "manually and setup your syslog rules accordingly. Please refer to" + einfo "http://pgfouine.projects.postgresql.org/tutorial.html" + einfo "for more information on how to do this." + einfo "You can use ${szVerPath}/spgfouine to automate report generation" + fi +} + +pkg_postrm() { + if [ -e /etc/cron.daily/spgfouine ];then + ewarn "/etc/cron.daily/spgfouine exists, please remove this file" + ewarn "manually." + fi +} |