ページ更新: 2007-10-24 (水) (4070日前)

関連: ソフト/Continuous Integration#CruiseControl, ../情報源#JavaWorld-2006-06, ../情報源#vmTrac, ソフト/VMware, Linux/Knoppix, Linux/Debian

(2006-07-11 新規作成)

Buildix - CruiseControl in a box.

Buildix 2.0 は Ubuntu 用の、TracやCruiseControlを含む、オールインワンパッケージ。 Buildix (=Tracなど)、CruiseControl、Mingle を Ubuntuのパッケージとして提供している。( http://buildix.thoughtworks.com/repos/debian/ )

Buildix 1.1 (2006-07-11) は Knoppix (1CD Linuxの一種) に CruiseControl, Subversion, Trac, Ant (+ Ant-Contrib, Checkstyle, JUnit, Emma), Tomcat, Apache を組み込んだもの。LiveCD(iso)版とVMware版が提供されており、以下のソフトウェアを使用している:

  • cruisecontrol-2.5-2
  • trac-0.9.3-1
  • apache2-2.0.55-4
  • tomcat5-5.0.30-9
  • ant-1.6.5-4
  • sun-j2re1.5-1.5.0+update06 (J2RE 1.5.0_06)
  • sun-j2sdk1.5-1.5.0+update06 (JDK 1.5.0_06)
  • junit-3.8.1.1-6

目次

[編集]

情報源 #

[編集]

buildix.thoughtworks.com #

Buildix 1.xの入手方法はダウンロード (http)、あるいはBitTorrentにて。

  • buildx-1.1.iso は 386.98MB
  • buildx-vmware-1.1.zip は 372.46MB、展開後は 1.07GB。
  • 2006-07-11にBitTorrent (BitComet) で入手したところ、所要時間は1〜3時間だった。
    • 所要時間短縮のために、ダウンロードの途中で BitComent のタスクに CentOS 4.3 DVD, CentOS 4.3 ServerCD のアップロードを追加したので、 単独で入手した場合の所要時間がわからない。
[編集]

#

[編集]

Buildix 2.0 (2007-10-20) #

Ubuntsu用パッケージ, Live CD, VMWare Image を公開。

Buildix 2.0 released

  • Download
    • Live CD, VMware Image
    • VMware ImageはWorkstation 5のフォーマット。

../News#Buildix-2_0

[編集]

VMWare Image のメモ (2007-10-20) #

手元のVMware Workstation 6.0.2, VMware Player 2.0.2 (ホストOSはWindows XP Professinal SP2) で試した。

1. VMware 5形式。よって、VMware Workstation 5以上、VMware Player 1以上なら使えると思う。

2. OSはUbuntu 7.04。たぶん Ubuntu 7.04 Server だと思う。

3. CD-ROM(ISOイメージ)が割り付けられているけど、このISOイメージは存在しない。特に問題はないけど、警告が出るのでVMware側で削除するか無効にしておくと良い。

4. 起動するとXではなく、コンソールが起動する。これは Buildix 1.0と同じ。

5. ユーザ名、パスワードは「buidix」。どこにもかかれていないようだけど。

6. NICはブリッジにしてあるが、デバイスが eth1 に割り付けられた。 eth1の設定はなされていないので、以下のようにIPアドレス(や、必要ならネットマスクやゲートウェイも)を設定する必要がある。

$ sudo ifconfig eth1 inet IPアドレス

設定後に、HTTPとSSHでアクセスできた。

このVMをずっと使うなら、/etc/network/interfaces に設定を書き込んでおくこと。

  • 2007-10-24 追記 /etc/udev/rules.d/z25_persistent-net.rules かな?確かめてないけど。

7. メモリの消費量。VMwareへ512MBを割り当てて起動したとき:

buildix@buildix2:~$ free -m
             total       used       free     shared    buffers     cached
Mem:           503        494          9          0          6         97
-/+ buffers/cache:        389        113
Swap:          391          0        391

8. Tracのバージョンは 0.10.3。

buildix@buildix2:~$ trac-admin about

Trac Admin Console 0.10.3
=================================================================

 Copyright (C) 2003-2006 Edgewall Software
 All rights reserved.
[編集]

Live CDのメモ (2007-10-20) #

VMware版との違いは、1. Xが起動すること くらい。

[編集]

Ubuntuパッケージのメモ (2007-10-20) #

Buildix 2.0 betaを入れていて、Synapticでアップデートしようとしたら失敗し、 パッケージ管理の整合が取れなくなった。

詳細は忘れたが、以下のコマンドを使ってパッケージ管理の整合性を取ってから、 buildixとcruisecontrolを削除した。

$ sudo apt-get install -f
$ sudo apt-get autoremove
$ sudo aptitude autoclean 

さらに、以下のようにして残っている設定ファイルを検索し、設定ファイルを全て消去した

$ dpkg -l | grep ^r
(略)
$ sudo dpkg --purge cruisecontrol apache2.2-common \
libapache2-mod-fastcgi libapache2-mod-jk libapache2-svn libapr1 libaprutil1 \
libjaxp1.3-java-gcj libmysqlclient15off libneon26 libpcre3 libpq5 libsvn1 \
libxerces2-java-gcj mingle mysql-common postgresql-8.2 \
postgresql-client-common postgresql-common python-subversion \
subversion sun-java5-demo sun-java5-jdk

改めて、Buildix、CruiseControl、Mingleを入れる。

$ sudo apt-get install buildix cruisecontrol mingle
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
Reading state information... 完了
以下の特別パッケージがインストールされます:
  ant ant-optional apache2 apache2-mpm-worker apache2-utils apache2.2-common
  libapache2-mod-fastcgi libapache2-mod-jk libapache2-svn libapr1 libaprutil1
  libjaxp1.3-java libneon26 libpcre3 libpq5 libsvn1 libxerces2-java postgresql-8.2
  postgresql-client-8.2 postgresql-client-common postgresql-common python-cheetah
  python-clearsilver python-flup python-pysqlite2 python-subversion subversion
  sun-java5-demo sun-java5-jdk trac
提案パッケージ:
  ant-doc libbsf-java liboro-java libxalan2-java junit liblog4j1.2-java libregexp-java
  jython antlr libbcel-java libcommons-logging-java libjdepend-java libgnumail-java
  libxml-commons-resolver1.1-java libcommons-net-java libjsch-java javacc tomcat4 tomcat5
  tomcat5.5 libapache-mod-jk-doc db4.4-util libxerces2-java-doc oidentd ident-server
  postgresql-doc-8.2 python-pysqlite2-dbg python-subversion-dbg subversion-tools
  sun-java5-doc sun-java5-source enscript python-docutils libapache2-mod-python
推奨パッケージ:
  jikes java-compiler libjaxp1.3-java-gcj libxerces2-java-gcj python-webpy
  python-setuptools
以下のパッケージが新たにインストールされます:
  ant ant-optional apache2 apache2-mpm-worker apache2-utils apache2.2-common buildix
  cruisecontrol libapache2-mod-fastcgi libapache2-mod-jk libapache2-svn libapr1
  libaprutil1 libjaxp1.3-java libneon26 libpcre3 libpq5 libsvn1 libxerces2-java mingle
  postgresql-8.2 postgresql-client-8.2 postgresql-client-common postgresql-common
  python-cheetah python-clearsilver python-flup python-pysqlite2 python-subversion
  subversion sun-java5-demo sun-java5-jdk trac
アップグレード: 0 個、新規インストール: 33 個、削除: 0 個、保留: 0 個。
82.7MB 中 0B のアーカイブを取得する必要があります。
展開後に追加で 79.5MB のディスク容量が消費されます。
続行しますか [Y/n]? y
 : (略)
[編集]

Buildix 2.0 beta (2007-09-21) #

Buildix 2.0 は Ubuntu用のパッケージ(Ubuntu 7.04を対象) にしたとのこと。

そこで、Ubuntu 7.04 Desktop 日本語ローカライズ版VMware用仮想マシン (日本語ローカライズ版) を VMware Workstation 6.0.1 で動かして、そこにインストールしてみた。

最初に、VMに割り当てるメモリを600〜700MB程度まで増加させる(日本語ローカライズ版は256MBに設定されているが、 Buildixを稼働させると500MB消費するので)。

次にUbuntuを起動して、ダイアログに従って初期設定をした後、「システム」→「アップデート・マネージャ」でアップデートを行っておく。

Buildix 2.0 Beta の 'How do I get it?' に従ってBuildix 2.0 beta をインストールする。

$ sudo aptitude install ng-cjk openssh-server  ★エディタng(Nihongo GNU Micro Emacs)とsshdをインストール。
$ sudo ng /etc/apt/sources.list
$ wget http://buildix.thoughtworks.com/repos/debian/buildix-key.gpg
$ sudo apt-key add buildix-key.gpg
$ sudo aptitude update
$ sudo aptitude install buildix
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
Reading state information... 完了
拡張状態情報を読み込んでいます
パッケージの状態を初期化しています... 完了
タグのデータベースを構築しています... 完了
以下の新規パッケージが自動的にインストールされます:
  ant ant-optional apache2 apache2-mpm-worker apache2-utils apache2.2-common cruisecontrol 
  gsfonts gsfonts-x11 java-common libapache2-mod-fastcgi libapache2-mod-jk libapache2-svn 
  libapr1 libaprutil1 libjaxp1.3-java libjaxp1.3-java-gcj libltdl3 libmysqlclient15off 
  libneon26 libpcre3 libpq5 libstdc++5 libsvn1 libxerces2-java libxerces2-java-gcj libxp6 
  mingle mysql-common odbcinst1debian1 postgresql-8.2 postgresql-client-8.2 
  postgresql-client-common postgresql-common python-cheetah python-clearsilver python-flup 
  python-mysqldb python-pysqlite2 python-setuptools python-subversion python-webpy subversion 
  sun-java5-bin sun-java5-demo sun-java5-jdk sun-java5-jre trac unixodbc
以下の新規パッケージがインストールされます:
  ant ant-optional apache2 apache2-mpm-worker apache2-utils apache2.2-common buildix 
  cruisecontrol gsfonts gsfonts-x11 java-common libapache2-mod-fastcgi libapache2-mod-jk 
  libapache2-svn libapr1 libaprutil1 libjaxp1.3-java libjaxp1.3-java-gcj libltdl3 
  libmysqlclient15off libneon26 libpcre3 libpq5 libstdc++5 libsvn1 libxerces2-java 
  libxerces2-java-gcj libxp6 mingle mysql-common odbcinst1debian1 postgresql-8.2 
  postgresql-client-8.2 postgresql-client-common postgresql-common python-cheetah 
  python-clearsilver python-flup python-mysqldb python-pysqlite2 python-setuptools 
  python-subversion python-webpy subversion sun-java5-bin  sun-java5-demo sun-java5-jdk 
  sun-java5-jre trac unixodbc
0 個のパッケージを更新、 50 個を新たにインストール、 0 個を削除予定、0 個が更新されていない。
119MB のアーカイブを取得する必要があります。 展開後に 184MB のディスクスペースが新たに消費されます。
続けますか? [Y/n/?]
 :
取得:4 http://buildix.thoughtworks.com buildix/main cruisecontrol 2.7.1-1 [34.2MB]
 : 
取得:49 http://buildix.thoughtworks.com buildix/main buildix 2.0-34 [651kB]
取得:50 http://buildix.thoughtworks.com buildix/main mingle 1.0-75 [16.7MB]
 :
(以後、java-sun-common、mingleパッケージの設定画面が表示される)
 :
cruisecontrol (2.7.1-1) を設定しています ...
CruiseControl will NOT work with gcj
To switch your default JVM to Sun

Run the command: update-java-alternatives -s java-1.5.0-sun

buildix (2.0-34) を設定しています ...
Site buildix installed; run /etc/init.d/apache2 reload to enable.
This module is already enabled!
This module is already enabled!
This module is already enabled!
Module rewrite installed; run /etc/init.d/apache2 force-reload to enable.
Site default disabled; run /etc/init.d/apache2 reload to fully disable.
Cruise Control not running...
Starting Cruise Control...started.
 * Forcing reload of web server (apache2)...
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
   ...done.

mingle (1.0-75) を設定しています ...
 * Starting Mingle server...
 * Creating Mingle database...
   ...done.
testing JVM in /usr ...
Starting MingleServer
   ...done.
nohup: appending output to `nohup.out'

$

インストールされたソフトウェアのバージョンは:

$ tracd --version
tracd 0.10.3

$ python -V
Python 2.5.1

$ svn --version
svn, バージョン 1.4.3 (r23084)
   コンパイル日時: Mar 28 2007, 22:48:32

Subversionリポジトリは /var/svn に、TracEnvは /var/trac に作られるようだ。

Webブラウザにてlocalhostにアクセスすると、次の画面が表示される:

buildix-2.0-beta-01.png

Mingleの設定画面 (Please complete the instllation here をクリック):

buildix-2.0-beta-02.png

[編集]

buildix-vmware-1.1.zip + VMware (2006-07-11) #

VMware-player-1.0.1-19317.exe で実行(起動)できた。

VMware Workstation 4.5.3 build-19414 では、起動できない。以下のエラーメッセージが表示される。

buildix-vm-vmware4.5.3.png

[編集]

起動画面 (2006-07-11) #

(buildix-1.1.iso を使用、VMware Workstation 4.5.3 build-19414 でISOからブート)

[編集]

boot prompt #

buildix-01.png

[編集]

boot options [F2] #

boot prompt で[F2]を押したとき

buildix-02.png

[編集]

boot options [F3] #

boot prompt で[F3]を押したとき

buildix-03.png

[編集]

login プロンプト #

起動完了。

buildix-04.png

  • Linux kernelは2.6.12
    • dpkgで調べたところ、パッケージ名は kernel-image-2.6.12-10.00.Custom
  • Knoppix 4.0.2 2005-09-12を元にしている (起動画面、/etc/knoppix-version に記載あり)
[編集]

Web画面 (2006-07-12) #

ブラウザから

[編集]

/ #

buildix-web-01.png

[編集]

/ --Buildix Documentation-> /projects/docs/wiki/DistDocs #

buildix-web-DistDocs.png

[編集]

/ --CruiseControl Status Page-> /cruisecontrol/ #

buildix-web-cruisecontrol.png

[編集]

/ --User Manager-> /usermanager #

buildix-web-usermanager.png

buildix-web-usermanager-Subversion.png

[編集]

/ --Sample Project-> /projects/sample #

buildix-web-sample.png

[編集]

/ --CruiseControl-> /projects/sample/cruisecontrol #

buildix-web-sample-cruisecontrol.png