2012-03-21 4 views
4

На сервере имеется несколько независимых инсталляций Plone, работающих под разными учетными записями UNIX.Общий доступ к кешу/яйцам для нескольких пользователей UNIX

Есть ли какое-либо надежное средство для совместного использования папки buildout-cache на этом сервере у всех этих разных пользователей UNIX? Поскольку один образец Plone/установка составляет 250 - 500 МБ, это будет небольшой победой.

  • Все пользователи UNIX доступ к общей папке будет по-прежнему иметь возможность запускать Buildout, который добавляет в новые яйца

  • Новые яйца будут доступны на диске с другими пользователями, без необходимости повторно тянуть , скопируйте их около

  • Пользователям доверять; нет никакого страха они собираются яйцо/и разлагающий для других пользователей

В настоящее время проблема в том, что яйца/затянуты в билдауте одного пользователей UNIX становится не записываемые другимами.

Мое предположение заключается в том, что после каждого запуска сборки может существовать какой-то пользовательский скрипт sudo, фиксирующий права на яйца.

Любой другой предлагаемый метод совместного использования яиц?

+0

Я буду опасаться конфликтов; две сборки, устанавливающие одно и то же яйцо, развращая результирующую установку. Это может сработать, и опять же, возможно, это не так. –

ответ

5

Вы можете разделить все ваши яйца, помещая их в один каталоге, как вы сказали, а затем вы можете решить эту проблему разрешения, добавив это в ваших сборках:

[buildout] 
parts += 
    chmod 

[chmod] 
recipe = plone.recipe.command 
command = 
    chmod -R ugo+rw ${buildout:eggs-directory} 
+3

ugo + rw дает каждому доступ для записи, а не только доверенным пользователям. Может быть, «chown/chgrp» с ug + rw perms лучше? И, если вы не хотите, чтобы часть chmod находилась в каждой конструкции, вы также можете запускать аналогичную cronjob каждую минуту. –

+0

+1 для части ug + rw ... Я предположил, что только доверенный пользователь имеет доступ к серверу, но безопасность никогда не бывает слишком большой. -1 для cronjob ... потому что 1) если каталог яиц растет, как и предполагалось, он перегружает сервер и 2) если кто-то еще запускает сборку, вам нужно ждать 1 целую минуту, прежде чем вы сможете повторно запустить ваш экземпляр ?! никоим образом, я бы сходил с ума: P –

1

Это происходит со мной, что другим решение (не так хорошо, как рецепт chmod, imo, но, возможно, кто-то увидит какое-то значение) состоит в том, чтобы делиться только кешем загрузки - теперь другим пользователям все равно не нужно «перетягивать», но сохранить свой собственный каталог яиц. Файлы в кеше загрузки недоступны для записи другими пользователями, но кто будет писать им? [но тогда я не уверен, почему мы заботимся о том, чтобы яйца были доступны для записи - кто пишет в каталоги яиц?]

+1

Если вы получаете zope для компиляции файлов .mo, он записывает в файл яйца ... к сожалению. – djay

+0

Спасибо @djay, это наверняка вызовет проблемы – Auspex

2

Мы используем collective.hostout для всех производственных развертываний esp, где каждая установка принадлежит другому пользователю. Hostout создает общую группу для глобального кеша яиц. Это гарантирует, что любое яйцо будет читаемым группой после запуска сборки.

+1

И я тоже использую hostout, но я вижу проблему Микко, применяемую на сервере разработки. – Auspex

 Смежные вопросы

  • Нет связанных вопросов^_^