This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "FusionForge".
The branch, 6.0 has been updated
via e46d0fb4a0a19029664c08eb2f48fa002e520dcc (commit)
from 9bfb9fc7b372fed5452271195fbf6c566c2a7024 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit e46d0fb4a0a19029664c08eb2f48fa002e520dcc
Author: Sylvain Beucler <[email protected]>
Date: Mon May 11 16:39:59 2015 +0200
reactivity: due to cyclic db<->common dependency, revert recent commits and
have systasksd wait for the DB to be accessible
diff --git a/src/GNUmakefile b/src/GNUmakefile
index b830156..484e1d4 100644
--- a/src/GNUmakefile
+++ b/src/GNUmakefile
@@ -94,11 +94,6 @@ install-db: install-base-dirs
> $(DESTDIR)$(sysconfdir)/cron.d/fusionforge-db; \
fi
-install-db-remote: install-base-dirs
- $(INSTALL) -d -m 00755 $(DESTDIR)$(sysconfdir)/init.d/
- $(CP_R) etc/init.d/fusionforge-db-remote
$(DESTDIR)$(sysconfdir)/init.d/fusionforge-db-remote
- $(CP_R) post-install.d/db-remote $(DESTDIR)$(pkgdatadir)/post-install.d/
-
install-web: install-base-dirs
$(CP_R) vendor www $(DESTDIR)$(pkgdatadir)/
$(CP_R) --no-clobber etc/httpd.conf* $(DESTDIR)$(config_path)
@@ -189,8 +184,6 @@ post-install-common:
$(post_source_path)/post-install.d/common/common.sh configure
post-install-db:
$(post_source_path)/post-install.d/db/db.sh configure
-post-install-db-remote:
- $(post_source_path)/post-install.d/db-remote/remote.sh configure
post-install-web:
$(post_source_path)/post-install.d/web/web.sh configure
post-install-scm:
diff --git a/src/bin/systasksd b/src/bin/systasksd
index d3f8907..db8a416 100755
--- a/src/bin/systasksd
+++ b/src/bin/systasksd
@@ -25,7 +25,11 @@
//putenv('FUSIONFORGE_NO_DB=true');
require (dirname(__FILE__).'/../common/include/env.inc.php');
-require_once $gfcommon.'include/pre.php';
+try {
+ require_once $gfcommon.'include/pre.php';
+} catch (DBException $e) {
+ print "Cannot connect to DB: $e\nWaiting for DB...\n";
+}
require_once $gfcommon.'include/cron_utils.php';
// Invalidate users/groups cache e.g. when a user is added to a group
diff --git a/src/common/include/database-pgsql.php
b/src/common/include/database-pgsql.php
index cc26f05..cfafd6d 100644
--- a/src/common/include/database-pgsql.php
+++ b/src/common/include/database-pgsql.php
@@ -76,7 +76,8 @@ function db_connect() {
forge_get_config('database_host'),
forge_get_config('database_port')));
if (!$gfconn) {
- print forge_get_config('forge_name')." Could Not
Connect to Database: ".db_error();
+ throw new DBException(forge_get_config('forge_name')
+ ." Could Not Connect to Database:
".db_error());
exit(1);
}
} else {
@@ -840,6 +841,8 @@ function db_qpa_to_string($qpa) {
return db_query_to_string($qpa[0], $qpa[1]);
}
+class DBException extends Exception {}
+
// Local Variables:
// mode: php
// c-file-style: "bsd"
diff --git a/src/debian/control.in b/src/debian/control.in
index 48ed39b..8e09d94 100644
--- a/src/debian/control.in
+++ b/src/debian/control.in
@@ -28,7 +28,7 @@ Description: collaborative development tool - standard
metapackage
Package: fusionforge-common
Architecture: all
-Depends: fusionforge-db, php5-cli, php5-pgsql, php-htmlpurifier, cron, ucf,
${misc:Depends}
+Depends: php5-cli, php5-pgsql, php-htmlpurifier, cron, ucf, ${misc:Depends}
Description: collaborative development tool - shared files
FusionForge provides many tools to aid collaboration in a
development project, such as bug-tracking, task management,
@@ -74,7 +74,7 @@ Description: collaborative development tool - database
(remote)
Package: fusionforge-web
Architecture: all
-Depends: fusionforge-common (=${source:Version}), libapache2-mpm-itk |
apache2-mpm-itk, php5-cli, libapache2-mod-php5, libphp-simplepie, php-http,
php-http-webdav-server, libjs-jquery-livequery, python, poppler-utils,
${misc:Depends}
+Depends: fusionforge-common (=${source:Version}), fusionforge-db,
libapache2-mpm-itk | apache2-mpm-itk, php5-cli, libapache2-mod-php5,
libphp-simplepie, php-http, php-http-webdav-server, libjs-jquery-livequery,
python, poppler-utils, ${misc:Depends}
Recommends: locales-all, unoconv
Description: collaborative development tool - web part (using Apache)
FusionForge provides many tools to aid collaboration in a
diff --git a/src/debian/fusionforge-db-remote.postinst
b/src/debian/fusionforge-db-remote.postinst
deleted file mode 100644
index 6b4b9c8..0000000
--- a/src/debian/fusionforge-db-remote.postinst
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-# postinst script for fusionforge
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * <postinst> `configure' <most-recently-configured-version>
-# * <old-postinst> `abort-upgrade' <new version>
-# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
-# <new-version>
-# * <postinst> `abort-remove'
-# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
-# <failed-install-package> <version> `removing'
-# <conflicting-package> <version>
-# for details, see http://www.debian.org/doc/debian-policy/ or
-# the debian-policy package
-
-
-case "$1" in
- configure)
- $(forge_get_config source_path)/post-install.d/db-remote/db-remote.sh
configure
- ;;
-
- abort-upgrade|abort-remove|abort-deconfigure)
- ;;
-
- *)
- echo "postinst called with unknown argument \`$1'" >&2
- exit 1
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
diff --git a/src/debian/fusionforge-db-remote.prerm
b/src/debian/fusionforge-db-remote.prerm
deleted file mode 100644
index 868bbf0..0000000
--- a/src/debian/fusionforge-db-remote.prerm
+++ /dev/null
@@ -1,42 +0,0 @@
-#!/bin/sh
-# prerm script for fusionforge
-#
-# see: dh_installdeb(1)
-
-set -e
-
-# summary of how this script can be called:
-# * <prerm> `remove'
-# * <old-prerm> `upgrade' <new-version>
-# * <new-prerm> `failed-upgrade' <old-version>
-# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
-# * <deconfigured's-prerm> `deconfigure' `in-favour'
-# <package-being-installed> <version> `removing'
-# <conflicting-package> <version>
-# for details, see http://www.debian.org/doc/debian-policy/ or
-# the debian-policy package
-
-
-case "$1" in
- remove)
- $(forge_get_config source_path)/post-install.d/db-remote/db-remote.sh
remove
- ;;
-
- upgrade|deconfigure)
- ;;
-
- failed-upgrade)
- ;;
-
- *)
- echo "prerm called with unknown argument \`$1'" >&2
- exit 1
- ;;
-esac
-
-# dh_installdeb will replace this with shell code automatically
-# generated by other debhelper scripts.
-
-#DEBHELPER#
-
-exit 0
diff --git a/src/debian/rules b/src/debian/rules
index 9c7716a..ae12a93 100755
--- a/src/debian/rules
+++ b/src/debian/rules
@@ -24,7 +24,6 @@ include /usr/share/dpkg/default.mk
override_dh_auto_install:
make install-common prefix=/usr
DESTDIR=$(CURDIR)/debian/fusionforge-common
make install-db-local prefix=/usr
DESTDIR=$(CURDIR)/debian/fusionforge-db-local
- make install-db-remote prefix=/usr
DESTDIR=$(CURDIR)/debian/fusionforge-db-remote
make install-web prefix=/usr
DESTDIR=$(CURDIR)/debian/fusionforge-web
make install-web-vhosts prefix=/usr
DESTDIR=$(CURDIR)/debian/fusionforge-web-vhosts
make install-shell prefix=/usr
DESTDIR=$(CURDIR)/debian/fusionforge-shell
diff --git a/src/etc/init.d/fusionforge-db-remote
b/src/etc/init.d/fusionforge-db-remote
deleted file mode 100755
index 38621c9..0000000
--- a/src/etc/init.d/fusionforge-db-remote
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/bash
-### BEGIN INIT INFO
-# Provides: postgresql
-# Required-Start: $local_fs $remote_fs $network $syslog $named
-# Required-Stop: $local_fs $remote_fs $network $syslog $named
-# Default-Start: 2 3 4 5
-# Default-Stop: 0 1 6
-# X-Interactive: true
-# Short-Description: Fake init dependency for remote DB installs
-### END INIT INFO
-
-true
-
-# Rationale:
-# $ update-rc.d fusionforge-systasksd defaults
-# insserv: Service postgresql has to be enabled to start service
fusionforge-systasksd
-# insserv: exiting now!
-# update-rc.d: error: insserv rejected the script header
diff --git a/src/etc/init.d/fusionforge-systasksd
b/src/etc/init.d/fusionforge-systasksd
index 283beb1..4a3b890 100755
--- a/src/etc/init.d/fusionforge-systasksd
+++ b/src/etc/init.d/fusionforge-systasksd
@@ -1,8 +1,8 @@
#!/bin/bash
### BEGIN INIT INFO
# Provides: fusionforge-systasksd
-# Required-Start: $local_fs $remote_fs $network $syslog $named postgresql
-# Required-Stop: $local_fs $remote_fs $network $syslog $named postgresql
+# Required-Start: $local_fs $remote_fs $network $syslog $named
+# Required-Stop: $local_fs $remote_fs $network $syslog $named
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# X-Interactive: true
diff --git a/src/post-install.d/db-remote/db-remote.sh
b/src/post-install.d/db-remote/db-remote.sh
deleted file mode 100755
index fa756b7..0000000
--- a/src/post-install.d/db-remote/db-remote.sh
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/bin/bash
-# Install postgresql stub because init.d/fusionforge-systasksd needs it
-#
-# Copyright (C) 2014 Inria (Sylvain Beucler)
-#
-# This file is part of FusionForge. FusionForge is free software;
-# you can redistribute it and/or modify it under the terms of the
-# GNU General Public License as published by the Free Software
-# Foundation; either version 2 of the Licence, or (at your option)
-# any later version.
-#
-# FusionForge is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with FusionForge; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-case "$1" in
- configure)
- if [ -x /sbin/chkconfig ]; then
- chkconfig fusionforge-db-remote on
- else
- update-rc.d fusionforge-db-remote defaults
- fi
- ;;
-
- remove)
- if [ -x /sbin/chkconfig ]; then
- chkconfig --del fusionforge-systasksd
- else
- update-rc.d fusionforge-systasksd remove
- fi
- ;;
-
- purge)
- ;;
-
- *)
- echo "Usage: $0 {configure|remove}"
- exit 1
- ;;
-esac
diff --git a/src/rpm/fusionforge.spec.in b/src/rpm/fusionforge.spec.in
index 449e1e1..dfcc227 100644
--- a/src/rpm/fusionforge.spec.in
+++ b/src/rpm/fusionforge.spec.in
@@ -67,7 +67,6 @@ install_listfiles common
%find_lang %{name}
# Install sub-modules
install_listfiles db-local
-install_listfiles db-remote
install_listfiles web
install_listfiles web-vhosts
install_listfiles shell
@@ -85,7 +84,7 @@ echo %{_datadir}/%{name}/plugins/moinmoin/lib/ >>
plugin-moinmoin.rpmfiles
%package common
Summary: Collaborative development tool - shared files
-Requires: %{name}-db = %{version}-%{release}, php-cli, php-pgsql, php-process,
php-htmlpurifier-htmlpurifier, crontabs, cronie
+Requires: php-cli, php-pgsql, php-process, php-htmlpurifier-htmlpurifier,
crontabs, cronie
%description common
FusionForge provides many tools to aid collaboration in a
development project, such as bug-tracking, task management,
@@ -142,11 +141,7 @@ This dummy package tells FusionForge you installed the
database on a
separate machine. It preserves the fusionforge-db virtual dependency,
to configure the database before depending packages in single-server
installs (e.g. plugins activation requires a populated db).
-%files db-remote -f db-remote.rpmfiles
-%post db-remote
-%{_datadir}/%{name}/post-install.d/db-remote/db-remote.sh configure
-%preun db-remote
-if [ $1 -eq 0 ] ; then
%{_datadir}/%{name}/post-install.d/db-remote/db-remote.sh remove; fi
+%files db-remote
%package shell
@@ -188,7 +183,7 @@ It should be installed on only one server in your
infrastructure.
%package web
Summary: Collaborative development tool - web part (using Apache)
-Requires: %{name}-common = %{version}-%{release}, httpd, mod_ssl, php,
php-pgsql, php-simplepie, php-pear-HTTP, php-nusoap, php-mbstring, httpd-itk,
mod_dav_svn, unoconv, poppler-utils
+Requires: %{name}-common = %{version}-%{release}, %{name}-db =
%{version}-%{release}, httpd, mod_ssl, php, php-pgsql, php-simplepie,
php-pear-HTTP, php-nusoap, php-mbstring, httpd-itk, mod_dav_svn, unoconv,
poppler-utils
%description web
FusionForge provides many tools to aid collaboration in a
development project, such as bug-tracking, task management,
-----------------------------------------------------------------------
Summary of changes:
src/GNUmakefile | 7 -----
src/bin/systasksd | 6 +++-
src/common/include/database-pgsql.php | 5 +++-
src/debian/control.in | 4 +--
src/debian/fusionforge-db-remote.postinst | 40 -------------------------
src/debian/fusionforge-db-remote.prerm | 42 ---------------------------
src/debian/rules | 1 -
src/etc/init.d/fusionforge-db-remote | 18 ------------
src/etc/init.d/fusionforge-systasksd | 4 +--
src/post-install.d/db-remote/db-remote.sh | 45 -----------------------------
src/rpm/fusionforge.spec.in | 11 ++-----
11 files changed, 16 insertions(+), 167 deletions(-)
delete mode 100644 src/debian/fusionforge-db-remote.postinst
delete mode 100644 src/debian/fusionforge-db-remote.prerm
delete mode 100755 src/etc/init.d/fusionforge-db-remote
delete mode 100755 src/post-install.d/db-remote/db-remote.sh
hooks/post-receive
--
FusionForge
_______________________________________________
Fusionforge-commits mailing list
[email protected]
http://lists.fusionforge.org/cgi-bin/mailman/listinfo/fusionforge-commits