Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sharing buildout-cache/eggs across several UNIX users

On a server there are several independent Plone buildout installations, running under different UNIX accounts.

Is there any reliable mean to share buildout-cache folder on this server across all these different UNIX users? As one Plone eggs/ installation is 250 - 500 MB this would be a small win.

  • All UNIX users accessing the shared folder would still be able to run buildout, which adds in new eggs

  • New eggs would be available on the disk to other users, without need to re-pull, copy them around

  • The users are trusted; there is no fear them going to eggs/ and corrupting for other users

Currently the issue is that eggs/ pulled in by buildout of one UNIX users becomes not writeable by another.

My guess is that there could be some custom sudo script fixing eggs rights after each buildout run.

Any other suggested method for egg sharing?

like image 623
Mikko Ohtamaa Avatar asked Feb 21 '23 02:02

Mikko Ohtamaa


2 Answers

You can share all your eggs by putting them in a single directory, as you said, and you can then resolve the permission issue by adding this at your buildouts:

[buildout]
parts +=
   chmod

[chmod]
recipe = plone.recipe.command
command =
    chmod -R ugo+rw ${buildout:eggs-directory}
like image 104
Giacomo Spettoli Avatar answered Feb 23 '23 16:02

Giacomo Spettoli


We use collective.hostout for all production deployments esp where each install is owned by a different user. Hostout creates a shared group for the global eggs cache. It ensures any egg is group readable after buildout is run.

like image 30
djay Avatar answered Feb 23 '23 15:02

djay