use crate::test_utils;
use aws_db_esdk::key_store::client as keystore_client;
use aws_db_esdk::key_store::types::key_store_config::KeyStoreConfig;
use aws_db_esdk::key_store::types::KmsConfiguration;
pub async fn keystore_create_key() -> Result<String, crate::BoxError> {
let key_store_table_name = test_utils::TEST_KEYSTORE_NAME;
let logical_key_store_name = test_utils::TEST_LOGICAL_KEYSTORE_NAME;
let kms_key_arn = test_utils::TEST_KEYSTORE_KMS_KEY_ID;
let sdk_config = aws_config::load_defaults(aws_config::BehaviorVersion::latest()).await;
let key_store_config = KeyStoreConfig::builder()
.kms_client(aws_sdk_kms::Client::new(&sdk_config))
.ddb_client(aws_sdk_dynamodb::Client::new(&sdk_config))
.ddb_table_name(key_store_table_name)
.logical_key_store_name(logical_key_store_name)
.kms_configuration(KmsConfiguration::KmsKeyArn(kms_key_arn.to_string()))
.build()?;
let keystore = keystore_client::Client::from_conf(key_store_config)?;
let new_key = keystore.create_key().send().await?;
Ok(new_key.branch_key_identifier.unwrap())
}