2010-02-20 16:46 | tag: submin, centos
Subminとは、Subversionサーバの管理をwebベースで行うためのツールです。リポジトリの作成、ユーザーの作成、リポジトリおよびリポジトリ内のパスに対するアクセス権限の設定などを行うことができます。
Subminを利用することにより、これまでコマンドライン上で行わなければならなかった作業をGUI画面で行えるようになりますので、Subversionサーバの運用の手間を軽減したり、リポジトリの管理をサーバ管理者以外の人に委譲したりすることができます。
Subminのインストールおよび利用にはPythonが必要ですが、CentOSに含まれるPython 2.4.3ではインストーラ実行中にエラーが発生し処理が中断してしまいます。Python 2.xの最新版を自分でインストールする必要があります。
Python 2.4.3でインストーラを実行したときのエラー:
File "install.py", line 16 class Main(): ^ SyntaxError: invalid syntax
下記URLからPython 2.xの最新版をダウンロードし、インストールを行います。
以下はPython 2.4のソースコードをダウンロードし、/usr/local以下にインストールした際に実行したコマンドです。
# wget http://www.python.org/ftp/python/2.6.4/Python-2.6.4.tgz # tar zxvf Python-2.6.4.tgz # ./configure # make # make install
Python 2.6.4がインストールされたことを確認します。
# /usr/local/bin/python --version Python 2.6.4
# yum install httpd mod_dav_svn
下記URLからSubminの最新版のソースコードをダウンロードし、インストールを行います。2010年2月21日時点での最新版は1.2.9です。
ダウンロードしたtarballを展開し、インストーラを実行してください。
以下のコマンド例はSubmin 1.2.9を取得し/usr/local以下にインストールした際のコマンド実行例です。
# wget http://supermind.nl/submin/current/submin-1.2.9.tar.gz # tar zxvf submin-1.2.9.tar.gz # cd submin-1.2.9 # /usr/local/bin/python ./bin/install.py /usr/local
まず、Subminの設定ファイルをsubmin-adminコマンドで作成します。
以下のようにsubminに対するコマンド「create」、作成する環境名(ファイル名の一部として使われます。例:default)を引数に指定してsubmin-adminコマンドを実行します。
# /usr/local/bin/python /usr/local/bin/submin-admin create default
生成された設定ファイルの一つ、/etc/submin/default.confに設定項目trac_base_urlを追加します。Submin 1.2.9では、Tracとの連携を行わない場合もtrac_base_urlを設定しておかないとリポジトリ作成時にエラーが発生しますので、ダミーの値を設定しておきます。
[www] base_url = /submin svn_base_url = /svn trac_base_url = /trac
生成されたApache用の設定ファイルを/etc/httpd/conf.d/以下にコピーし、Apache起動時に読み込まれるようにします。
# cp /etc/submin/default-apache-cgi.conf /etc/httpd/conf.d/
Apacheを再起動します。
# /etc/init.d/httpd configtest # /etc/init.d/httpd restart
webブラウザでSubminをインストールしたwebサーバ上の/subminにアクセスします。インストール・設定ができていれば、以下のようなログイン画面が表示されます。
デフォルトのユーザー名admin、パスワードadminでログインできます。
ログインすると次のような画面が表示されます。この画面でリポジトリの作成、ユーザーやグループの作成、権限の設定を行うことができます。