ERPC CLI のコマンド一覧
ERPC CLI のすべてのコマンドグループを 1 つの表にまとめ、どのコマンドでも使えるオプションと、スクリプトが頼れる終了コードを載せています。
このページは、プレリリースの ERPC CLI
v0.1.0-rc.4 について説明しています。コマンドグループ
erpc validator や erpc worker のように、コマンドグループを動詞なしで実行すると、その動詞の一覧が表示されます。グローバルオプション
--jsonで、機械が読める出力になります(erpc --json <command>)。ERPC_JSON=trueでも同じです。ノードのコマンドでは、--jsonをコマンドより前に置く必要があります。--langで、erpc が話す言語をen、ja、zh、ruから選びます。指定しなければ、localeの設定を、それも無ければシステムの言語を使います。
エラーと終了コード
失敗の表示はどこでも同じ形です。何がうまくいかなかったかを言う
error: の行と、次にすることがあれば、それを言う hint: の行です。--json では、失敗は標準出力の 1 つのオブジェクト {"error": {"code", "exit", "message", "hint"}} になります。ただし次の 2 つは、代わりに clap 自身のメッセージを表示して 2 で終了します。ターミナルで clap が解析できないコマンドライン、そしてノードのツリー(erpc validator、rpc、node)の動詞が受け付けない引数です。後者は --json を付けていても同じです。details のフィールドは、失敗の前に何をしたかについて、コマンドがスクリプトに伝えることがあるときだけ現れ、ターミナルには決して表示されません。Ctrl-C(または SIGTERM、SIGHUP)で止めると、erpc はそのシグナル自体で終了するので、スクリプトのループも止まります。公開したコードは名前と終了ステータスを変えず、コードを使い回すこともありません。
ストレージとバックアップ
bash
erpc storage buy は、ERPC Global Storage のプランを ERPC Credit で購入します。プランと料金は料金表に載っています。erpc storage
erpc storage putは、--no-encryptを付けない限り、ファイルを送る前にこのマシンで暗号化します。ERPC が保存するのは暗号化されたバイトだけで、鍵は持ちません。erpc storage getは、暗号化されたファイルに気づいて復号します。- ストレージの鍵はアカウントに 1 つで、
erpc loginが選んだ保存先に置かれます。erpc は、再起動で消える Linux カーネルのキーリングにはこの鍵を置きません。--store 1passwordか--store fileでログインするか、--no-encryptを使ってください。fileストアでは、鍵は暗号化されないまま~/.erpc/storage-key(モード 0600)に置かれます。--no-encryptを付けると、送るファイルを暗号化せずに、そのままアップロードします。 - ストレージの鍵を失うと、その鍵で暗号化したファイルはすべて失われます。 ERPC にも鍵を戻すことはできません。
erpc storage key export --showで鍵を表示して、マシンから離れた所に控えを置けます。erpc storage key importで、別のマシンに鍵を取り込めます。 - ファイルを保存したパスとサイズは、ERPC から見えます。
erpc storage keys listでストレージのアクセスキーを表示し、erpc storage keys revoke <n>でその 1 つを無効にできます。
erpc backup
erpc backup は、restic でマシンを ERPC Global Storage にバックアップします。ファイルはマシンを出る前にあなたのマシンで暗号化され、ERPC はバックアップを開けるパスワードを持ちません。- マシンごとに、追記しかできない鍵が渡されます。 その鍵では、自分のバックアップを削除できません。ただし
erpc backup initを実行したマシンは、削除できる鍵も持ちます。そのため、この保護が効くのは、erpc のセッションもアカウントのバックアップ用のシークレットも持たないマシンだけです。 erpc backup password --showの控えを、マシンから離れた所に置いてください。 マスターパスワードと、すべてのマシンのbackup.envを失うと、バックアップも失われます。- バックアップは、知られている鍵のファイルとシステムのシークレットを除きます。
.ssh/id_*、.config/solana/id.json、erpc のセッション、SSH のホスト鍵などです。別の名前や別の場所にある鍵の素材は、ほかのファイルと同じようにバックアップされます。--excludeで除いてください。 - erpc は restic 0.19.1 をインストールし、アーカイブとプログラムの両方を、erpc に組み込まれた SHA-256 のダイジェストと照合します。
- スケジュール: Linux では、
sudo erpc backup initのあとにsudo erpc backup schedule dailyを実行します。macOS ではerpc backup schedule daily ~/Documentsを実行します。ジョブはあなたとして、あなたがログインしている間に動きます。 - バックアップはアカウントの既定のリージョンに送られます。
erpc backupは、バックアップするそのマシンで実行します。ワーカーのサーバーは、代わりにerpc worker backup onで設定します(アプリの状態データをバックアップする)。






