Ajouter un produit en développement à votre buildout Zope / Plone
Cet article automatise la tache simple qu'est l'ajout d'un produit en développement à votre buildout. Son but est de vous permettre d'effectuer cette tache sans ouvrir le fichier buildout.cfg.
En premier lieu, placez-vous dans votre instance (la ou se trouve votre fichier buildout.cfg). Pour la plupart d'entre vous, cela se fera sans doute via la commande :
cd ~/Plone/zeocluster
Une fois positionné dans le dossier contenant le fichier buildout.cfg, renseignez le nom du produit en cours de développement que vous souhaitez ajouter à votre buildout :
PRODUCT_NAME=plone.example.product
Une fois le nom du produit renseigné, copiez le dossier contenant ce produit dans le dossier src/ de l'instance :
/bin/cp -r ~/plone.example.product src/
Nous modifions maintenant le fichier buildout.cfg pour y ajouter notre produit :
/bin/sed -i -e "0,/^eggs[ ]*=/{//a\\
${PRODUCT_NAME}
;}" \
-e "0,/^develop[ ]*=/{//a\\
src/${PRODUCT_NAME}
;}" buildout.cfg
De plus, nous testons si le produit contient un fichier configure.zcml et si c'est le cas, nous ajoutons la ligne adéquate au buildout.cfg :
if [ -n "$(find "./src/${PRODUCT_NAME}" -type f -name 'configure.zcml' -print -quit)" ]; then
/bin/sed -i -e "0,/^zcml[ ]*=/{//a\\
${PRODUCT_NAME}
;}" buildout.cfg
fi
Enfin, nous mettons à jour notre instance :
./bin/buildout
et nous redémarrons nos clients :
./bin/client1 restart
./bin/client2 restart
Votre produit est maintenant disponible pour installation dans votre site Plone.