Plagger モドキ Deploy ツール

空前の deploy tool ブームの中いかがお過ごしでしょうか。

http://blog.nomadscafe.jp/archives/000704.html

http://d.hatena.ne.jp/tokuhirom/20060929/1159495175

うちもまだ実運用には入れてないですが、作ってるとこだったりします。
以下のような Plagger マルパクリな YAML で設定します。

プラグインは
  • prepare - 下準備 svn co とか
  • process - サーバの台数分だけループで呼ばれる。rsync とか
  • finalize - 後片付けとかログ出力とか
の3つのフェーズで処理を行います。
運用ツールを作るときに Plagger みたいにプラグイン機構にするってのはいいですね。
後から機能追加するのも楽だし、プラグイン毎にテスト出来るので。
あと、内部で使ってる Net::SSH::Perl がステキです。インストールめんどいですけど。


 global:
   user: hoge
   repository: http://svn.example.com/proj/trunk
   deploy_to: /path/to/proj
   work_dir: /path/to/proj
   svn: /usr/local/bin/svn
   roles:
     web:
       - XXX.XXX.XXX.XXX
     app: 
       - XXX.XXX.XXX.XXX
 tasks:
   setup:
     target: app
     plugins: 
       - module: RemoteExec
         config:
           command: mkdir -m 0755 -p /path/to/cache_dir
   deploy:
     target: app
     plugins:
        - module: SVN::Checkout
        - module: RemoteExec
          config:
            user: root
            command: /usr/local/modperl/bin/modperlctl stop
        - module: Deploy
          config:
        - module: RemoteExec
          config:
            user: root
            command: /usr/local/modperl/bin/modperlctl start
        - module: Notify::Email
          config:
              to: developers@example.com

はてブのコメントをlivedoorクリップに表示

Greasemonkey を殆ど書いたことが無かったような気がするので書いてみた。

http://blog.shebang.jp/src/hateb_on_ldc.user.js

何をするやつかというとlivedoorクリップ の詳細ページのコメント一覧にはてブの同一URLに対するコメントを追加します。
以下のような感じで id:はてなID で通常のlivedoorクリップと同じ見た目で並びます。
ちなみに各種リンク先ははてブになってます。
e0b93f1c.png

別になんとかトラクターみたいなの使えばいいんですけどね。

Perlのワードリスト

qw() だったけど、DBIC を使うようになってから qw// も気になってきた。。

まるごとPerl

まるごとPerl出ましたね。
livedoor Readerの記事を一部書かせてもらってます。
Perlの本なのにma.la氏によるJSの記事の方が多いんですが。
とりあえず、Xango使ってるって事を言いたかったわけです。Xangoカワユス。
あと、DBのカラム名にRailsインスパイアで created_on とかを使ってるってのがポイントです。

まだ途中までしか読んでないんですが、Jiftyスゲス。
とりあえずインストールしてみた、Mason久しぶりだな。。


まるごとPerl! Vol.1

トップページリニューアルの件

見た目もだけど、実は技術的な変化も結構大きいです。

- Apache1.3
- mod_perl
- Template-Toolkit
- memcached

から

- Apache2.0
- Apache module
- ClearSilver
- memcached

てな感じです。

トップページってそんなに頻繁に変更するもんでも無いんでメンテナンス性とかをあまり考えずに C でゴリッと書きました。
ちなみに、もともとは mod_perl ですが Sledge は使ってませんでした。
トップページ一枚表示だけに Sledge はオーバースペックという事で生のハンドラ書いてました。

Profile
  • ライブドアブログ