Compare commits

..

16 commits

Author SHA1 Message Date
Fedora Release Engineering
538cf7728b dist-git conversion 2010-07-29 16:32:53 +00:00
Bill Nottingham
6b2deed2ef Fix typo that causes a failure to update the common directory. (releng
#2781)
2009-11-26 01:09:00 +00:00
Jonathan Steffan
6e17043de9 Fix permissions 2007-11-09 02:51:04 +00:00
Jonathan Steffan
47eb85a97a Update to 2.10.5 2007-11-03 23:30:06 +00:00
Jonathan Steffan
d8c769481a Update Zope to 2.10.4 for use with Plone 3 2007-09-15 21:32:12 +00:00
Jonathan Steffan
cbd76f5631 Update to 2.9.8 2007-08-06 16:27:18 +00:00
Jonathan Steffan
fa1cbed848 Added zope.pth 2007-05-23 20:58:09 +00:00
Jonathan Steffan
86a4aa5586 Updated to 2.9.7 2007-04-08 04:20:17 +00:00
Jonathan Steffan
0748dcc12c added hotfix 20070320 2007-03-21 22:12:32 +00:00
Jonathan Steffan
1a3deaad4f Needed to add back the configure patch 2007-01-06 07:26:03 +00:00
Jonathan Steffan
3cc99b847b updated to 2.9.6 and added Five back to zope 2007-01-06 06:44:22 +00:00
Jonathan Steffan
7d625ec758 Added patch to enable support for python 2.4.4 2006-11-22 21:55:01 +00:00
Jonathan Steffan
dbe5148f7c Added configure script patch for python 2.4.4 2006-11-22 19:57:32 +00:00
Jonathan Steffan
0ae158a358 Updated to 2.9.5 2006-11-22 18:22:32 +00:00
Jonathan Steffan
6433cea78a Updated so plone provides the product 'Five' rather then Zope. Zope needed
to provide Five in Plone 2.5. In Plone 2.5.1, Plone now provides Five.
    Fun.
2006-11-22 04:52:42 +00:00
Jeremy Katz
936e3fcbf6 Initialize branch FC-6 for zope 2006-10-23 19:48:13 +00:00
11 changed files with 341 additions and 7 deletions

2
.gitignore vendored
View file

@ -1 +1 @@
Zope-2.9.4-final.tgz
Zope-2.10.5-final.tgz

View file

@ -1,6 +0,0 @@
There is no python 2.4 support for Fedora > 6.
http://wiki.zope.org/zope3/Zope3UsingPython25
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=233187

1
sources Normal file
View file

@ -0,0 +1 @@
55c0f0c32e41ab3262991b10da967d85 Zope-2.10.5-final.tgz

18
zope-2.10.4-config.patch Normal file
View file

@ -0,0 +1,18 @@
--- skel/etc/zope.conf.in.orig 2007-08-14 00:14:05.000000000 -0600
+++ skel/etc/zope.conf.in 2007-08-14 00:14:49.000000000 -0600
@@ -148,6 +148,7 @@
#
# effective-user chrism
+effective-user zope
# Directive: enable-product-installation
#
@@ -288,6 +289,7 @@
#
# mime-types $INSTANCE/etc/mime.types
+mime-types /etc/mime.types
# Directive: structured-text-header-level
#

12
zope-README.Fedora Normal file
View file

@ -0,0 +1,12 @@
==== Concerning the Fedora package ====
A default instance has been installed in <<LOCALSTATEDIR>>/lib/zope.
You can create additional instances using the mkzopeinstance.py script
Add your instances to <<SYSCONFDIR>>/sysconfig/zope to make the zopectl script
aware of them. Every operation run by <<BINDIR>>/zopectl will affect all
your instances, you can control them independently using the zopectl
script in the bin/ directory inside your instance.
When you create a new instance, remember to change the default listening
ports and to chown the directory to the zope user.

83
zope.init.in Normal file
View file

@ -0,0 +1,83 @@
#!/bin/sh
# Startup script for Zope
#
# chkconfig: - 80 20
# description: Zope, a web application server
#
# config: $instance/etc/zope.conf
# Source function library.
. /etc/init.d/functions
RETVAL=0
zopectl="<<BINDIR>>/zopectl"
user="<<ZOPE_USER>>"
prog="zope"
start() {
echo -n $"Starting $prog: "
output=`$zopectl -u $user start 2>/dev/null`
# the return status of zopectl is not reliable, we need to parse
# its output via substring match
if echo $output | grep -q "started"; then
# success
touch /var/lock/subsys/$prog
success
echo
RETVAL=0
else
# failed
failure
echo
RETVAL=1
fi
return $RETVAL
}
stop() {
echo -n $"Stopping $prog: "
output=`$zopectl -u $user stop 2>/dev/null`
# the return status of zopectl is not reliable, we need to parse
# its output via substring match
if echo $output | grep -q "stopped"; then
# success
rm -f /var/lock/subsys/$prog
success
echo
RETVAL=0
else
# failed
failure
echo
RETVAL=1
fi
return $RETVAL
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
$zopectl status
;;
restart)
restart
;;
condrestart)
$zopectl status | grep -qs "program running" && restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart}"
RETVAL=2
esac
exit $RETVAL

6
zope.logrotate.cron.in Normal file
View file

@ -0,0 +1,6 @@
#!/bin/bash
. <<SYSCONFDIR>>/sysconfig/zope
for instance in $ZOPE_INSTANCES; do
logrotate $instance/etc/logrotate.conf
done

10
zope.logrotate.in Normal file
View file

@ -0,0 +1,10 @@
<<INSTANCE_HOME>>/log/*.log {
missingok
sharedscripts
rotate 4
weekly
compress
postrotate
<<INSTANCE_HOME>>/bin/zopectl logreopen >/dev/null 2>&1
endscript
}

197
zope.spec Normal file
View file

@ -0,0 +1,197 @@
%define python_minver 2.4.3
%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
%define zope_user zope
%define zope_group %{zope_user}
%define zope_home %{_libdir}/zope
%define software_home %{zope_home}/lib/python
%define instance_home %{_localstatedir}/lib/zope
%define zopectl %{_bindir}/zopectl
%define runzope %{_bindir}/runzope
Name: zope
Summary: Web application server for flexible content management applications
Version: 2.10.5
Release: 2%{?dist}
License: ZPL
Group: System Environment/Daemons
URL: http://www.zope.org/
Source0: http://www.zope.org/Products/Zope/2.10.5/Zope-2.10.5-final.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Source1: zope.init.in
Source2: zope.sysconfig.in
Source3: zope.zopectl.in
Source4: zope-README.Fedora
Source5: zope.logrotate.in
Source6: zope.logrotate.cron.in
Patch0: zope-2.10.4-config.patch
BuildRequires: python-devel >= %{python_minver}, python >= %{python_minver}
Requires: python >= %{python_minver}, libxml2-python, python-elementtree
Requires(pre): /usr/sbin/useradd
Requires(post): /sbin/chkconfig
Requires(preun): /sbin/chkconfig, /sbin/service
%description
Zope is an application server framework that enables developers to quickly
build web applications such as intranets, portals, and content management
systems.
Zope, by default, will listen on port 8080.
%prep
%setup -q -n Zope-%{version}-final
%patch0 -p0
chmod -x skel/import/README.txt
install -pm 644 %{SOURCE4} README.Fedora
install -pm 644 %{SOURCE5} skel/etc/logrotate.conf.in
%build
rm -rf $RPM_BUILD_ROOT # Configure checks for it
./configure \
--prefix=$RPM_BUILD_ROOT%{zope_home} \
# --with-python=%{_bindir}/python
# --no-compile
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
# Create all required additional directories
for dir in %{zope_home} %{software_home} %{instance_home}/{Products,bin,var} \
%{_sysconfdir}/sysconfig %{_bindir}; do
install -d $RPM_BUILD_ROOT$dir
done
install -D -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/zope
install -D -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/zope
install -D -m 755 %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/zopectl
install -D -m 755 %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/cron.daily/zope-logrotate
perl -pi -e 's,<<SYSCONFDIR>>,%{_sysconfdir},g;
s,<<BINDIR>>,%{_bindir},g;
s,<<LOCALSTATEDIR>>,%{_localstatedir},g;
s,<<ZOPE_USER>>,%{zope_user},g' \
$RPM_BUILD_ROOT%{_initrddir}/zope \
$RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/zope \
$RPM_BUILD_ROOT%{_bindir}/zopectl \
$RPM_BUILD_ROOT%{_sysconfdir}/cron.daily/zope-logrotate \
README.Fedora skel/etc/zope.conf.in
# Install the skel, translating paths, into the build root
%{__python} "utilities/copyzopeskel.py" \
--sourcedir="skel" \
--targetdir="$RPM_BUILD_ROOT%{instance_home}" \
--replace="INSTANCE_HOME:%{instance_home}" \
--replace="SOFTWARE_HOME:%{software_home}" \
--replace="ZOPE_HOME:%{zope_home}" \
--replace="PYTHON:%{__python}" \
# Actually copy all the other files over
make install
chmod 750 $RPM_BUILD_ROOT%{instance_home}
# Fix permissions, must have changed in the upstream tar
chmod 755 $RPM_BUILD_ROOT%{instance_home}/bin/zopectl
chmod 755 $RPM_BUILD_ROOT%{instance_home}/bin/runzope
# Set needed permissions
# We might go as far as to only allow zope r/w to the .pyc files
for dir in %{instance_home}/{Products,log,lib,var}; do
chmod 775 $RPM_BUILD_ROOT$dir
done
chmod 755 $RPM_BUILD_ROOT%{zope_home}
# included in %%doc
rm -rf $RPM_BUILD_ROOT%{zope_home}/doc
# write version.txt
echo "Zope %{version}-%{release}" > \
"$RPM_BUILD_ROOT%{software_home}/version.txt"
# write zope.pth
install -d $RPM_BUILD_ROOT%{python_sitearch}
echo "%{software_home}" > \
"$RPM_BUILD_ROOT%{python_sitearch}/zope.pth"
# Compile .pyc
%{__python} -c "import compileall; \
compileall.compile_dir(\"$RPM_BUILD_ROOT%{zope_home}\", \
ddir=\"%{zope_home}\", force=1)"
%clean
rm -rf $RPM_BUILD_ROOT
%pre
%{_sbindir}/useradd -c "Zope user" -s /bin/false -r -d %{zope_home} \
%{zope_user} 2>/dev/null || :
%post
# add zope init to runlevels
/sbin/chkconfig --add zope
%preun
if [ $1 -eq 0 ]; then
/sbin/service zope stop >/dev/null 2>&1
/sbin/chkconfig --del zope
fi
%files
%defattr(-, root, root, -)
%doc doc/* README.Fedora ZopePublicLicense.txt
%config(noreplace) %{_sysconfdir}/sysconfig/zope
%config %{_initrddir}/zope
%config %{_sysconfdir}/cron.daily/zope-logrotate
%attr(0755, root, root) %{_bindir}/zopectl
%dir %{zope_home}
%{zope_home}/bin
%{zope_home}/lib
%dir %{zope_home}/skel
%{zope_home}/skel/bin
%{zope_home}/skel/Extensions
%{zope_home}/skel/import
%{zope_home}/skel/log
%{zope_home}/skel/lib
%{zope_home}/skel/Products
%{zope_home}/skel/README.txt
%{zope_home}/skel/var
%config %{zope_home}/skel/etc
%attr(-, root, %{zope_group}) %{instance_home}/*
%{python_sitearch}/zope.pth
%changelog
* Thu Nov 8 2007 Jonathan Steffan <jon a fedoraunity.org> 2.10.5-2
- Update permissions for zopectl and runzope
* Sat Nov 3 2007 Jonathan Steffan <jon a fedoraunity.org> 2.10.5-1
- Update to zope 2.10.5
* Mon Sep 3 2007 Jonathan Steffan <jon a fedoraunity.org> 2.10.4-3
- Updated Requires for libxml2-python and python-elementtree
* Tue Aug 14 2007 Jonathan Steffan <jon a fedoraunity.org> 2.10.4-2
- Added config patch
* Wed Aug 1 2007 Jonathan Steffan <jon a fedoraunity.org> 2.10.4-1
- Initial Package

7
zope.sysconfig.in Normal file
View file

@ -0,0 +1,7 @@
# List here the paths to your Zope instances, space separated.
#
# Example : ZOPE_INSTANCES="/var/lib/zope-test /var/lib/zope-prod"
#
# This file is used by the generic zopectl script.
#
ZOPE_INSTANCES="<<LOCALSTATEDIR>>/lib/zope"

6
zope.zopectl.in Normal file
View file

@ -0,0 +1,6 @@
#!/bin/bash
. <<SYSCONFDIR>>/sysconfig/zope
for instance in $ZOPE_INSTANCES; do
$instance/bin/zopectl "$@"
done