4个版本 (破坏性更新)

0.4.0 2022年2月20日
0.3.0 2020年7月17日
0.2.0 2020年7月16日
0.1.0 2020年7月14日

#400配置

每月下载量37次
用于 gctx

MIT 协议

24KB
366 代码行

gcloud-ctx

Crate API License

gcloud config configurations 的Rust实现,用于管理Google Cloud Platform的不同gcloud配置。这是包含构建相关 gctx 命令行工具的核心逻辑的库。

注意: gcloud-ctx 是独立的,与Google没有任何关联。

用法

use gcloud_ctx::{ConfigurationStore, ConflictAction};

let mut store = ConfigurationStore::with_default_location()?;

// create a new configuration, optionally with a force overwrite
use gcloud_ctx::PropertiesBuilder;
let properties = PropertiesBuilder::default()
    .project("my-project")
    .account("[email protected]")
    .zone("europe-west1-d")
    .region("europe-west1")
    .build();

store.create("foo", &properties, ConflictAction::Overwrite)?;

// list configurations
for config in store.configurations() {
    println!("{}", config.name());
}

// activate a configuration by name
store.activate("foo")?;

// get the active configuration
println!("{}", store.active());

// copy an existing configuration, with force overwrite
store.copy("foo", "bar", ConflictAction::Overwrite)?;

// rename an existing configuration, with force overwrite
store.rename("bar", "baz", ConflictAction::Overwrite)?;

// delete a configuration
store.delete("baz")?;

// get properties of a configuration
let properties = store.describe("foo")?;
properties.to_writer(std::io::stdout())?;

许可证

gcloud-ctx 在MIT许可证下分发

依赖项

~2.6–4.5MB
~82K SLoC