У меня есть файлы cfengine (2 и 3) в репозитории git, который находится под управлением gitolite.
У пользователей этого репо есть ловушка перед фиксацией, которая будет при необходимости выполнять синтаксические / обещающие проверки файлов. Это отлично работает.
Чтобы защитить от кого-то, у кого нет хука предварительной фиксации, я хотел бы добавить хук в голый репозиторий на сервере gitolite. Я знаю, что мне нужно использовать pre-receive или update.secondary. Кроме того, я в тупике.
Я нашел несколько сайтов с инструкциями по выполнению этого с помощью PHP файлов, но их можно проверить индивидуально, но для моего (правда, ограниченного) понимания cfengine мне нужны все файлы cfengine, прежде чем я смогу их проверить.
За исключением того, что репо клонируется крючком, как мне это сделать?
Действительно, на данный момент вам нужно иметь все ваши файлы CFEngine для их проверки, поскольку вы получите сбой, если, например, какой-то необходимый файл отсутствует или если не определена последовательность пакетов, независимо от того, является ли синтаксис файла правильным. .
Учитывая это, я думаю, вам нужно будет клонировать репо на сервере. После клонирования репо вы можете просто обновить его, чтобы снизить влияние на производительность.