Script Repository Software
Чтобы помочь нашим клиентам и облегчить нашу работу, наша служба поддержки создает и поддерживает несколько небольших (часто < 50 строк) проприетарных скриптов на нескольких разных языках для упрощения обычных задач. В настоящее время они хранятся в нескольких местах, от внутренней вики до файлов.txt на собственных жестких дисках людей, на внутренних серверах и т. Д., И становится трудно отследить последнюю версию каждого из них.
На самом деле, их нужно хранить отдельно и на самом деле они недостаточно связаны друг с другом, чтобы их можно было поместить в общий репозиторий источника, но они не настолько значительны, чтобы оправдать создание отдельного репозитория RCS для каждого.
Известно ли вам о каком-либо программном обеспечении или методах, которые подойдут для управления большим количеством этих сценариев? В идеале это обеспечит следующие функции:
- контроль версий
- веб-доступ (скачать один скрипт по HTTP)
- аутентификация
- шифрование
Если для этого не существует стандартного программного обеспечения или стандартной практики, я думаю, это просто приведет к созданию чего-то простого.
3 ответа
Я позволю себе не согласиться с вашей точкой зрения, что сценарии недостаточно важны для контроля версий. Они часто очень важны (например, сценарии входа в систему, отображающие сетевые диски) и, как вы говорите, часто просто живут на сервере без какой-либо истории версий, поэтому, если вы все испортите, вы облажались.
Мы храним все наши скрипты в хранилище Subversion, и это очень хорошо работает для нас. Преимущества довольно очевидны.
- Это официальный источник любого имеющегося у нас сценария. Нет сомнений, что кто-то сделал обновление на прошлой неделе, но не поделился этим изменением со всеми.
- Изменения в сценариях отслеживаются и могут быть отменены, если они имеют грушевидную форму. Любой нарушающий сценарий может быть наказан.
Системы контроля версий довольно легки, и вы можете либо использовать другую систему (если у вас есть собственные разработчики, создать репозиторий на их сервере) или создать виртуальную машину с легким дистрибутивом Linux, если вам это нужно.
Кроме того, недавно в блоге Server Fault была опубликована статья об этом. Проверьте это.
Поскольку вы хотите отслеживать версию, естественно использовать систему контроля версий - есть несколько - svn, git и т. д.
для доступа в Интернет вам может потребоваться установить дополнительное программное обеспечение, но это можно сделать очень легко (для svn вы можете установить сервер с поддержкой ssl, git использует ssh)
В подобных ситуациях в прошлом я создал один репозиторий в $scm_of_choice
с подкаталогами для каждой связанной группы (admin_scripts
, sql_scripts
, и т.д).
С другой стороны, в зависимости от того, сколько скриптов вы говорите, вы можете создать один репозиторий на проблемный домен.