Add patch to reduce the number of times the configuration file is accessed, and modify dependencies dropping patch to allow enabling tests during build. Related: rhbz#2084552 Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
194 lines
5.6 KiB
Diff
194 lines
5.6 KiB
Diff
From 9229cb4673aad2cae7605e66bdf2160716e1f694 Mon Sep 17 00:00:00 2001
|
|
From: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
|
|
Date: Thu, 9 Jun 2022 18:34:34 +0200
|
|
Subject: [PATCH 1/4] Update clap dependency to 3.1.18
|
|
|
|
This change replaces clap::App with clap::Command in main.rs file.
|
|
|
|
On commit f3fa925 the clap dependency in Cargo.lock file was updated
|
|
from version 3.0.14 to version 3.1.18.
|
|
|
|
In clap version 3.1.0, clap::App was deprecated in favor of
|
|
clap::Command. This causes warnings during the Keylime agent build due
|
|
to the usage of the deprecated structure.
|
|
|
|
To avoid similar issues in the future, use the tilde dependency version
|
|
requirement to allow versions >= 3.1.18 but < 3.2.0.
|
|
|
|
Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
|
|
---
|
|
Cargo.lock | 76 ++++++++++++++++++++++-------------------------------
|
|
Cargo.toml | 2 +-
|
|
src/main.rs | 2 +-
|
|
3 files changed, 33 insertions(+), 47 deletions(-)
|
|
|
|
diff --git a/Cargo.toml b/Cargo.toml
|
|
index 92f3974..f0c7d39 100644
|
|
--- a/Cargo.toml
|
|
+++ b/Cargo.toml
|
|
@@ -21,7 +21,7 @@ doc = false
|
|
actix-web = { version = "4", features = ["openssl"] }
|
|
base64 = "0.13"
|
|
cfg-if = "1"
|
|
-clap = { version = "3.0.14", features = ["derive"] }
|
|
+clap = { version = "~3.1.18", features = ["derive"] }
|
|
compress-tools = "0.12"
|
|
flate2 = "1.0.4"
|
|
futures = "0.3.6"
|
|
diff --git a/src/main.rs b/src/main.rs
|
|
index 1896104..8540597 100644
|
|
--- a/src/main.rs
|
|
+++ b/src/main.rs
|
|
@@ -51,7 +51,7 @@ mod tpm;
|
|
mod version_handler;
|
|
|
|
use actix_web::{dev::Service, http, middleware, rt, web, App, HttpServer};
|
|
-use clap::{App as ClapApp, Arg};
|
|
+use clap::{Arg, Command as ClapApp};
|
|
use common::*;
|
|
use compress_tools::*;
|
|
use error::{Error, Result};
|
|
--
|
|
2.35.3
|
|
|
|
|
|
From c61e3f389e4bde4d0a318a571c9b3dcf8a62749f Mon Sep 17 00:00:00 2001
|
|
From: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
|
|
Date: Tue, 17 May 2022 18:31:01 +0200
|
|
Subject: [PATCH 2/4] Drop unused dependency rustc-serialize
|
|
|
|
Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
|
|
---
|
|
Cargo.lock | 7 -------
|
|
Cargo.toml | 1 -
|
|
2 files changed, 8 deletions(-)
|
|
|
|
diff --git a/Cargo.toml b/Cargo.toml
|
|
index f0c7d39..0f4e4ab 100644
|
|
--- a/Cargo.toml
|
|
+++ b/Cargo.toml
|
|
@@ -34,7 +34,6 @@ picky-asn1-x509 = "0.6.1"
|
|
pretty_env_logger = "0.4"
|
|
reqwest = {version = "0.11", features = ["json"]}
|
|
rust-ini = "0.17"
|
|
-rustc-serialize = "0.3.24"
|
|
serde = "1.0.80"
|
|
serde_derive = "1.0.80"
|
|
serde_json = { version = "1.0", features = ["raw_value"] }
|
|
--
|
|
2.35.3
|
|
|
|
|
|
From f7b59a6a7739d275ffe15a915eb48a36ceafccdd Mon Sep 17 00:00:00 2001
|
|
From: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
|
|
Date: Tue, 17 May 2022 18:56:50 +0200
|
|
Subject: [PATCH 3/4] Drop unused dependency flate2
|
|
|
|
Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
|
|
---
|
|
Cargo.lock | 1 -
|
|
Cargo.toml | 1 -
|
|
src/tpm.rs | 3 ---
|
|
3 files changed, 5 deletions(-)
|
|
|
|
diff --git a/Cargo.toml b/Cargo.toml
|
|
index 0f4e4ab..69d2eec 100644
|
|
--- a/Cargo.toml
|
|
+++ b/Cargo.toml
|
|
@@ -23,7 +23,6 @@ base64 = "0.13"
|
|
cfg-if = "1"
|
|
clap = { version = "~3.1.18", features = ["derive"] }
|
|
compress-tools = "0.12"
|
|
-flate2 = "1.0.4"
|
|
futures = "0.3.6"
|
|
hex = "0.4"
|
|
libc = "0.2.43"
|
|
diff --git a/src/tpm.rs b/src/tpm.rs
|
|
index 355dd0d..43129f1 100644
|
|
--- a/src/tpm.rs
|
|
+++ b/src/tpm.rs
|
|
@@ -20,8 +20,6 @@ use openssl::{
|
|
pkey::{Id, PKeyRef, Public},
|
|
};
|
|
|
|
-use flate2::{write::ZlibEncoder, Compression};
|
|
-
|
|
use tss_esapi::{
|
|
abstraction::{
|
|
ak,
|
|
@@ -635,7 +633,6 @@ pub(crate) fn quote(
|
|
#[cfg(test)]
|
|
pub mod testing {
|
|
use super::*;
|
|
- use flate2::read::ZlibDecoder;
|
|
use tss_esapi::constants::structure_tags::StructureTag;
|
|
use tss_esapi::structures::{Attest, AttestBuffer, DigestList, Ticket};
|
|
use tss_esapi::tss2_esys::Tss2_MU_TPMT_SIGNATURE_Unmarshal;
|
|
--
|
|
2.35.3
|
|
|
|
|
|
From c3f0b4f603089d38715535f8e16b7a40f413e4de Mon Sep 17 00:00:00 2001
|
|
From: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
|
|
Date: Thu, 9 Jun 2022 16:21:06 +0200
|
|
Subject: [PATCH 4/4] Make wiremock an optional dependency
|
|
|
|
Make a wiremock optional, enabled when the 'testing' feature is enabled.
|
|
The goal is to reduce the number of dependencies, with the downside that
|
|
the test code coverage will drop.
|
|
|
|
Wiremock is currently used only on 'registrar_agent' tests to mock
|
|
responses from the registrar service.
|
|
|
|
Note: wiremock was moved to be an optional regular dependency because
|
|
optional dev-dependencies are not supported.
|
|
see: https://github.com/rust-lang/cargo/issues/1596
|
|
|
|
Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
|
|
---
|
|
Cargo.toml | 7 +++++--
|
|
src/registrar_agent.rs | 1 +
|
|
2 files changed, 6 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/Cargo.toml b/Cargo.toml
|
|
index 69d2eec..5052512 100644
|
|
--- a/Cargo.toml
|
|
+++ b/Cargo.toml
|
|
@@ -43,16 +43,19 @@ tss-esapi = "7.1.0"
|
|
thiserror = "1.0"
|
|
uuid = {version = "0.8", features = ["v4"]}
|
|
zmq = {version = "0.9.2", optional = true}
|
|
+# wiremock was moved to be a regular dependency because optional
|
|
+# dev-dependencies are not supported
|
|
+# see: https://github.com/rust-lang/cargo/issues/1596
|
|
+wiremock = {version = "0.5", optional = true}
|
|
|
|
[dev-dependencies]
|
|
actix-rt = "2"
|
|
-wiremock = "0.5"
|
|
|
|
[features]
|
|
# The features enabled by default
|
|
default = ["with-zmq", "legacy-python-actions"]
|
|
# this should change to dev-dependencies when we have integration testing
|
|
-testing = []
|
|
+testing = ["wiremock"]
|
|
# Whether the agent should be compiled with support to listen for notification
|
|
# messages on ZeroMQ
|
|
with-zmq = ["zmq"]
|
|
diff --git a/src/registrar_agent.rs b/src/registrar_agent.rs
|
|
index 85b5931..b02ba48 100644
|
|
--- a/src/registrar_agent.rs
|
|
+++ b/src/registrar_agent.rs
|
|
@@ -149,6 +149,7 @@ pub(crate) async fn do_register_agent(
|
|
}
|
|
}
|
|
|
|
+#[cfg(feature = "testing")]
|
|
#[cfg(test)]
|
|
mod tests {
|
|
use super::*;
|
|
--
|
|
2.35.3
|
|
|