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