www/zope213: make this port usable when installed from packages

Both ports users and package users now follow uniform procedure of creating
application instance.

Summary:
- Clean up port and remove `make instance` functionality that duplicates native
  Zope tool functionality
- Standardize and ensure pkg-message instructions correctly set up Zope
- Make Portlint and Poudriere testport clean
- Set NO_ARCH

PR:		200040
Submitted by:	Jason Unovitch <jason.unovitch@gmail.com>
MFH:		2015Q3
This commit is contained in:
Ruslan Makhmatkhanov 2015-07-03 21:11:15 +00:00
parent 54b3563792
commit f0fcb336d9
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=391274
5 changed files with 28 additions and 98 deletions

View file

@ -2,6 +2,7 @@
PORTNAME= zope213
PORTVERSION= 2.13.22
PORTREVISION= 1
CATEGORIES= www python zope
MASTER_SITES= CHEESESHOP
DISTNAME= Zope2-${PORTVERSION}
@ -80,12 +81,11 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}AccessControl>=2.13.2:${PORTSDIR}/security/p
${PYTHON_PKGNAMEPREFIX}manuel>=0:${PORTSDIR}/devel/py-manuel
USES= python:2 zip
USE_PYTHON= distutils autoplist
USE_PYTHON= autoplist distutils
NO_ARCH= yes
PKGMESSAGE= ${WRKDIR}/pkg-message
SUB_FILES= instance-message package-pkg-message pkg-message
SUB_LIST= ZOPEINSTANCEBASE=${ZOPEINSTANCEBASE} \
ZOPE_USER=${ZOPE_USER} \
SUB_FILES= pkg-message
SUB_LIST= ZOPE_USER=${ZOPE_USER} \
ZOPEINSTANCEDIR=${ZOPEINSTANCEDIR}
USE_RC_SUBR= ${PORTNAME}
@ -93,30 +93,9 @@ ZOPE_USER?= www
ZOPEINSTANCEBASE?= ${PREFIX}/www/Zope213
ZOPEINSTANCEDIR?= ${ZOPEINSTANCEBASE}/${ZOPEINSTANCENAME}
.if defined(BATCH)
ISBATCH= --user admin:test123
.else
ISBATCH= ""
.endif
.if defined(INSTANCENAME)
ZOPEINSTANCENAME= ${INSTANCENAME}
.endif
instance:
@${LOCALBASE}/bin/mkzopeinstance --dir ${ZOPEINSTANCEDIR} ${ISBATCH}
@${CHOWN} ${ZOPE_USER}:${ZOPE_USER} ${ZOPEINSTANCEDIR}/var
@${CHOWN} ${ZOPE_USER}:${ZOPE_USER} ${ZOPEINSTANCEDIR}/log
@${SED} ${SUB_LIST:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
${FILESDIR}/zope.conf_changes \
| ${PATCH} --silent ${ZOPEINSTANCEDIR}/etc/zope.conf
@${RM} ${ZOPEINSTANCEDIR}/etc/zope.conf.orig
@${CAT} ${WRKDIR}/instance-message
post-install:
@${CAT} ${WRKDIR}/pkg-message
pre-package:
@${INSTALL_DATA} ${WRKDIR}/package-pkg-message ${PKGMESSAGE}
post-patch:
@${REINPLACE_CMD} -e 's/#.*effective-user chrism/effective-user ${ZOPE_USER}/' \
${WRKSRC}/src/Zope2/utilities/skel/etc/zope.conf.in
@${RM} ${WRKSRC}/src/Zope2/utilities/skel/etc/zope.conf.in.bak
.include <bsd.port.mk>

View file

@ -1,16 +0,0 @@
**********************************************************************
Zope instance successfully installed
If Zope should get started automatically when the system starts,
please add the following line to /etc/rc.conf
zope213_enable="YES"
If you are using not default instance location, please add this
line to /etc/rc.conf to make it working:
zope213_instances="%%ZOPEINSTANCEDIR%%"
If there is already a zope213_instances entry please add
%%ZOPEINSTANCEDIR%% separated by a space.

View file

@ -1,28 +0,0 @@
**********************************************************************
Zope Successfull installed.
To create an instance of Zope please run
%%LOCALBASE%%/bin/mkzopeinstance --dir <INSTANCEDIR>
<INSTANCEDIR> is the directory where the instance files should
be installed. This can be %%ZOPEINSTANCEBASE%%
Command-line options to 'mkzopeinstance' are available, and can be
investigated by running 'mkzopeinstance --help'.
Zope instances, created by mkzopeinstance, will not be removed
when the package is deinstalled. You'll have to delete them yourself.
If Zope should get started automatically when the system starts,
please add the following line to /etc/rc.conf
zope213_enable="YES"
If you are using not default instance location, please add this
line to /etc/rc.conf to make it working:
zope213_instances="<INSTANCEDIR>"
Additional Zope instances have to be added to zope213_instances
separated by a space.

View file

@ -2,22 +2,27 @@
Zope Successfull installed.
To create an instance of Zope please run
make instance
To create an instance of Zope using the default location, please run:
You can set the following Variables in /etc/make.conf
%%LOCALBASE%%/bin/mkzopeinstance --dir %%ZOPEINSTANCEDIR%%
chown %%ZOPE_USER%%:%%ZOPE_USER%% %%ZOPEINSTANCEDIR%%var
chown %%ZOPE_USER%%:%%ZOPE_USER%% %%ZOPEINSTANCEDIR%%log
ZOPEINSTANCEBASE Directory where Zope instance should go
(default: %%ZOPEINSTANCEBASE%%)
ZOPEINSTANCENAME Default name for a new Zope instance
(default: none)
Command-line options to 'mkzopeinstance' are available, and can be
investigated by running 'mkzopeinstance --help'.
If you want have multiple Zope you should run
make instance INSTANCENAME=<somename>
Zope instances, created by mkzopeinstance, will not be removed
when the package is deinstalled. You'll have to delete them yourself.
You may also define BATCH option if you want instance to be created with
default username/password pair for instance administartor (admin:test123):
make instance BATCH=yes
If you are not using the default instance location, please use the
desired paths during creation and add this line to /etc/rc.conf:
Zope instances, created by `make instance', will not be removed when the
port is deinstalled. You'll have to delete them yourself.
zope213_instances="<INSTANCEDIR>"
Additional Zope instances have to be added to zope213_instances
separated by a space.
If Zope should get started automatically when the system starts,
please add the following line to /etc/rc.conf:
zope213_enable="YES"

View file

@ -1,10 +0,0 @@
--- zope.conf.in 2011-11-30 15:30:18.000000000 +0400
+++ zope.conf 2011-11-30 15:43:40.000000000 +0400
@@ -161,6 +161,7 @@
#
# effective-user chrism
+effective-user %%ZOPE_USER%%
# Directive: enable-product-installation
#