where users can be authenticated by several means with Authentication
Service Providers.
+%package plugin-authcas
+Summary: External CAS authentication plugin for FusionForge.
+Group: Development/Tools
+Requires: %{name} >= %{version}, php, postgresql
+%description plugin-authcas
+External CAS authentication plugin for FusionForge.
+
+%package plugin-authhttpd
+Summary: External HTTPD authentication plugin for FusionForge.
+Group: Development/Tools
+Requires: %{name} >= %{version}, php, postgresql
+%description plugin-authhttpd
+External HTTPD authentication plugin for FusionForge.
+
+%package plugin-authopenid
+Summary: External OpenID authentication plugin for FusionForge.
+Group: Development/Tools
+Requires: %{name} >= %{version}, php, postgresql
+%description plugin-authopenid
+External OpenID authentication plugin for FusionForge.
+
%package plugin-cvssyncmail
Summary: Provides email notifications of changes to CVS repositories
Group: Development/Tools
-Requires: %{name} >= %{version}, %{name}-scmcvs, python, php
+Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, python, php
%description plugin-cvssyncmail
This plugin adds the capability to notify users of changes to CVS repositories
in FusionForge.
%package plugin-cvstracker
Summary: Links CVS log messages to trackers and tasks.
Group: Development/Tools
-Requires: %{name} >= %{version}, %{name}-scmcvs, php, postgresql
+Requires: %{name} >= %{version}, %{name}-plugin-scmcvs, php, postgresql
%description plugin-cvstracker
This is a fusionforge plugin that allows linking CVS log messages to
trackers and tasks. It will review all commits in a project and search for
specific string to know which task or tracker is related.
+%package plugin-doaprdf
+Summary: DOAP RDF for projects
+Group: Development/Tools
+Requires: %{name} >= %{version}, php
+%description plugin-doaprdf
+DOAP RDF for projects
+
%package plugin-externalsearch
Summary: external search plugin for FusionForge
Group: Development/Tools
%description plugin-hudson
This plugin adds hudson integration to FusionForge.
-%package plugin-ldapextauth
+%package plugin-authldap
Summary: external LDAP authentication for FusionForge plugin
Group: Development/Tools
Requires: %{name} >= %{version}, php, php-ldap
-%description plugin-ldapextauth
+%description plugin-authldap
This plugin provides LDAP authentication capability for FusionForge.
-%package plugin-mantis
-Summary: MantisBT plugin for FusionForge
-Group: Development/Tools
-Requires: %{name} >= %{version}, php
-%description plugin-mantis
-A plugin to use the MantisBT web-based bug tracking system with FusionForge.
-
%package plugin-mediawiki
Summary: Mediawiki plugin for FusionForge
Group: Development/Tools
%description plugin-mediawiki
This is a plugin to integrate MediaWiki within FusionForge.
+%package plugin-message
+Summary: Global Information Message plugin for FusionForge
+Group: Development/Tools
+Requires: %{name} >= %{version}, php
+%description plugin-message
+This is a plugin to add a global announce message for FusionForge.
+It can be use to warn users for planned or current outage.
+
%package plugin-online_help
Summary: online_help plugin for FusionForge
Group: Development/Tools
This package provides an OSLC-CM V2 compatible plugin for FusionForge
tracker system.
+%package plugin-projectimport
+Summary: Project Import plugin for FusionForge
+Group: Development/Tools
+Requires: %{name} >= %{version}, php
+%description plugin-projectimport
+Project import plugin for FusionForge
+This plugin allows the import of a project data previously exported
+with ForgePlucker, or a compatible tool.
+
%package plugin-projects_hierarchy
Summary: projects_hierarchy plugin for FusionForge
Group: Development/Tools
%package plugin-svncommitemail
Summary: subversion commit email plugin for FusionForge
Group: Development/Tools
-Requires: %{name} >= %{version}, php, subversion, perl, %{name}-scmsvn >= %{version}
+Requires: %{name} >= %{version}, php, subversion, perl, %{name}-plugin-scmsvn >= %{version}
%description plugin-svncommitemail
This RPM installs subversion commit email notification plugin for FusionForge.
%package plugin-svntracker
Summary: SVNTracker plugin for FusionForge
Group: Development/Tools
-Requires: %{name} >= %{version}, php, subversion, perl, postgresql, %{name}-scmsvn >= %{version}
+Requires: %{name} >= %{version}, php, subversion, perl, postgresql, %{name}-plugin-scmsvn >= %{version}
%description plugin-svntracker
SVNTracker plugin allows linking SVN log messages to Trackers and tasks.
It will review all commits in a project and search for a specific string
%description plugin-mantisbt
mantisbt plugin for FusionForge.
+%package plugin-oauthprovider
+Summary: oauthprovider plugin for FusionForge
+Group: Development/Tools
+Requires: %{name} >= %{version}, php, postgresql
+%description plugin-oauthprovider
+oauthprovider plugin for FusionForge.
+
%prep
%setup -q
#%patch1 -p1
# Apache configuration file
%{__cp} -a etc/httpd.conf.d-fhs/* $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/httpd.conf.d/
-%{__cp} -a etc/config.ini-fhs $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/
+%{__cp} -a etc/config.ini.d/defaults.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
+%{__cp} -a etc/config.ini.d/debug.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
+%{__cp} -a etc/config.ini-fhs $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini
%{__cp} -a etc/httpd.conf-fhs $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/gforge.conf
#%{__cp} -a etc/gforge-httpd.conf.example $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/gforge.conf
#%{__sed} -i -e 's|.*php_value[[:space:]]*include_path.*$|\tphp_value\tinclude_path ".:/usr/share/gforge/www/include:/usr/share/gforge:/etc/gforge:/usr/share/gforge/common:/usr/share/gforge/www:/usr/share/gforge/plugins"|' $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/gforge.conf
%{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/rpm-specific
%{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/*/packaging
%{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/*/*.spec
+%{__rm} -fr $RPM_BUILD_ROOT/%{FORGE_DIR}/plugins/foafprofiles
### Plugin setup ###
%{__cp} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/*/etc/*.ini $RPM_BUILD_ROOT%{FORGE_CONF_DIR}/config.ini.d/
# plugin: aselectextauth
+# plugin: authbuiltin (internal plugin)
+%{__ln_s} ../../plugins/authbuiltin/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authbuiltin
+
+# plugin: authcas
+%{__ln_s} ../../plugins/authcas/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authcas
+
+# plugin: authhttpd
+%{__ln_s} ../../plugins/authhttpd/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authhttpd
+
+# plugin: authopenid
+%{__ln_s} ../../plugins/authopenid/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/authopenid
+
# plugin: cvssyncmail
# plugin: cvstracker
# plugin: hudson
%{__ln_s} ../../plugins/hudson/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/hudson
-# plugin: ldapextauth
-%{__rm} -rf $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/ldapextauth/rpm-specific
-
-# plugin: mantis
-
# plugin: mediawiki
# create symlink for apache configuration for mediawiki plugin
## first, delete the php_admin_value include_path
# insert our own README file
%{__cp} -f %{SOURCE1} $RPM_BUILD_ROOT%{FORGE_DIR}/plugins/mediawiki/README.jlbond
+# plugin: message
+%{__ln_s} ../../plugins/message/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/message
+
# plugin: online_help
# plugin: projects_hierarchy
# plugin: oslc
%{__ln_s} ../../plugins/oslc/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oslc
+# plugin : projectimport
+%{__ln_s} ../../plugins/projectimport/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectimport
+
# plugin: projectlabels
%{__ln_s} ../../plugins/projectlabels/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/projectlabels
# plugin: mantisbt
%{__ln_s} ../../plugins/mantisbt/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/mantisbt
+# plugin: oauthprovider
+#%{__ln_s} ../../plugins/oauthprovider/www $RPM_BUILD_ROOT%{FORGE_DIR}/www/plugins/oauthprovider
+
### END OF PLUGIN SETUP ###
%pre
if [ $ret -ne 0 ] ; then
FFORGE_DB=%{dbname}
FFORGE_USER=%{dbuser}
- FFORGE_ADMIN_USER=%{fforge_admin}
- FFORGE_ADMIN_PASSWORD=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-8)
+ if [ "x${FFORGE_ADMIN_USER}" = "x" ]
+ then
+ FFORGE_ADMIN_USER=%{fforge_admin}
+ fi
+ if [ "x${FFORGE_ADMIN_PASSWORD}" = "x" ]
+ then
+ FFORGE_ADMIN_PASSWORD=$(/bin/dd if=/dev/urandom bs=32 count=1 2>/dev/null | /usr/bin/sha1sum | cut -c1-8)
+ fi
export FFORGE_DB FFORGE_USER FFORGE_ADMIN_USER FFORGE_ADMIN_PASSWORD
/usr/bin/php %{FORGE_DIR}/fusionforge-install-3-db.php >>/var/log/%{name}-install.log 2>&1
else
fi
/usr/bin/php %{FORGE_DIR}/db/upgrade-db.php >>/var/log/%{name}-install.log 2>&1
+ /usr/bin/php %{FORGE_DIR}/utils/normalize_roles.php >>/var/log/%{name}-install.log 2>&1
HOSTNAME=`hostname -f`
#%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" %{FORGE_CONF_DIR}/local.inc
[ -d %{FORGE_VAR_LIB}/etc ] || mkdir %{FORGE_VAR_LIB}/etc
touch %{FORGE_VAR_LIB}/etc/httpd.vhosts
-# ====================
- # Installation from scratch, let's generate initial config files
- if [ ! -e %{FORGE_CONF_DIR}/config.ini.d ] ; then
- mkdir -p %{FORGE_CONF_DIR}/config.ini.d
- fi
- if [ ! -e %{FORGE_CONF_DIR}/config.ini.d/rpm-install.ini ] ; then
- cat > %{FORGE_CONF_DIR}/config.ini.d/rpm-install.ini <<EOF
-; This file was generated by the RPM installation system.
-; You can edit the values here or move them to other files.
-
-[core]
-forge_name=FusionForge
-web_host=$HOSTNAME
-EOF
- fi
- if [ ! -e %{FORGE_CONF_DIR}/config.ini.d/rpm-install-secrets.ini ] ; then
- t=$(mktemp %{FORGE_CONF_DIR}/config.ini.d/rpm-install-secrets.ini.XXXXXX)
- if [ "$pw" = "" ] ; then
- if [ -c /dev/urandom ]; then # ...using /dev/urandom when possible
- pw=$(dd if=/dev/urandom count=1 bs=16 2> /dev/null | md5sum | cut -c-32)
- else # ...or something else if need be.
- pw=$(date +"%s:%N" | md5sum | cut -c-32)
- fi
- fi
-
- cat > $t <<EOF
-; This file was generated by the RPM installation system.
-; You can edit the values here or move them to other files.
-; These values should not go into world-readable files!
-
-[core]
-database_host=""
-database_name=%{dbname}
-database_user=%{dbuser}
-database_port=5432
-#database_password=$pw
-EOF
- mv $t %{FORGE_CONF_DIR}/config.ini.d/rpm-install-secrets.ini
- fi
-# ====================
-
/usr/bin/php %{FORGE_DIR}/fusionforge-install-4-config.php >>/var/log/%{name}-install.log 2>&1
/etc/init.d/httpd restart >/dev/null 2>&1
echo ""
echo " http://$HOSTNAME/"
echo ""
- echo "The default fusionforge administrator account and password is:"
+ echo "The FusionForge administrator account and password is:"
echo ""
- echo "Account Name = %{fforge_admin}"
+ echo "Account Name = $FFORGE_ADMIN_USER"
echo "Password = $FFORGE_ADMIN_PASSWORD"
#echo "Please change it to something appropriate upon initial login."
# give user a few seconds to read the message
%dir %{FORGE_CONF_DIR}/httpd.d
%dir %{FORGE_CONF_DIR}/httpd.conf.d
%{FORGE_CONF_DIR}/httpd.conf.d/*
-%{FORGE_CONF_DIR}/config.ini-fhs
%{_sysconfdir}/httpd/conf.d/gforge.conf
+%{FORGE_CONF_DIR}/config.ini.d/defaults.ini
+%{FORGE_CONF_DIR}/config.ini.d/debug.ini
+%{FORGE_CONF_DIR}/config.ini
%dir %attr(0775,root,%{httpdgroup}) %{FORGE_CONF_DIR}/plugins
%dir %{FORGE_VAR_LIB}/scmtarballs
%dir %{FORGE_VAR_LIB}/scmsnapshots
/home/groups
/var/log/gforge
/bin/cvssh.pl
+%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authbuiltin.ini
+%{FORGE_DIR}/plugins/authbuiltin
+%{FORGE_DIR}/www/plugins/authbuiltin
%files plugin-aselectextauth
%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/aselectextauth.ini
%{FORGE_DIR}/plugins/aselectextauth
+%files plugin-authcas
+%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authcas.ini
+%{FORGE_DIR}/plugins/authcas
+%{FORGE_DIR}/www/plugins/authcas
+
+%files plugin-authhttpd
+%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authhttpd.ini
+%{FORGE_DIR}/plugins/authhttpd
+%{FORGE_DIR}/www/plugins/authhttpd
+
+%files plugin-authopenid
+%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authopenid.ini
+%{FORGE_DIR}/plugins/authopenid
+%{FORGE_DIR}/www/plugins/authopenid
+
%files plugin-cvssyncmail
%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/cvssyncmail.ini
%{FORGE_DIR}/plugins/cvssyncmail
%{FORGE_DIR}/www/plugins/cvstracker
%attr(-,%{httpduser},%{httpdgroup}) %{FORGE_CONF_DIR}/plugins/cvstracker
+%files plugin-doaprdf
+%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/doaprdf.ini
+%{FORGE_DIR}/plugins/doaprdf
+
%files plugin-externalsearch
%config(noreplace) %{FORGE_CONF_DIR}/plugins/externalsearch/
%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/externalsearch.ini
%{FORGE_DIR}/plugins/hudson
%{FORGE_DIR}/www/plugins/hudson
-%files plugin-ldapextauth
-%config(noreplace) %{FORGE_CONF_DIR}/plugins/ldapextauth/
-%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/ldapextauth.ini
-%{FORGE_DIR}/plugins/ldapextauth
-
-%files plugin-mantis
-%config(noreplace) %{FORGE_CONF_DIR}/plugins/mantis/
-%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mantis.ini
-%{FORGE_DIR}/plugins/mantis
-%{FORGE_DIR}/www/plugins/mantis
+%files plugin-authldap
+%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/authldap.ini
+%{FORGE_DIR}/plugins/authldap
%files plugin-mediawiki
%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/mediawiki.ini
/usr/share/mediawiki/skins/GForge.deps.php
/usr/share/mediawiki/skins/GForge.php
+%files plugin-message
+%{FORGE_DIR}/plugins/message
+%{FORGE_DIR}/www/plugins/message
+
%files plugin-online_help
%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/online_help.ini
%{FORGE_DIR}/plugins/online_help
%{FORGE_DIR}/plugins/oslc
%{FORGE_DIR}/www/plugins/oslc
+%files plugin-projectimport
+%config(noreplace) %{FORGE_CONF_DIR}/plugins/projectimport/
+%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projectimport.ini
+%{FORGE_DIR}/plugins/projectimport
+%{FORGE_DIR}/www/plugins/projectimport
+
%files plugin-projects_hierarchy
%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/projects_hierarchy.ini
%{FORGE_DIR}/plugins/projects_hierarchy
%{FORGE_DIR}/plugins/mantisbt
%{FORGE_DIR}/www/plugins/mantisbt
+%files plugin-oauthprovider
+%config(noreplace) %{FORGE_CONF_DIR}/config.ini.d/oauthprovider.ini
+%config(noreplace) %{FORGE_CONF_DIR}/plugins/oauthprovider/
+%{FORGE_CONF_DIR}/httpd.d/62plugin-oauthprovider
+%{FORGE_DIR}/plugins/oauthprovider
+
%changelog
* Fri May 28 2010 - Alain Peyrat <aljeux@free.fr> - 5.0.50-1
- Ported to 5.1 tree.