From 37909f819c56911d6652c377d1f72d45fd60b789 Mon Sep 17 00:00:00 2001 From: blu3beri Date: Fri, 28 Apr 2023 10:50:46 +0200 Subject: [PATCH] fix(automation): create credential offer working again Signed-off-by: blu3beri --- Cargo.lock | 1 + crates/agent/src/modules/schema.rs | 2 +- crates/automations/Cargo.toml | 1 + crates/automations/src/automations/credential_offer.rs | 7 ++++++- 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e96d0a8e..b9ee3877 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1339,6 +1339,7 @@ version = "0.1.0" dependencies = [ "async-trait", "colored", + "rand", "siera-agent", "siera-cloudagent-python", "siera-logger", diff --git a/crates/agent/src/modules/schema.rs b/crates/agent/src/modules/schema.rs index db472c82..c064cfaf 100644 --- a/crates/agent/src/modules/schema.rs +++ b/crates/agent/src/modules/schema.rs @@ -3,7 +3,7 @@ use async_trait::async_trait; use serde::{Deserialize, Serialize}; /// Schema response from the ledger -#[derive(Debug, Deserialize, Serialize)] +#[derive(Debug, Deserialize, Serialize, Default)] pub struct Schema { /// Version of the schema pub ver: String, diff --git a/crates/automations/Cargo.toml b/crates/automations/Cargo.toml index 9c0ff623..0a032dd9 100644 --- a/crates/automations/Cargo.toml +++ b/crates/automations/Cargo.toml @@ -17,3 +17,4 @@ siera-logger = { path = "../logger", version = "0.*" } siera-agent = { path = "../agent", version = "0.*" } colored = "2.0.0" async-trait = "0.1.51" +rand = "0.8.5" diff --git a/crates/automations/src/automations/credential_offer.rs b/crates/automations/src/automations/credential_offer.rs index 0383b4b1..5c2492b6 100644 --- a/crates/automations/src/automations/credential_offer.rs +++ b/crates/automations/src/automations/credential_offer.rs @@ -2,6 +2,7 @@ use crate::{ automations::create_credential_definition::CreateCredentialDefinition, error::{Error, Result}, }; +use rand::RngCore; use siera_agent::modules::{ connection::ConnectionModule, credential::{CredentialModule, CredentialOfferOptions}, @@ -61,8 +62,12 @@ impl CredentialOfferAutomation { return Err(Error::ConnectionNotReady.into()); } + let mut rng = rand::thread_rng(); + let version_major = rng.next_u32(); + let version_minor = rng.next_u32(); + let version = format!("{version_major}.{version_minor}"); let create_credential_definition = CreateCredentialDefinition { - version: "1.0", + version: &version, attributes: attribute_keys.clone(), name: "full-credential-offer-automation", };