いつも Dropbox サーバーとFreeBSDサーバーの間のディレクトリ同期のために使わせてもらっている dropbox-api コマンドの ports によるアップデートが、ようやく来ました。
# portversion -vL= bsdpan-App-dropboxapi-1.12 # [held] error - origin not recorded; run pkgdb -F bsdpan-WebService-Dropbox-1.17 < [held] needs updating (port has 1.18) dropbox-api-command-1.05,1 < needs updating (port has 1.13,1) p5-WebService-Dropbox-1.09 < [held] needs updating (port has 1.18)
以前、作者の方からいただいた連絡では、今年1月に更新処理済みということだったのですが、なんらかの 理由でports サーバーへの反映が遅れていて、8月になってようやく ports から更新出来るようになったようです。バージョンも更に 0.01 アップしています。私の場合 ports を待ちきれなくて、作者のページからダウンロードして手動インストールしていたため、 コマンド利用上の不都合はありませんでしたが、今後 portupgrade コマンドで更新出来るようになったというのはうれしいことです。
とはいえ、更新したら動作不具合が発生するコマンドは先日の rtmpdump コマンドのトラブルじゃありませんが、しばしば発生するもので、やっぱり更新手順を記録に残しておくことにします。
まずは、pkg_delete を使って、手動インストールしたコマンドを抜きます。
# pkg_delete bsdpan-App-dropboxapi-1.12 bsdpan-WebService-Dropbox-1.17
次に、portupgrade コマンドで、 ports から dropbox-api と WebService for Dropbox を更新しました。
# portupgrade dropbox-api-command-1.05,1 p5-WebService-Dropbox-1.09
無事に更新が終わり、コマンドヘルプを出してみたら以下のようになりました。
> dropbox-api help sync Name dropbox-api-sync - sync directory SYNOPSIS dropbox-api sync dropbox:<source_dir> <target_dir> [options] dropbox-api sync <source_dir> dropbox:<target_dir> [options] Example dropbox-api sync dropbox:/Public/product/dropbox-api/ ~/work/dropbox-api/ dropbox-api sync ~/work/dropbox-api/ dropbox:/Public/product/dropbox-api/ -vdn dropbox-api sync ~/work/dropbox-api/ dropbox:/Public/product/dropbox-api/ -d Options -v increase verbosity -n show what would have been transferred (dry-run) -d delete files that don't exist on sender
無事に更新出来たようです。
半年以上掛かりましたが、懸案事項解決。めでたし、めでたし。
そういえば、半年前に dropbox-api コマンドが異常終了する(ネットワーク系コマンドだから仕方ない)場合の対策としてリジューム機能を組み込む予定という話を聞いていましたので、それがどうなったのかと久しぶりに作者の dropbox-api README ページをアクセスしてみました。
dropbox-api コマンド自体への組み込みではありませんでしたが、Tips 項目に「retry」スクリプトが登録されていました。