kamakiri upgrade

使い方

kamakiri upgrade

引数もフラグもありません。認証情報も、紐付いたプロジェクトも必要なく、APIとは一切やりとりしません。そのため、サーバーがこのバージョンを古すぎるとして拒否している間も使えます。

$ kamakiri upgrade
Checking for the latest release.
You are on v0.3.0, the latest release.
$ kamakiri upgrade
最新リリースを確認しています。
現在のバージョン v0.3.0 は最新リリースです。

新しいリリースがあると、このプラットフォーム向けのバイナリを、実行中のバイナリと同じディレクトリにダウンロードし、リリースとともに公開されているチェックサムと照合したうえで、最後に実行中のバイナリを置き換えます。次に実行する kamakiri は新しいほうです。

失敗したとき

チェックサムが一致しないとき、このプラットフォーム向けの使えるチェックサムがリリースにないとき、転送が途中で失敗したとき、インストール先のディレクトリに書き込めないとき、最新のリリースを特定できないときは、いずれも実行中のバイナリをそのまま残します。どれにあたるかはエラーに表示されます。

ダウンロード中に Ctrl-C を押した場合も実行中のバイナリはそのままですが、途中までのファイルが .tmp- で始まる名前でインストール先のディレクトリに残ります。このファイルが実行されることはなく、削除して構いません。

Windows では、成功したあと、置き換えられたバイナリが kamakiri.exe.old として新しいバイナリの隣に残ります。Windows では、プログラムが自分自身のファイルを削除できないためです。次に kamakiri upgrade を実行したときに削除されます。

パッケージマネージャーで入れたコピー

Homebrew や npm でインストールしたコピーには手を加えず、代わりに更新の方法を表示します。

リリース以外のビルド

バージョンが (dev) と表示されるビルドは、自分自身を更新できません。バージョン文字列を読み取れないビルドも同じです。どちらの場合も、リリースを入手するページが案内されます。

終了コード