Показаны сообщения с ярлыком subversion. Показать все сообщения
Показаны сообщения с ярлыком subversion. Показать все сообщения

понедельник, 24 июня 2013 г.

Установка сервера Subversion в CentOS 6.4 используя протокол доступа WebDAV

Subversion - популярная система контроля версий исходного кода, в данной заметке я опишу, как установить subversion на сервер CentOS с доступом через WebDAV и разграничением доступа разных пользователей, к разным проектам.

Итак, выполняем последовательно:

1. Устанавливаем Subversion и Apache

yum install -y subversion mod_dav_svn

2. Модифицируем файл /etc/httpd/conf.d/subversion.conf добавляем следующую секцию:

<Location /svn>

        DAV svn
        SVNParentPath /var/www/svn

        AuthType Basic
        AuthName "Subversion repositories"
        AuthUserFile /etc/svn-auth-users
        Require valid-user

        SSLRequireSSL
        AuthzSVNAccessFile /etc/subversion/authz

</Location>

Немного пояснения:

воскресенье, 23 июня 2013 г.

Настройка post-commit в Subversion для отправки почтовых сообщений в CentOS 6.4

Я надеюсь, что вы уже настроили SVN репозиторий с поддержкой WebDAV... Если нет, то самое время сделать это сейчас.

0. Подразумеваю, что настраивать будем для репозитория javacation, который находится в каталоге /var/www/svn/javacation

1. Забираем уже готовые скрипты, которые любезно предоставлены Apache Foundation
cd /var/www/svn/javacation
sudo svn co http://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/

2. Скопируем файл конфигурации в каталог conf нашего репозитория (только для того, чтобы файлы конфигурации находились в одном месте, на самом деле его фактическое расположение может быть другое и даже более того, если вы используете один и тотже файл конфигурации для разных проектов, то возможно лучшим местом для этого файла окажется путь /etc/subversion)
sudo cp hook-scripts/mailer/mailer.conf.example ./conf/mailer.conf

3. Отредактируйте файл конфигурации mailer.conf

Снимите комментарий с параметра mail_command, в случае, если у вас настроен sendmail

mail_command = /usr/sbin/sendmail

или корректно настройте SMTP (smtp_hostname, smtp_username, smtp_password), в случае, если локальный MTA не настроен

Отредактируйте поля from_addr, to_addr и commit_subject_prefix:

from_addr = svn@javacation.ru
to_addr = ags@nospam.ru
commit_subject_prefix = [svn-%(repos_basename)s]

4. На этом этапе вы можете протестировать работоспособность скрипта post-commit например такой командой (где 10 это номер ревизии):

/var/www/svn/javacation/hook-scripts/mailer/mailer.py \
    commit "/var/www/svn/javacation/" "10" /var/www/svn/javacation/conf/mailer.conf