7个版本 (4个破坏性更新)

0.10.1 2023年11月2日
0.10.0 2023年9月8日
0.4.0 2022年9月25日
0.3.0 2022年9月19日
0.1.1 2022年8月25日

#480 in 数据库接口

自定义许可证

52KB
780

Faasten CLI客户端

这是Faasten数据存储的简单远程命令行客户端。

客户端支持五个基本子命令

    login    Login to Faasten
    get      Get the value of a database key
    put      Put a "blob" from a local file
    fetch    Download a "blob" to a local file
    set      Set the value of a database key from the provided value or standard in

登录凭证存储在 $XDG_CONFIG/fstn/credentials 以TOML格式文件。登录后,您可以执行其他操作。

值与Blob的比较

Faasten区分了blob,前者适用于较小、通常为JSON的数据,可能频繁更改,后者适用于较大的二进制数据,如tar包。两者都存储在数据库键中,但值直接存储,而blob则单独存储,并在数据库中通过其内容的SHA256哈希引用。

因此,您可以get一个blob,但您将看到SHA256哈希而不是实际内容。通常,fetch更有用。

获取和设置值

获取键将打印其值到标准输出。

$ fstn get myvalue
{ "hello": "world" }

您可以通过命令行传递值或通过标准输入设置值。

$ fstn set myvalue '{"hello": "world"}'
$ echo '{"hello": "world"}' | fstn set myvalue

获取和放置Blob

使用引用它们的数据库键和存储输出的文件获取blob。

$ fstn fetch key/for/tarball output.tgz

类似地,通过提供引用它的键和放置文件的文件来放置blob

$ fstn put key/for/tarball local_tarball.tgz

依赖关系

~15–33MB
~498K SLoC