summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjohnjay <johnjay@localhost>2007-05-04 01:33:08 +0000
committerjohnjay <johnjay@localhost>2007-05-04 01:33:08 +0000
commitd515f16dc895b856bf0c28fb46ba9208788b21a4 (patch)
tree4cc04b63c357694691a8af2bba2e995abfcc2248
parentdev-db/postgresql-server: added independent from -libs LINGUAS set handling. (diff)
downloadexperimental-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/ChangeLog4
-rw-r--r--dev-db/pgfouine/Manifest16
-rw-r--r--dev-db/pgfouine/pgfouine-1.0.ebuild193
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
+}