regen all APIs

This commit is contained in:
Sebastian Thiel
2024-03-05 19:02:07 +01:00
parent ca974aa0a5
commit 55badfe90e
1998 changed files with 490545 additions and 148021 deletions

View File

@@ -4,7 +4,7 @@
[package]
name = "google-cloudkms1-cli"
version = "5.0.3+20230106"
version = "5.0.3+20240219"
authors = ["Sebastian Thiel <byronimo@gmail.com>"]
description = "A complete library to interact with Cloud KMS (protocol v1)"
repository = "https://github.com/Byron/google-apis-rs/tree/main/gen/cloudkms1-cli"
@@ -38,5 +38,5 @@ tower-service = "^0.3.1"
[dependencies.google-cloudkms1]
path = "../cloudkms1"
version = "5.0.3+20230106"
version = "5.0.3+20240219"

View File

@@ -25,7 +25,7 @@ Find the source code [on github](https://github.com/Byron/google-apis-rs/tree/ma
# Usage
This documentation was generated from the *Cloud KMS* API at revision *20230106*. The CLI is at version *5.0.3*.
This documentation was generated from the *Cloud KMS* API at revision *20240219*. The CLI is at version *5.0.3*.
```bash
cloudkms1 [options]
@@ -40,8 +40,10 @@ cloudkms1 [options]
locations-ekm-connections-patch <name> (-r <kv>)... [-p <v>]... [-o <out>]
locations-ekm-connections-set-iam-policy <resource> (-r <kv>)... [-p <v>]... [-o <out>]
locations-ekm-connections-test-iam-permissions <resource> (-r <kv>)... [-p <v>]... [-o <out>]
locations-ekm-connections-verify-connectivity <name> [-p <v>]... [-o <out>]
locations-generate-random-bytes <location> (-r <kv>)... [-p <v>]... [-o <out>]
locations-get <name> [-p <v>]... [-o <out>]
locations-get-ekm-config <name> [-p <v>]... [-o <out>]
locations-key-rings-create <parent> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-crypto-keys-create <parent> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-crypto-keys-crypto-key-versions-asymmetric-decrypt <name> (-r <kv>)... [-p <v>]... [-o <out>]
@@ -55,6 +57,8 @@ cloudkms1 [options]
locations-key-rings-crypto-keys-crypto-key-versions-mac-sign <name> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-crypto-keys-crypto-key-versions-mac-verify <name> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-crypto-keys-crypto-key-versions-patch <name> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-crypto-keys-crypto-key-versions-raw-decrypt <name> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-crypto-keys-crypto-key-versions-raw-encrypt <name> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-crypto-keys-crypto-key-versions-restore <name> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-crypto-keys-decrypt <name> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-crypto-keys-encrypt <name> (-r <kv>)... [-p <v>]... [-o <out>]
@@ -77,6 +81,7 @@ cloudkms1 [options]
locations-key-rings-set-iam-policy <resource> (-r <kv>)... [-p <v>]... [-o <out>]
locations-key-rings-test-iam-permissions <resource> (-r <kv>)... [-p <v>]... [-o <out>]
locations-list <name> [-p <v>]... [-o <out>]
locations-update-ekm-config <name> (-r <kv>)... [-p <v>]... [-o <out>]
cloudkms1 --help
Configuration:

View File

@@ -1,4 +1,4 @@
site_name: Cloud KMS v5.0.3+20230106
site_name: Cloud KMS v5.0.3+20240219
site_url: http://byron.github.io/google-apis-rs/google-cloudkms1-cli
site_description: A complete library to interact with Cloud KMS (protocol v1)
@@ -20,8 +20,10 @@ nav:
- 'Locations Ekm Connections Patch': 'projects_locations-ekm-connections-patch.md'
- 'Locations Ekm Connections Set Iam Policy': 'projects_locations-ekm-connections-set-iam-policy.md'
- 'Locations Ekm Connections Test Iam Permissions': 'projects_locations-ekm-connections-test-iam-permissions.md'
- 'Locations Ekm Connections Verify Connectivity': 'projects_locations-ekm-connections-verify-connectivity.md'
- 'Locations Generate Random Bytes': 'projects_locations-generate-random-bytes.md'
- 'Locations Get': 'projects_locations-get.md'
- 'Locations Get Ekm Config': 'projects_locations-get-ekm-config.md'
- 'Locations Key Rings Create': 'projects_locations-key-rings-create.md'
- 'Locations Key Rings Crypto Keys Create': 'projects_locations-key-rings-crypto-keys-create.md'
- 'Locations Key Rings Crypto Keys Crypto Key Versions Asymmetric Decrypt': 'projects_locations-key-rings-crypto-keys-crypto-key-versions-asymmetric-decrypt.md'
@@ -35,6 +37,8 @@ nav:
- 'Locations Key Rings Crypto Keys Crypto Key Versions Mac Sign': 'projects_locations-key-rings-crypto-keys-crypto-key-versions-mac-sign.md'
- 'Locations Key Rings Crypto Keys Crypto Key Versions Mac Verify': 'projects_locations-key-rings-crypto-keys-crypto-key-versions-mac-verify.md'
- 'Locations Key Rings Crypto Keys Crypto Key Versions Patch': 'projects_locations-key-rings-crypto-keys-crypto-key-versions-patch.md'
- 'Locations Key Rings Crypto Keys Crypto Key Versions Raw Decrypt': 'projects_locations-key-rings-crypto-keys-crypto-key-versions-raw-decrypt.md'
- 'Locations Key Rings Crypto Keys Crypto Key Versions Raw Encrypt': 'projects_locations-key-rings-crypto-keys-crypto-key-versions-raw-encrypt.md'
- 'Locations Key Rings Crypto Keys Crypto Key Versions Restore': 'projects_locations-key-rings-crypto-keys-crypto-key-versions-restore.md'
- 'Locations Key Rings Crypto Keys Decrypt': 'projects_locations-key-rings-crypto-keys-decrypt.md'
- 'Locations Key Rings Crypto Keys Encrypt': 'projects_locations-key-rings-crypto-keys-encrypt.md'
@@ -57,6 +61,7 @@ nav:
- 'Locations Key Rings Set Iam Policy': 'projects_locations-key-rings-set-iam-policy.md'
- 'Locations Key Rings Test Iam Permissions': 'projects_locations-key-rings-test-iam-permissions.md'
- 'Locations List': 'projects_locations-list.md'
- 'Locations Update Ekm Config': 'projects_locations-update-ekm-config.md'
theme: readthedocs

View File

@@ -302,10 +302,12 @@ where
let type_info: Option<(&'static str, JsonTypeInfo)> =
match &temp_cursor.to_string()[..] {
"create-time" => Some(("createTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"crypto-space-path" => Some(("cryptoSpacePath", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"etag" => Some(("etag", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"key-management-mode" => Some(("keyManagementMode", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"name" => Some(("name", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
_ => {
let suggestion = FieldCursor::did_you_mean(key, &vec!["create-time", "etag", "name"]);
let suggestion = FieldCursor::did_you_mean(key, &vec!["create-time", "crypto-space-path", "etag", "key-management-mode", "name"]);
err.issues.push(CLIError::Field(FieldError::Unknown(temp_cursor.to_string(), suggestion, value.map(|v| v.to_string()))));
None
}
@@ -566,10 +568,12 @@ where
let type_info: Option<(&'static str, JsonTypeInfo)> =
match &temp_cursor.to_string()[..] {
"create-time" => Some(("createTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"crypto-space-path" => Some(("cryptoSpacePath", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"etag" => Some(("etag", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"key-management-mode" => Some(("keyManagementMode", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"name" => Some(("name", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
_ => {
let suggestion = FieldCursor::did_you_mean(key, &vec!["create-time", "etag", "name"]);
let suggestion = FieldCursor::did_you_mean(key, &vec!["create-time", "crypto-space-path", "etag", "key-management-mode", "name"]);
err.issues.push(CLIError::Field(FieldError::Unknown(temp_cursor.to_string(), suggestion, value.map(|v| v.to_string()))));
None
}
@@ -805,6 +809,58 @@ where
}
}
async fn _projects_locations_ekm_connections_verify_connectivity(&self, opt: &ArgMatches<'n>, dry_run: bool, err: &mut InvalidOptionsError)
-> Result<(), DoitError> {
let mut call = self.hub.projects().locations_ekm_connections_verify_connectivity(opt.value_of("name").unwrap_or(""));
for parg in opt.values_of("v").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
let (key, value) = parse_kv_arg(&*parg, err, false);
match key {
_ => {
let mut found = false;
for param in &self.gp {
if key == *param {
found = true;
call = call.param(self.gpm.iter().find(|t| t.0 == key).unwrap_or(&("", key)).1, value.unwrap_or("unset"));
break;
}
}
if !found {
err.issues.push(CLIError::UnknownParameter(key.to_string(),
{let mut v = Vec::new();
v.extend(self.gp.iter().map(|v|*v));
v } ));
}
}
}
}
let protocol = CallType::Standard;
if dry_run {
Ok(())
} else {
assert!(err.issues.len() == 0);
for scope in self.opt.values_of("url").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
call = call.add_scope(scope);
}
let mut ostream = match writer_from_opts(opt.value_of("out")) {
Ok(mut f) => f,
Err(io_err) => return Err(DoitError::IoError(opt.value_of("out").unwrap_or("-").to_string(), io_err)),
};
match match protocol {
CallType::Standard => call.doit().await,
_ => unreachable!()
} {
Err(api_err) => Err(DoitError::ApiError(api_err)),
Ok((mut response, output_schema)) => {
let mut value = json::value::to_value(&output_schema).expect("serde to work");
remove_json_null_values(&mut value);
json::to_writer_pretty(&mut ostream, &value).unwrap();
ostream.flush().unwrap();
Ok(())
}
}
}
}
async fn _projects_locations_generate_random_bytes(&self, opt: &ArgMatches<'n>, dry_run: bool, err: &mut InvalidOptionsError)
-> Result<(), DoitError> {
@@ -943,6 +999,58 @@ where
}
}
async fn _projects_locations_get_ekm_config(&self, opt: &ArgMatches<'n>, dry_run: bool, err: &mut InvalidOptionsError)
-> Result<(), DoitError> {
let mut call = self.hub.projects().locations_get_ekm_config(opt.value_of("name").unwrap_or(""));
for parg in opt.values_of("v").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
let (key, value) = parse_kv_arg(&*parg, err, false);
match key {
_ => {
let mut found = false;
for param in &self.gp {
if key == *param {
found = true;
call = call.param(self.gpm.iter().find(|t| t.0 == key).unwrap_or(&("", key)).1, value.unwrap_or("unset"));
break;
}
}
if !found {
err.issues.push(CLIError::UnknownParameter(key.to_string(),
{let mut v = Vec::new();
v.extend(self.gp.iter().map(|v|*v));
v } ));
}
}
}
}
let protocol = CallType::Standard;
if dry_run {
Ok(())
} else {
assert!(err.issues.len() == 0);
for scope in self.opt.values_of("url").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
call = call.add_scope(scope);
}
let mut ostream = match writer_from_opts(opt.value_of("out")) {
Ok(mut f) => f,
Err(io_err) => return Err(DoitError::IoError(opt.value_of("out").unwrap_or("-").to_string(), io_err)),
};
match match protocol {
CallType::Standard => call.doit().await,
_ => unreachable!()
} {
Err(api_err) => Err(DoitError::ApiError(api_err)),
Ok((mut response, output_schema)) => {
let mut value = json::value::to_value(&output_schema).expect("serde to work");
remove_json_null_values(&mut value);
json::to_writer_pretty(&mut ostream, &value).unwrap();
ostream.flush().unwrap();
Ok(())
}
}
}
}
async fn _projects_locations_key_rings_create(&self, opt: &ArgMatches<'n>, dry_run: bool, err: &mut InvalidOptionsError)
-> Result<(), DoitError> {
@@ -1072,9 +1180,11 @@ where
"primary.create-time" => Some(("primary.createTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.destroy-event-time" => Some(("primary.destroyEventTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.destroy-time" => Some(("primary.destroyTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.external-destruction-failure-reason" => Some(("primary.externalDestructionFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.external-protection-level-options.ekm-connection-key-path" => Some(("primary.externalProtectionLevelOptions.ekmConnectionKeyPath", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.external-protection-level-options.external-key-uri" => Some(("primary.externalProtectionLevelOptions.externalKeyUri", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.generate-time" => Some(("primary.generateTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.generation-failure-reason" => Some(("primary.generationFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.import-failure-reason" => Some(("primary.importFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.import-job" => Some(("primary.importJob", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.import-time" => Some(("primary.importTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
@@ -1087,7 +1197,7 @@ where
"version-template.algorithm" => Some(("versionTemplate.algorithm", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"version-template.protection-level" => Some(("versionTemplate.protectionLevel", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
_ => {
let suggestion = FieldCursor::did_you_mean(key, &vec!["algorithm", "attestation", "cavium-certs", "cert-chains", "content", "create-time", "crypto-key-backend", "destroy-event-time", "destroy-scheduled-duration", "destroy-time", "ekm-connection-key-path", "external-key-uri", "external-protection-level-options", "format", "generate-time", "google-card-certs", "google-partition-certs", "import-failure-reason", "import-job", "import-only", "import-time", "labels", "name", "next-rotation-time", "primary", "protection-level", "purpose", "reimport-eligible", "rotation-period", "state", "version-template"]);
let suggestion = FieldCursor::did_you_mean(key, &vec!["algorithm", "attestation", "cavium-certs", "cert-chains", "content", "create-time", "crypto-key-backend", "destroy-event-time", "destroy-scheduled-duration", "destroy-time", "ekm-connection-key-path", "external-destruction-failure-reason", "external-key-uri", "external-protection-level-options", "format", "generate-time", "generation-failure-reason", "google-card-certs", "google-partition-certs", "import-failure-reason", "import-job", "import-only", "import-time", "labels", "name", "next-rotation-time", "primary", "protection-level", "purpose", "reimport-eligible", "rotation-period", "state", "version-template"]);
err.issues.push(CLIError::Field(FieldError::Unknown(temp_cursor.to_string(), suggestion, value.map(|v| v.to_string()))));
None
}
@@ -1362,9 +1472,11 @@ where
"create-time" => Some(("createTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"destroy-event-time" => Some(("destroyEventTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"destroy-time" => Some(("destroyTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"external-destruction-failure-reason" => Some(("externalDestructionFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"external-protection-level-options.ekm-connection-key-path" => Some(("externalProtectionLevelOptions.ekmConnectionKeyPath", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"external-protection-level-options.external-key-uri" => Some(("externalProtectionLevelOptions.externalKeyUri", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"generate-time" => Some(("generateTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"generation-failure-reason" => Some(("generationFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"import-failure-reason" => Some(("importFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"import-job" => Some(("importJob", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"import-time" => Some(("importTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
@@ -1373,7 +1485,7 @@ where
"reimport-eligible" => Some(("reimportEligible", JsonTypeInfo { jtype: JsonType::Boolean, ctype: ComplexType::Pod })),
"state" => Some(("state", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
_ => {
let suggestion = FieldCursor::did_you_mean(key, &vec!["algorithm", "attestation", "cavium-certs", "cert-chains", "content", "create-time", "destroy-event-time", "destroy-time", "ekm-connection-key-path", "external-key-uri", "external-protection-level-options", "format", "generate-time", "google-card-certs", "google-partition-certs", "import-failure-reason", "import-job", "import-time", "name", "protection-level", "reimport-eligible", "state"]);
let suggestion = FieldCursor::did_you_mean(key, &vec!["algorithm", "attestation", "cavium-certs", "cert-chains", "content", "create-time", "destroy-event-time", "destroy-time", "ekm-connection-key-path", "external-destruction-failure-reason", "external-key-uri", "external-protection-level-options", "format", "generate-time", "generation-failure-reason", "google-card-certs", "google-partition-certs", "import-failure-reason", "import-job", "import-time", "name", "protection-level", "reimport-eligible", "state"]);
err.issues.push(CLIError::Field(FieldError::Unknown(temp_cursor.to_string(), suggestion, value.map(|v| v.to_string()))));
None
}
@@ -1984,9 +2096,11 @@ where
"create-time" => Some(("createTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"destroy-event-time" => Some(("destroyEventTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"destroy-time" => Some(("destroyTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"external-destruction-failure-reason" => Some(("externalDestructionFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"external-protection-level-options.ekm-connection-key-path" => Some(("externalProtectionLevelOptions.ekmConnectionKeyPath", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"external-protection-level-options.external-key-uri" => Some(("externalProtectionLevelOptions.externalKeyUri", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"generate-time" => Some(("generateTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"generation-failure-reason" => Some(("generationFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"import-failure-reason" => Some(("importFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"import-job" => Some(("importJob", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"import-time" => Some(("importTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
@@ -1995,7 +2109,7 @@ where
"reimport-eligible" => Some(("reimportEligible", JsonTypeInfo { jtype: JsonType::Boolean, ctype: ComplexType::Pod })),
"state" => Some(("state", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
_ => {
let suggestion = FieldCursor::did_you_mean(key, &vec!["algorithm", "attestation", "cavium-certs", "cert-chains", "content", "create-time", "destroy-event-time", "destroy-time", "ekm-connection-key-path", "external-key-uri", "external-protection-level-options", "format", "generate-time", "google-card-certs", "google-partition-certs", "import-failure-reason", "import-job", "import-time", "name", "protection-level", "reimport-eligible", "state"]);
let suggestion = FieldCursor::did_you_mean(key, &vec!["algorithm", "attestation", "cavium-certs", "cert-chains", "content", "create-time", "destroy-event-time", "destroy-time", "ekm-connection-key-path", "external-destruction-failure-reason", "external-key-uri", "external-protection-level-options", "format", "generate-time", "generation-failure-reason", "google-card-certs", "google-partition-certs", "import-failure-reason", "import-job", "import-time", "name", "protection-level", "reimport-eligible", "state"]);
err.issues.push(CLIError::Field(FieldError::Unknown(temp_cursor.to_string(), suggestion, value.map(|v| v.to_string()))));
None
}
@@ -2059,6 +2173,187 @@ where
}
}
async fn _projects_locations_key_rings_crypto_keys_crypto_key_versions_raw_decrypt(&self, opt: &ArgMatches<'n>, dry_run: bool, err: &mut InvalidOptionsError)
-> Result<(), DoitError> {
let mut field_cursor = FieldCursor::default();
let mut object = json::value::Value::Object(Default::default());
for kvarg in opt.values_of("kv").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
let last_errc = err.issues.len();
let (key, value) = parse_kv_arg(&*kvarg, err, false);
let mut temp_cursor = field_cursor.clone();
if let Err(field_err) = temp_cursor.set(&*key) {
err.issues.push(field_err);
}
if value.is_none() {
field_cursor = temp_cursor.clone();
if err.issues.len() > last_errc {
err.issues.remove(last_errc);
}
continue;
}
let type_info: Option<(&'static str, JsonTypeInfo)> =
match &temp_cursor.to_string()[..] {
"additional-authenticated-data" => Some(("additionalAuthenticatedData", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"additional-authenticated-data-crc32c" => Some(("additionalAuthenticatedDataCrc32c", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"ciphertext" => Some(("ciphertext", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"ciphertext-crc32c" => Some(("ciphertextCrc32c", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"initialization-vector" => Some(("initializationVector", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"initialization-vector-crc32c" => Some(("initializationVectorCrc32c", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"tag-length" => Some(("tagLength", JsonTypeInfo { jtype: JsonType::Int, ctype: ComplexType::Pod })),
_ => {
let suggestion = FieldCursor::did_you_mean(key, &vec!["additional-authenticated-data", "additional-authenticated-data-crc32c", "ciphertext", "ciphertext-crc32c", "initialization-vector", "initialization-vector-crc32c", "tag-length"]);
err.issues.push(CLIError::Field(FieldError::Unknown(temp_cursor.to_string(), suggestion, value.map(|v| v.to_string()))));
None
}
};
if let Some((field_cursor_str, type_info)) = type_info {
FieldCursor::from(field_cursor_str).set_json_value(&mut object, value.unwrap(), type_info, err, &temp_cursor);
}
}
let mut request: api::RawDecryptRequest = json::value::from_value(object).unwrap();
let mut call = self.hub.projects().locations_key_rings_crypto_keys_crypto_key_versions_raw_decrypt(request, opt.value_of("name").unwrap_or(""));
for parg in opt.values_of("v").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
let (key, value) = parse_kv_arg(&*parg, err, false);
match key {
_ => {
let mut found = false;
for param in &self.gp {
if key == *param {
found = true;
call = call.param(self.gpm.iter().find(|t| t.0 == key).unwrap_or(&("", key)).1, value.unwrap_or("unset"));
break;
}
}
if !found {
err.issues.push(CLIError::UnknownParameter(key.to_string(),
{let mut v = Vec::new();
v.extend(self.gp.iter().map(|v|*v));
v } ));
}
}
}
}
let protocol = CallType::Standard;
if dry_run {
Ok(())
} else {
assert!(err.issues.len() == 0);
for scope in self.opt.values_of("url").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
call = call.add_scope(scope);
}
let mut ostream = match writer_from_opts(opt.value_of("out")) {
Ok(mut f) => f,
Err(io_err) => return Err(DoitError::IoError(opt.value_of("out").unwrap_or("-").to_string(), io_err)),
};
match match protocol {
CallType::Standard => call.doit().await,
_ => unreachable!()
} {
Err(api_err) => Err(DoitError::ApiError(api_err)),
Ok((mut response, output_schema)) => {
let mut value = json::value::to_value(&output_schema).expect("serde to work");
remove_json_null_values(&mut value);
json::to_writer_pretty(&mut ostream, &value).unwrap();
ostream.flush().unwrap();
Ok(())
}
}
}
}
async fn _projects_locations_key_rings_crypto_keys_crypto_key_versions_raw_encrypt(&self, opt: &ArgMatches<'n>, dry_run: bool, err: &mut InvalidOptionsError)
-> Result<(), DoitError> {
let mut field_cursor = FieldCursor::default();
let mut object = json::value::Value::Object(Default::default());
for kvarg in opt.values_of("kv").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
let last_errc = err.issues.len();
let (key, value) = parse_kv_arg(&*kvarg, err, false);
let mut temp_cursor = field_cursor.clone();
if let Err(field_err) = temp_cursor.set(&*key) {
err.issues.push(field_err);
}
if value.is_none() {
field_cursor = temp_cursor.clone();
if err.issues.len() > last_errc {
err.issues.remove(last_errc);
}
continue;
}
let type_info: Option<(&'static str, JsonTypeInfo)> =
match &temp_cursor.to_string()[..] {
"additional-authenticated-data" => Some(("additionalAuthenticatedData", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"additional-authenticated-data-crc32c" => Some(("additionalAuthenticatedDataCrc32c", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"initialization-vector" => Some(("initializationVector", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"initialization-vector-crc32c" => Some(("initializationVectorCrc32c", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"plaintext" => Some(("plaintext", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"plaintext-crc32c" => Some(("plaintextCrc32c", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
_ => {
let suggestion = FieldCursor::did_you_mean(key, &vec!["additional-authenticated-data", "additional-authenticated-data-crc32c", "initialization-vector", "initialization-vector-crc32c", "plaintext", "plaintext-crc32c"]);
err.issues.push(CLIError::Field(FieldError::Unknown(temp_cursor.to_string(), suggestion, value.map(|v| v.to_string()))));
None
}
};
if let Some((field_cursor_str, type_info)) = type_info {
FieldCursor::from(field_cursor_str).set_json_value(&mut object, value.unwrap(), type_info, err, &temp_cursor);
}
}
let mut request: api::RawEncryptRequest = json::value::from_value(object).unwrap();
let mut call = self.hub.projects().locations_key_rings_crypto_keys_crypto_key_versions_raw_encrypt(request, opt.value_of("name").unwrap_or(""));
for parg in opt.values_of("v").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
let (key, value) = parse_kv_arg(&*parg, err, false);
match key {
_ => {
let mut found = false;
for param in &self.gp {
if key == *param {
found = true;
call = call.param(self.gpm.iter().find(|t| t.0 == key).unwrap_or(&("", key)).1, value.unwrap_or("unset"));
break;
}
}
if !found {
err.issues.push(CLIError::UnknownParameter(key.to_string(),
{let mut v = Vec::new();
v.extend(self.gp.iter().map(|v|*v));
v } ));
}
}
}
}
let protocol = CallType::Standard;
if dry_run {
Ok(())
} else {
assert!(err.issues.len() == 0);
for scope in self.opt.values_of("url").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
call = call.add_scope(scope);
}
let mut ostream = match writer_from_opts(opt.value_of("out")) {
Ok(mut f) => f,
Err(io_err) => return Err(DoitError::IoError(opt.value_of("out").unwrap_or("-").to_string(), io_err)),
};
match match protocol {
CallType::Standard => call.doit().await,
_ => unreachable!()
} {
Err(api_err) => Err(DoitError::ApiError(api_err)),
Ok((mut response, output_schema)) => {
let mut value = json::value::to_value(&output_schema).expect("serde to work");
remove_json_null_values(&mut value);
json::to_writer_pretty(&mut ostream, &value).unwrap();
ostream.flush().unwrap();
Ok(())
}
}
}
}
async fn _projects_locations_key_rings_crypto_keys_crypto_key_versions_restore(&self, opt: &ArgMatches<'n>, dry_run: bool, err: &mut InvalidOptionsError)
-> Result<(), DoitError> {
@@ -2534,9 +2829,11 @@ where
"primary.create-time" => Some(("primary.createTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.destroy-event-time" => Some(("primary.destroyEventTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.destroy-time" => Some(("primary.destroyTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.external-destruction-failure-reason" => Some(("primary.externalDestructionFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.external-protection-level-options.ekm-connection-key-path" => Some(("primary.externalProtectionLevelOptions.ekmConnectionKeyPath", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.external-protection-level-options.external-key-uri" => Some(("primary.externalProtectionLevelOptions.externalKeyUri", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.generate-time" => Some(("primary.generateTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.generation-failure-reason" => Some(("primary.generationFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.import-failure-reason" => Some(("primary.importFailureReason", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.import-job" => Some(("primary.importJob", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"primary.import-time" => Some(("primary.importTime", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
@@ -2549,7 +2846,7 @@ where
"version-template.algorithm" => Some(("versionTemplate.algorithm", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"version-template.protection-level" => Some(("versionTemplate.protectionLevel", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
_ => {
let suggestion = FieldCursor::did_you_mean(key, &vec!["algorithm", "attestation", "cavium-certs", "cert-chains", "content", "create-time", "crypto-key-backend", "destroy-event-time", "destroy-scheduled-duration", "destroy-time", "ekm-connection-key-path", "external-key-uri", "external-protection-level-options", "format", "generate-time", "google-card-certs", "google-partition-certs", "import-failure-reason", "import-job", "import-only", "import-time", "labels", "name", "next-rotation-time", "primary", "protection-level", "purpose", "reimport-eligible", "rotation-period", "state", "version-template"]);
let suggestion = FieldCursor::did_you_mean(key, &vec!["algorithm", "attestation", "cavium-certs", "cert-chains", "content", "create-time", "crypto-key-backend", "destroy-event-time", "destroy-scheduled-duration", "destroy-time", "ekm-connection-key-path", "external-destruction-failure-reason", "external-key-uri", "external-protection-level-options", "format", "generate-time", "generation-failure-reason", "google-card-certs", "google-partition-certs", "import-failure-reason", "import-job", "import-only", "import-time", "labels", "name", "next-rotation-time", "primary", "protection-level", "purpose", "reimport-eligible", "rotation-period", "state", "version-template"]);
err.issues.push(CLIError::Field(FieldError::Unknown(temp_cursor.to_string(), suggestion, value.map(|v| v.to_string()))));
None
}
@@ -3724,6 +4021,96 @@ where
}
}
async fn _projects_locations_update_ekm_config(&self, opt: &ArgMatches<'n>, dry_run: bool, err: &mut InvalidOptionsError)
-> Result<(), DoitError> {
let mut field_cursor = FieldCursor::default();
let mut object = json::value::Value::Object(Default::default());
for kvarg in opt.values_of("kv").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
let last_errc = err.issues.len();
let (key, value) = parse_kv_arg(&*kvarg, err, false);
let mut temp_cursor = field_cursor.clone();
if let Err(field_err) = temp_cursor.set(&*key) {
err.issues.push(field_err);
}
if value.is_none() {
field_cursor = temp_cursor.clone();
if err.issues.len() > last_errc {
err.issues.remove(last_errc);
}
continue;
}
let type_info: Option<(&'static str, JsonTypeInfo)> =
match &temp_cursor.to_string()[..] {
"default-ekm-connection" => Some(("defaultEkmConnection", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
"name" => Some(("name", JsonTypeInfo { jtype: JsonType::String, ctype: ComplexType::Pod })),
_ => {
let suggestion = FieldCursor::did_you_mean(key, &vec!["default-ekm-connection", "name"]);
err.issues.push(CLIError::Field(FieldError::Unknown(temp_cursor.to_string(), suggestion, value.map(|v| v.to_string()))));
None
}
};
if let Some((field_cursor_str, type_info)) = type_info {
FieldCursor::from(field_cursor_str).set_json_value(&mut object, value.unwrap(), type_info, err, &temp_cursor);
}
}
let mut request: api::EkmConfig = json::value::from_value(object).unwrap();
let mut call = self.hub.projects().locations_update_ekm_config(request, opt.value_of("name").unwrap_or(""));
for parg in opt.values_of("v").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
let (key, value) = parse_kv_arg(&*parg, err, false);
match key {
"update-mask" => {
call = call.update_mask( value.map(|v| arg_from_str(v, err, "update-mask", "google-fieldmask")).unwrap_or(FieldMask::default()));
},
_ => {
let mut found = false;
for param in &self.gp {
if key == *param {
found = true;
call = call.param(self.gpm.iter().find(|t| t.0 == key).unwrap_or(&("", key)).1, value.unwrap_or("unset"));
break;
}
}
if !found {
err.issues.push(CLIError::UnknownParameter(key.to_string(),
{let mut v = Vec::new();
v.extend(self.gp.iter().map(|v|*v));
v.extend(["update-mask"].iter().map(|v|*v));
v } ));
}
}
}
}
let protocol = CallType::Standard;
if dry_run {
Ok(())
} else {
assert!(err.issues.len() == 0);
for scope in self.opt.values_of("url").map(|i|i.collect()).unwrap_or(Vec::new()).iter() {
call = call.add_scope(scope);
}
let mut ostream = match writer_from_opts(opt.value_of("out")) {
Ok(mut f) => f,
Err(io_err) => return Err(DoitError::IoError(opt.value_of("out").unwrap_or("-").to_string(), io_err)),
};
match match protocol {
CallType::Standard => call.doit().await,
_ => unreachable!()
} {
Err(api_err) => Err(DoitError::ApiError(api_err)),
Ok((mut response, output_schema)) => {
let mut value = json::value::to_value(&output_schema).expect("serde to work");
remove_json_null_values(&mut value);
json::to_writer_pretty(&mut ostream, &value).unwrap();
ostream.flush().unwrap();
Ok(())
}
}
}
}
async fn _doit(&self, dry_run: bool) -> Result<Result<(), DoitError>, Option<InvalidOptionsError>> {
let mut err = InvalidOptionsError::new();
let mut call_result: Result<(), DoitError> = Ok(());
@@ -3761,12 +4148,18 @@ where
("locations-ekm-connections-test-iam-permissions", Some(opt)) => {
call_result = self._projects_locations_ekm_connections_test_iam_permissions(opt, dry_run, &mut err).await;
},
("locations-ekm-connections-verify-connectivity", Some(opt)) => {
call_result = self._projects_locations_ekm_connections_verify_connectivity(opt, dry_run, &mut err).await;
},
("locations-generate-random-bytes", Some(opt)) => {
call_result = self._projects_locations_generate_random_bytes(opt, dry_run, &mut err).await;
},
("locations-get", Some(opt)) => {
call_result = self._projects_locations_get(opt, dry_run, &mut err).await;
},
("locations-get-ekm-config", Some(opt)) => {
call_result = self._projects_locations_get_ekm_config(opt, dry_run, &mut err).await;
},
("locations-key-rings-create", Some(opt)) => {
call_result = self._projects_locations_key_rings_create(opt, dry_run, &mut err).await;
},
@@ -3806,6 +4199,12 @@ where
("locations-key-rings-crypto-keys-crypto-key-versions-patch", Some(opt)) => {
call_result = self._projects_locations_key_rings_crypto_keys_crypto_key_versions_patch(opt, dry_run, &mut err).await;
},
("locations-key-rings-crypto-keys-crypto-key-versions-raw-decrypt", Some(opt)) => {
call_result = self._projects_locations_key_rings_crypto_keys_crypto_key_versions_raw_decrypt(opt, dry_run, &mut err).await;
},
("locations-key-rings-crypto-keys-crypto-key-versions-raw-encrypt", Some(opt)) => {
call_result = self._projects_locations_key_rings_crypto_keys_crypto_key_versions_raw_encrypt(opt, dry_run, &mut err).await;
},
("locations-key-rings-crypto-keys-crypto-key-versions-restore", Some(opt)) => {
call_result = self._projects_locations_key_rings_crypto_keys_crypto_key_versions_restore(opt, dry_run, &mut err).await;
},
@@ -3872,6 +4271,9 @@ where
("locations-list", Some(opt)) => {
call_result = self._projects_locations_list(opt, dry_run, &mut err).await;
},
("locations-update-ekm-config", Some(opt)) => {
call_result = self._projects_locations_update_ekm_config(opt, dry_run, &mut err).await;
},
_ => {
err.issues.push(CLIError::MissingMethodError("projects".to_string()));
writeln!(io::stderr(), "{}\n", opt.usage()).ok();
@@ -3951,7 +4353,7 @@ where
async fn main() {
let mut exit_status = 0i32;
let arg_data = [
("projects", "methods: 'locations-ekm-config-get-iam-policy', 'locations-ekm-config-set-iam-policy', 'locations-ekm-config-test-iam-permissions', 'locations-ekm-connections-create', 'locations-ekm-connections-get', 'locations-ekm-connections-get-iam-policy', 'locations-ekm-connections-list', 'locations-ekm-connections-patch', 'locations-ekm-connections-set-iam-policy', 'locations-ekm-connections-test-iam-permissions', 'locations-generate-random-bytes', 'locations-get', 'locations-key-rings-create', 'locations-key-rings-crypto-keys-create', 'locations-key-rings-crypto-keys-crypto-key-versions-asymmetric-decrypt', 'locations-key-rings-crypto-keys-crypto-key-versions-asymmetric-sign', 'locations-key-rings-crypto-keys-crypto-key-versions-create', 'locations-key-rings-crypto-keys-crypto-key-versions-destroy', 'locations-key-rings-crypto-keys-crypto-key-versions-get', 'locations-key-rings-crypto-keys-crypto-key-versions-get-public-key', 'locations-key-rings-crypto-keys-crypto-key-versions-import', 'locations-key-rings-crypto-keys-crypto-key-versions-list', 'locations-key-rings-crypto-keys-crypto-key-versions-mac-sign', 'locations-key-rings-crypto-keys-crypto-key-versions-mac-verify', 'locations-key-rings-crypto-keys-crypto-key-versions-patch', 'locations-key-rings-crypto-keys-crypto-key-versions-restore', 'locations-key-rings-crypto-keys-decrypt', 'locations-key-rings-crypto-keys-encrypt', 'locations-key-rings-crypto-keys-get', 'locations-key-rings-crypto-keys-get-iam-policy', 'locations-key-rings-crypto-keys-list', 'locations-key-rings-crypto-keys-patch', 'locations-key-rings-crypto-keys-set-iam-policy', 'locations-key-rings-crypto-keys-test-iam-permissions', 'locations-key-rings-crypto-keys-update-primary-version', 'locations-key-rings-get', 'locations-key-rings-get-iam-policy', 'locations-key-rings-import-jobs-create', 'locations-key-rings-import-jobs-get', 'locations-key-rings-import-jobs-get-iam-policy', 'locations-key-rings-import-jobs-list', 'locations-key-rings-import-jobs-set-iam-policy', 'locations-key-rings-import-jobs-test-iam-permissions', 'locations-key-rings-list', 'locations-key-rings-set-iam-policy', 'locations-key-rings-test-iam-permissions' and 'locations-list'", vec![
("projects", "methods: 'locations-ekm-config-get-iam-policy', 'locations-ekm-config-set-iam-policy', 'locations-ekm-config-test-iam-permissions', 'locations-ekm-connections-create', 'locations-ekm-connections-get', 'locations-ekm-connections-get-iam-policy', 'locations-ekm-connections-list', 'locations-ekm-connections-patch', 'locations-ekm-connections-set-iam-policy', 'locations-ekm-connections-test-iam-permissions', 'locations-ekm-connections-verify-connectivity', 'locations-generate-random-bytes', 'locations-get', 'locations-get-ekm-config', 'locations-key-rings-create', 'locations-key-rings-crypto-keys-create', 'locations-key-rings-crypto-keys-crypto-key-versions-asymmetric-decrypt', 'locations-key-rings-crypto-keys-crypto-key-versions-asymmetric-sign', 'locations-key-rings-crypto-keys-crypto-key-versions-create', 'locations-key-rings-crypto-keys-crypto-key-versions-destroy', 'locations-key-rings-crypto-keys-crypto-key-versions-get', 'locations-key-rings-crypto-keys-crypto-key-versions-get-public-key', 'locations-key-rings-crypto-keys-crypto-key-versions-import', 'locations-key-rings-crypto-keys-crypto-key-versions-list', 'locations-key-rings-crypto-keys-crypto-key-versions-mac-sign', 'locations-key-rings-crypto-keys-crypto-key-versions-mac-verify', 'locations-key-rings-crypto-keys-crypto-key-versions-patch', 'locations-key-rings-crypto-keys-crypto-key-versions-raw-decrypt', 'locations-key-rings-crypto-keys-crypto-key-versions-raw-encrypt', 'locations-key-rings-crypto-keys-crypto-key-versions-restore', 'locations-key-rings-crypto-keys-decrypt', 'locations-key-rings-crypto-keys-encrypt', 'locations-key-rings-crypto-keys-get', 'locations-key-rings-crypto-keys-get-iam-policy', 'locations-key-rings-crypto-keys-list', 'locations-key-rings-crypto-keys-patch', 'locations-key-rings-crypto-keys-set-iam-policy', 'locations-key-rings-crypto-keys-test-iam-permissions', 'locations-key-rings-crypto-keys-update-primary-version', 'locations-key-rings-get', 'locations-key-rings-get-iam-policy', 'locations-key-rings-import-jobs-create', 'locations-key-rings-import-jobs-get', 'locations-key-rings-import-jobs-get-iam-policy', 'locations-key-rings-import-jobs-list', 'locations-key-rings-import-jobs-set-iam-policy', 'locations-key-rings-import-jobs-test-iam-permissions', 'locations-key-rings-list', 'locations-key-rings-set-iam-policy', 'locations-key-rings-test-iam-permissions', 'locations-list' and 'locations-update-ekm-config'", vec![
("locations-ekm-config-get-iam-policy",
Some(r##"Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set."##),
"Details at http://byron.github.io/google-apis-rs/google_cloudkms1_cli/projects_locations-ekm-config-get-iam-policy",
@@ -4202,6 +4604,28 @@ async fn main() {
Some(false),
Some(true)),
(Some(r##"out"##),
Some(r##"o"##),
Some(r##"Specify the file into which to write the program's output"##),
Some(false),
Some(false)),
]),
("locations-ekm-connections-verify-connectivity",
Some(r##"Verifies that Cloud KMS can successfully connect to the external key manager specified by an EkmConnection. If there is an error connecting to the EKM, this method returns a FAILED_PRECONDITION status containing structured information as described at https://cloud.google.com/kms/docs/reference/ekm_errors."##),
"Details at http://byron.github.io/google-apis-rs/google_cloudkms1_cli/projects_locations-ekm-connections-verify-connectivity",
vec![
(Some(r##"name"##),
None,
Some(r##"Required. The name of the EkmConnection to verify."##),
Some(true),
Some(false)),
(Some(r##"v"##),
Some(r##"p"##),
Some(r##"Set various optional parameters, matching the key=value form"##),
Some(false),
Some(true)),
(Some(r##"out"##),
Some(r##"o"##),
Some(r##"Specify the file into which to write the program's output"##),
@@ -4252,6 +4676,28 @@ async fn main() {
Some(false),
Some(true)),
(Some(r##"out"##),
Some(r##"o"##),
Some(r##"Specify the file into which to write the program's output"##),
Some(false),
Some(false)),
]),
("locations-get-ekm-config",
Some(r##"Returns the EkmConfig singleton resource for a given project and location."##),
"Details at http://byron.github.io/google-apis-rs/google_cloudkms1_cli/projects_locations-get-ekm-config",
vec![
(Some(r##"name"##),
None,
Some(r##"Required. The name of the EkmConfig to get."##),
Some(true),
Some(false)),
(Some(r##"v"##),
Some(r##"p"##),
Some(r##"Set various optional parameters, matching the key=value form"##),
Some(false),
Some(true)),
(Some(r##"out"##),
Some(r##"o"##),
Some(r##"Specify the file into which to write the program's output"##),
@@ -4598,6 +5044,62 @@ async fn main() {
Some(false),
Some(true)),
(Some(r##"out"##),
Some(r##"o"##),
Some(r##"Specify the file into which to write the program's output"##),
Some(false),
Some(false)),
]),
("locations-key-rings-crypto-keys-crypto-key-versions-raw-decrypt",
Some(r##"Decrypts data that was originally encrypted using a raw cryptographic mechanism. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT."##),
"Details at http://byron.github.io/google-apis-rs/google_cloudkms1_cli/projects_locations-key-rings-crypto-keys-crypto-key-versions-raw-decrypt",
vec![
(Some(r##"name"##),
None,
Some(r##"Required. The resource name of the CryptoKeyVersion to use for decryption."##),
Some(true),
Some(false)),
(Some(r##"kv"##),
Some(r##"r"##),
Some(r##"Set various fields of the request structure, matching the key=value form"##),
Some(true),
Some(true)),
(Some(r##"v"##),
Some(r##"p"##),
Some(r##"Set various optional parameters, matching the key=value form"##),
Some(false),
Some(true)),
(Some(r##"out"##),
Some(r##"o"##),
Some(r##"Specify the file into which to write the program's output"##),
Some(false),
Some(false)),
]),
("locations-key-rings-crypto-keys-crypto-key-versions-raw-encrypt",
Some(r##"Encrypts data using portable cryptographic primitives. Most users should choose Encrypt and Decrypt rather than their raw counterparts. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT."##),
"Details at http://byron.github.io/google-apis-rs/google_cloudkms1_cli/projects_locations-key-rings-crypto-keys-crypto-key-versions-raw-encrypt",
vec![
(Some(r##"name"##),
None,
Some(r##"Required. The resource name of the CryptoKeyVersion to use for encryption."##),
Some(true),
Some(false)),
(Some(r##"kv"##),
Some(r##"r"##),
Some(r##"Set various fields of the request structure, matching the key=value form"##),
Some(true),
Some(true)),
(Some(r##"v"##),
Some(r##"p"##),
Some(r##"Set various optional parameters, matching the key=value form"##),
Some(false),
Some(true)),
(Some(r##"out"##),
Some(r##"o"##),
Some(r##"Specify the file into which to write the program's output"##),
@@ -5154,6 +5656,34 @@ async fn main() {
Some(false),
Some(true)),
(Some(r##"out"##),
Some(r##"o"##),
Some(r##"Specify the file into which to write the program's output"##),
Some(false),
Some(false)),
]),
("locations-update-ekm-config",
Some(r##"Updates the EkmConfig singleton resource for a given project and location."##),
"Details at http://byron.github.io/google-apis-rs/google_cloudkms1_cli/projects_locations-update-ekm-config",
vec![
(Some(r##"name"##),
None,
Some(r##"Output only. The resource name for the EkmConfig in the format `projects/*/locations/*/ekmConfig`."##),
Some(true),
Some(false)),
(Some(r##"kv"##),
Some(r##"r"##),
Some(r##"Set various fields of the request structure, matching the key=value form"##),
Some(true),
Some(true)),
(Some(r##"v"##),
Some(r##"p"##),
Some(r##"Set various optional parameters, matching the key=value form"##),
Some(false),
Some(true)),
(Some(r##"out"##),
Some(r##"o"##),
Some(r##"Specify the file into which to write the program's output"##),
@@ -5166,7 +5696,7 @@ async fn main() {
let mut app = App::new("cloudkms1")
.author("Sebastian Thiel <byronimo@gmail.com>")
.version("5.0.3+20230106")
.version("5.0.3+20240219")
.about("Manages keys and performs cryptographic operations in a central cloud service, for direct use by other cloud resources and applications. ")
.after_help("All documentation details can be found at http://byron.github.io/google-apis-rs/google_cloudkms1_cli")
.arg(Arg::with_name("url")