cvsup-fast スクリプト(cvsup-mirror用の cvsup-local もな)

cvsup - twwp

そいでもって、実際の cvsup は、こちらの shellスクリプト を使用する.

/usr/local/etc/cvsup-local/cvsup-fast
/usr/local/etc/cvsup/cvsup-fast
#!/bin/sh
if SERVER=`fastest_cvsup -q -c jp`
then
echo "Running cvsup"
cvsup -L2 -h $SERVER /usr/local/etc/cvsup-local/cvs-supfile
else
echo "There's a problem" 1>&2
exit 1
fi


ちょいと更新した.cvsup のパラメータを追記.

%cat /usr/local/etc/cvsup-local/cvsup-fast 
#!/bin/sh
if SERVER=`fastest_cvsup -q -c jp`
then
echo "Running cvsup"
cvsup -L 2 -r 0 -l /var/run/csup.pid -h $SERVER /usr/local/etc/cvsup-local/cvs-supfile
#cvsup -L2 -h $SERVER /usr/local/etc/cvsup-local/cvs-supfile
else
echo "There's a problem" 1>&2
exit 1
fi

内容は、http://wiki.fdiary.net/BSDmad/?csup を参考にして以下の通り.

  • sup-file は /usr/local/etc/cvsup-local/cvs-supfile
  • ログレベルは2(-L 2 パラメータ)
  • 圧縮無効化(-Z パラメータ)
  • CVS サーバに接続できなかった場合、リトライしない(-r 0 パラメータ)
  • ロックファイルを作成し、多重起動を抑制(-l /var/run/csup.pid パラメータ)


さらに、ローカルにcvsup-mirrorをしているので、ちょい変更した.

%cat /usr/local/etc/cvsup-local/cvsup-local
#!/bin/sh
if SERVER=localhost
then
echo "Running cvsup"
cvsup -L 2 -r 0 -l /var/run/csup.pid -Z -h $SERVER /usr/local/etc/cvsup-local/cvs-supfile
#cvsup -L2 -h $SERVER /usr/local/etc/cvsup-local/cvs-supfile
else
echo "There's a problem" 1>&2
exit 1
fi


ついでにいうと、いままでportsツリーは portsnap を使っていたけども、cvsup から更新するようにしています.

%cat /usr/local/etc/cvsup-local/cvs-supfile
#*default host=cvsup.jp.freebsd.org
*default host=localhost
*default prefix=/usr
*default base=/usr/local/etc/cvsup-local
*default release=cvs tag=RELENG_6_1
*default delete use-rel-suffix
*default compress

src-all

*default tag=.
doc-all
ports-all


そんでもって、http://d.hatena.ne.jp/taizooo/20060601/1149139239 のとおりに、

% portsdb -F

と打って、INDEXファイルの取得にを忘れないこと.


そんでもって、今後の課題なのだ.

  • make.confの設定
  • crontabの設定
    • docの更新について
      • html化もあわせて
    • portsツリーの更新
      • make readme で README.html も生成
  • csupへ置き換え
    • 今後はcsupがシステムの標準ツールになるらしいからな