Commit Ping SITEINFO

What's Commit Ping

CodeReposにcommitされると、このページの Commit Ping Servers 以下にかかれているURLに対してコミットの情報がPOSTされる仕組みです。

yamlというパラメータ名でYAML形式に変換されたコミットデータがPOSTされます。

Example DATA

---
author: yappo
comment: '?\227?\131?\170?\227?\131?\147?\227?\130?\184?\227?\131?\167?\227?\131?\179?\231?\149?\170?\229?\143?\183?\227?\130?\130yaml?\227?\129?\171?\229?\144?\171?\227?\130?\129?\227?\129?\159'
date: 2008-02-08 14:59:11 +0900
files:
  - path: websites/coderepos.org/scripts/commit-ping-hook.pl
    status: U
rev: 6373

Scripts

この仕組みはPerlのTheSchwartzを使っています。 commit-ping-hook.pl をSubversionサーバのhooks/post-commitの中で

/foo/bar/commit-ping-hook.pl /foo/svn/repos dbi:mysql:tablesname dbuser dbpass

のように記述しておき commit-ping-worker.pl

$ commit-ping-worker.pl dbi:mysql:tablesname dbuser dbpass

として起動します。

Server側の実装サンプルも置いてあります。

Commit Ping Servers

  1. tech.yappo.jp
  2. CodeRepos FeedMaker
  3. Perl-users.jp
  4. emacs-users.jp
  5. vim-users.jp
  6. xslt-users.jp
  7. perl-mongers.org