1 个不稳定版本
新功能 0.1.0 | 2024 年 8 月 23 日 |
---|
#13 在 #nushell-plugin 中
47KB
1K SLoC
nu_plugin_cloud
为 nushell 提供对云存储服务的统一访问。
功能
cloud ls
- 列出云存储位置的文件名、大小、修改时间、etags 和版本。cloud open
- 将文件加载到单元格中,如果可能则转换为表格(通过添加 '--raw' 来避免)。cloud rm
- 从云存储中删除文件cloud save
- 将文件保存到云存储- AWS S3 支持
- 即将推出:Azure 支持
- 即将推出:Google 云支持
安装
先决条件
使用 Cargo 安装
cargo install nu_plugin_cloud
plugin add ~/.cargo/bin/nu_plugin_cloud
plugin use cloud
从源代码安装
git clone https://github.com/ayax79/nu_plugin_cloud.git
cd nu_plugin_cloud
cargo install --path .
plugin add ~/.cargo/bin/nu_plugin_cloud
plugin use cloud
[!TIP] 此插件将在任何操作发生时关闭插件 GC。
要关闭插件 GC 并查询内部缓存,请运行
cloud cache-clear
AWS 支持
AWS 设置
配置 AWS 使用标准 配置和凭据文件。要更改配置文件,请确保 AWS_PROFILE 环境变量设置为所需的配置文件。
AWS SSO
对于 SSO,需要 AWS CLI 来配置和登录。要设置 AWS SSO
- 请按照 使用 IAM 身份中心身份验证配置 AWS CLI 上的步骤进行。
- 使用
aws sso login
登录
此插件使用 aws_config crate。它对配置错误非常敏感。
如果配置文件只包含 sso_session、sso_account_id 和 sso_role_name,则可以正常工作。例如,不要在配置文件部分包含 sso_start_url。
[profile my-profile]
sso_session = my-sso
sso_account_id = <numeric account id>
sso_role_name = my-iam-role
region = us-east-1
output = json
[sso-session my-sso]
sso_start_url = https://d-92677e5ab0.awsapps.com/start
sso_region = us-west-2
sso_registration_scopes = sso:account:access
非云存储
支持两种非云存储类型,内存和文件系统。这些对于测试目的可能很有用。
内存使用
从内存保存文件
[[a b]; [1 2]] | cloud save memory:/foo.csv
从内存加载文件
cloud open memory:/foo.csv
列出内存中的文件
cloud ls memory:/foo.csv
文件系统使用
从本地文件系统保存文件
[[a b]; [1 2]] | cloud save file:///tmp/test/foo.csv
从本地文件系统加载文件
cloud open file:///tmp/test/foo.csv
列出本地文件系统中的文件
cloud ls file:///tmp/test/foo.csv
依赖项
~61–95MB
~2M SLoC