#config-file #safecoin #cli-config #file-path #key-pair #rpc #security

safe coin 命令行界面配置工具

SafeCoin:社区的安全由社区提供

9 个稳定版本

1.14.17 2023 年 3 月 8 日
1.14.3 2022 年 10 月 15 日
1.10.34 2022 年 7 月 23 日
1.9.29 2022 年 6 月 6 日
1.6.18 2021 年 8 月 8 日

#13#cli-config

Download history 39/week @ 2024-03-15 43/week @ 2024-03-22 68/week @ 2024-03-29 42/week @ 2024-04-05 33/week @ 2024-04-12 34/week @ 2024-04-19 45/week @ 2024-04-26 32/week @ 2024-05-03 37/week @ 2024-05-10 32/week @ 2024-05-17 40/week @ 2024-05-24 33/week @ 2024-05-31 24/week @ 2024-06-07 48/week @ 2024-06-14 39/week @ 2024-06-21 16/week @ 2024-06-28

129 每月下载
用于 13 个 (2 个直接) 仓库

Apache-2.0

560KB
11K SLoC

加载和保存 Safecoin 命令行界面配置文件。

Safecoin 命令行界面使用的配置文件包括连接到 RPC 节点的信息、用户的签名源路径等。除了 Safecoin 命令行界面之外的其他软件可能也希望访问相同的配置和签名者。

配置文件的默认路径可以从 CONFIG_FILE 中获取,它是一个 lazy_staticOption<String>,其值为

~/.config/solana/cli/config.yml

CONFIG_FILE 只有在其无法识别用户的主目录时才会是 None,这在典型的操作系统环境中不应该发生。

CLI 配置由 Config 结构体定义,其值通过 Config::load 加载并通过 Config::save 保存。

Config 的两个重要字段是

  • json_rpc_url,传递给 safecoin_client::rpc_client::RpcClient 的 URL。
  • keypair_path,一个签名源,可能是一个密钥对文件,但也可能代表其他几种签名者类型,具体可参考safecoin_clap_utils::keypair::signer_from_path的文档。

示例

加载和保存配置。注意这里使用anyhow crate来处理错误。

use anyhow::anyhow;
use safecoin_cli_config::{CONFIG_FILE, Config};

let config_file = safecoin_cli_config::CONFIG_FILE.as_ref()
    .ok_or_else(|| anyhow!("unable to get config file path"))?;
let mut cli_config = Config::load(&config_file)?;
// Set the RPC URL to devnet
cli_config.json_rpc_url = "https://api.devnet.safecoin.org".to_string();
cli_config.save(&config_file)?;

依赖

~20–34MB
~600K SLoC