dotcloud いいね!jenkins 編

2012/05/11 更新: こっちの方が簡単

プライベートなコードは github, bitbucket などなどのオンライン VCS にホスティングしてますが、CI もホスティングできないかなーと。そこで dotcloud ですよ!しばらく招待待ちでしたけど、今は普通に signup できるようになってます (beta から cli が結構変わってる...) 。

cli のセットアップとかは本家ドキュメントに載ってるし、いろんなブログに載ってます。ただファイル転送が rsync ベースなので win ユーザは cygwin いれたりちょっとめんどい。speier さんが win 用 cli のインストーラを github に公開されてる (多謝) ので使うといいと思います。でも動かないので、パッチを当ててコンパイルしたのを dropbox 上においてます。speier さんのやつをインストール後、dotcloud.exe を入れ替えてください。 マージしていただきました。ありがとうございます。

dotcloud の java サーブレットコンテナは jetty です。jenkins を jetty にデプロイする場合は JENKINS_HOME を設定しないと動きませぬ (参考)。あたりまえですが、dotcloud の /etc/jetty/jetty.xml の書き換えなんてできません。ここをみて、なんとかホームディレクトリを変更しようと web.xml とか書き換えてみたんですけど、 dotcloud 上 (jetty 上?) じゃ動きませんでした。。。なので、jenkins が dotcloud で動作するよう fork しました。/home/dotcloud ってディレクトリがあったら /home/dotcloud/jetty/.jenkins ってのを JENKINS_HOME にするようにしただけです。いちおうここで動かしています (ログインが必要ですw)。war は同じく dropbox 上においてますので、使いたい方はぜひ。

インストール方法

  1. プロジェクトディレクトリの作成
    mkdir <dotjenkins>
    
  2. プロジェクトディレクトリに jenkins.war を入れる

    http://<dotjenkins>.dotcloud.com/jenkins ではなく http://<dotjenkins>.dotcloud.com/ でアクセスできるようにしたい場合は ROOT.jar に名前を変えておく (参考)。

  3. dotcloud プロジェクトの作成
    dotcloud create <dotjenkins>
    
  4. dotcloud.yml (環境設定ファイル) の編集
    www:
      type: java
    
  5. デプロイ
    dotcloud push <dotjenkins> <./path/to/project_dir>
    
  6. JENKINS_HOME ディレクトリの作成
    dotcloud run <dotjenkins>.www -- mkdir jetty
    

これで CI もホスティングできました。プラグインとかいじれば bitbucket や github ともスムーズに連携できます。これで幸せプライベートコーディングができますw

コメント

  1. You Shimabukuro2011/09/09 5:20:00

    参考にさせて頂きました、ありがとうございます。
    ソースコード修正以外の解決策として WEB-INF 直下に workspace ディレクトリを作成する事でも同様の問題を解決できました。
    バージョンは1.4.29です。

    返信削除

コメントを投稿

このブログの人気の投稿

Python から Win32 API 経由で印刷する

Disqus のスケール - Django 編

Disqus のスケール - Django で月間80億PVを処理する