Takayuki Okazaki's Weblog
ブログ: 岡崎 - Okazaki's blog
20080512 2008年 5月 12日 月曜日
HudsonをMacのデスクトップに
English Translation: (Yahoo!) / (Google)
継続的インテグレーションツールでDuke's Choice Awardにも選ばれたHudsonを久しぶりに使っています。使い方は川口さんによる特集記事が技術評論社のページで読めますので、そちらを参考にしていただくこととして、今回はHudsonにちょっと工夫のお話です。
最近、原稿を書くのに8年ぶりにpLaTeXを使っています。といっても、原稿自体は普通のプレーンテキストなんですが、図表の確認のためにpLaTeXを使ってプレビューしています。プレーンテキストをRubyのスクリプトでTeXのソースにして、TeXでコンパイルして、dvipdfmxでPDFにするという作業。まあ、シェルスクリプトにしてあるので、それらの呼び出しが面倒くさいということもないのですが、原稿のバージョン管理をRCSからSubversionにすることにしたので、ついでにこれらのコンパイルもHudson化してやろうとの魂胆です。
さて、HudsonからはSubversionの更新をポーリングしてもらってシェルスクリプトを起動してもらうだけの設定ですから、とても簡単なんですが、コンパイルが自動化されたことによってターミナルを開く必要がなくなりました。そうすると、わざわざHudsonを起動するがためにターミナルを開くのもおっくうだ、という思考になぜかたどり着きMac用の単独アプリとしてラッピングすることにしました。Mac OS Xには開発ツール(Xcode)を入れると、/Developer/Applications/Java Tools/Jar Bundler.appというJarをラッピングしてMacアプリとしてパッケージングしてくれるツールがありますのでそれを使います。
Making of Hudson.app
その前にアイコンを作ります。hudson.warを展開するとimages/hudson.xcfというGIMP用のイメージファイルが出てきますので、オーバーレイレイヤを取り除いて、あとは背景を透明にしたpngファイルなんかを適当に作ります。次に、Mac用のアイコンを作るのですが、同じく開発ツール(Xcode)に/Developer/Applications/Utilities/Icon Composer.appというのがついてきます。これに画像ファイルをドラッグ&ドロップしてやればアイコンが出来上がります。アイコンの使われ方でいくつかサイズが違うのがありますのでそれぞれに同じ画像をドラッグ&ドロップ。48x48、32x32、16x16の所は元画像に透明属性があれば自動的にマスクを作ってくれます。
Making of Hudson.app
次にJar Bundlerでパッケージングします。Jar Bundlerはhudson.warをそのままではjarファイルだと認識してくれないので、hudson.warをhudson.jarに改名しておいてクラスパスに入れてやります。
Making of Hudson.app
あとはメインのクラス「Main」を設定したり、作ったアイコンを選択したりしてCreate Applicationとやればオッケーです。
Making of Hudson.app
できました。
Making of Hudson.app
Dockに入ったHudson。起動してみるといつものようにアイコンがぴょんぴょんはねながら起動してくれます。ところが、起動が完了しても起動中を示す三角マークが出ません orz
ログをみる限り、起動しているし、8080ポートにつなぐと正常に稼働しています。
Making of Hudson.app
どうやら応答がないと判断されてしまったようです。GUIをたてないとだめなのかなあ。まあ、個人的に実用上困らないのでこのままでいいような気も・・・。強制終了をするときちんとハンドラが動いて、HTTPサーバが停止しているのがコンソールのログで確認できます。
ということで、デスクトップにHudsonさんをおいてみましたが、ちょっと微妙な感じで終わりました。ちゃんと三角マークがでたりするように暇ができたら改造してみます。


OpenSolaris 2008.05をParallels on Macに入れてみた
English Translation: (Yahoo!) / (Google)
JavaOneでリリースが発表されたOpenSolaris 2008.05ですが、VirtualBoxやVMware上にインストールされた例はすでにたくさんあるので、手元にあるParallels for Macに入れてみました。
OpenSolaris 2008.05 on Parallels on Mac OS X
UbuntuのようにLiveCDでブートします(おそらく、しばらくはOpenSolarisの説明をするとき「Ubuntuのように」がよく利用されるようになるでしょう)。ロゴがかっこいいですね〜。背景も、NetBeans壁紙みたいに幻想的な感じです。
OpenSolaris 2008.05 on Parallels on Mac OS X
ブートすると最初にキーボードのタイプを聞いてきます。贅沢を言えばもう少しここはグラフィカルになってほしいですね。UbuntuだとグラフィカルUIがあって、しかもタイピングを試せます。とりあえず手元のキーボードはUSキーボードなのでそのまま続行します。一般的な日本語キーボードを使われている方は18番ですね。17番と紛らわしいですが、17番はSunのType 6キーボードのことです。
OpenSolaris 2008.05 on Parallels on Mac OS X
次はデスクトップで使用する言語です。これもUbuntuだとGUIで選べて、しかも現地語で表示されます。次回以降のリリースに期待ですね。今回は日本語を使いたいので7を選択します。
OpenSolaris 2008.05 on Parallels on Mac OS X
この二つの選択をすると、あとはX11が起動し、グラフィカルインタフェースで作業ができます。
OpenSolaris 2008.05 on Parallels on Mac OS X
左側にアイコンがいくつか並んでいて、OpenSolarisをインストールするというのがあるので、これをクリックしてインストールを始めます。ここはSolaris 10を手元のLaptop PCやデスクトップPCにインストールされたことのある方であれば、劇的な違いを感じられるところだと思います。
OpenSolaris 2008.05 on Parallels on Mac OS X
ようこそ。
OpenSolaris 2008.05 on Parallels on Mac OS X
使用するディスクのパーティションを決めます。
OpenSolaris 2008.05 on Parallels on Mac OS X
次にタイムゾーンを設定します。地図から選べるのでずいぶん楽ですね。
OpenSolaris 2008.05 on Parallels on Mac OS X
次に使用するロケールを設定します。ここはコマンドラインで聞いてきたやつを再利用してほしいところですね(どちらかというと、コマンドラインで聞いてくれるのがなくなればそれでいいですが)。
OpenSolaris 2008.05 on Parallels on Mac OS X
次は管理者(root)のパスワードと、一般ユーザアカウントの作成です。
OpenSolaris 2008.05 on Parallels on Mac OS X
最後に設定の確認です。問題なければインストールを始めましょう。
OpenSolaris 2008.05 on Parallels on Mac OS X
このようなプログレスバーがでてインストールが進みます。すいません、途中で目を離したのでどれぐらいで終わったかわかりませんでした・・・。
OpenSolaris 2008.05 on Parallels on Mac OS X
完了したらリブートします。
OpenSolaris 2008.05 on Parallels on Mac OS X
リブートしたらログイン画面が出ます。はい、無事にインストールできました。昔と比べてこういうのって、全然手こずらなくなりましたよね。いいことなんですが少し寂しい気も・・。


過去の記事
« 5月 2008 »
    
3
6
7
8
9
10
11
13
15
16
20
21
29
31
       
今日
Click me to subscribe このブログを購読(RSS)
検索

このブログ著者について
ソフトウエア・インフラストラクチャー・ソリューション本部のソリューション・アーキテクトでした(2008年8月退職)。 本業はSOAソリューションならびにSun Java CAPSによるソリューションのプリセールスをお手伝いするエンジニア、とJavaエバンジェリストグループに参加してセミナーに行ったり、趣味のプログラミング・ネタをこのブログで紹介したりしていました。現在は、ふらふらとwatermint.orgで活動中〜。
リンク
 
SunホットトピックPodcast - SunホットトピックPodcast
 


 

Today's Page Hits: 472