diff --git a/Cargo.lock b/Cargo.lock
index 161e6ff980b5b0748ab5cf9d63d01cb74449852c..b360a0c04e2efdfd8a28cbc5e0d555ddb6ca363b 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -376,6 +376,15 @@ dependencies = [
  "winapi",
 ]
 
+[[package]]
+name = "ci_info"
+version = "0.10.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "24f638c70e8c5753795cc9a8c07c44da91554a09e4cf11a7326e8161b0a3c45e"
+dependencies = [
+ "envmnt",
+]
+
 [[package]]
 name = "clap"
 version = "2.33.3"
@@ -905,6 +914,7 @@ dependencies = [
  "mockall",
  "once_cell",
  "resiter",
+ "rusty-hook",
  "serde",
  "serde_json",
  "serde_urlencoded",
@@ -1096,6 +1106,16 @@ dependencies = [
  "syn",
 ]
 
+[[package]]
+name = "envmnt"
+version = "0.8.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2d328fc287c61314c4a61af7cfdcbd7e678e39778488c7cb13ec133ce0f4059"
+dependencies = [
+ "fsio",
+ "indexmap",
+]
+
 [[package]]
 name = "envy"
 version = "0.4.2"
@@ -1182,6 +1202,12 @@ dependencies = [
  "winapi",
 ]
 
+[[package]]
+name = "fsio"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c1fd087255f739f4f1aeea69f11b72f8080e9c2e7645cd06955dad4a178a49e3"
+
 [[package]]
 name = "futures"
 version = "0.3.14"
@@ -1308,6 +1334,15 @@ dependencies = [
  "version_check",
 ]
 
+[[package]]
+name = "getopts"
+version = "0.2.21"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"
+dependencies = [
+ "unicode-width",
+]
+
 [[package]]
 name = "getrandom"
 version = "0.1.16"
@@ -1773,6 +1808,12 @@ dependencies = [
  "getrandom 0.2.2",
 ]
 
+[[package]]
+name = "nias"
+version = "0.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ab250442c86f1850815b5d268639dff018c0627022bc1940eb2d642ca1ce12f0"
+
 [[package]]
 name = "nibble_vec"
 version = "0.1.0"
@@ -2289,6 +2330,18 @@ dependencies = [
  "semver",
 ]
 
+[[package]]
+name = "rusty-hook"
+version = "0.11.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "96cee9be61be7e1cbadd851e58ed7449c29c620f00b23df937cb9cbc04ac21a3"
+dependencies = [
+ "ci_info",
+ "getopts",
+ "nias",
+ "toml",
+]
+
 [[package]]
 name = "ryu"
 version = "1.0.5"
diff --git a/Cargo.toml b/Cargo.toml
index 6cbc7bed0b02beb37f1f32fe845c6aee8ca2034b..ca832390ada3550cc5e32c770aceffbe27be3122 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -36,6 +36,7 @@ warp = "0.3"
 duniter-core = { git = "https://git.duniter.org/nodes/rust/duniter-core", features = ["mem"] }
 once_cell = "1.7"
 mockall = "0.9.1"
+rusty-hook = "0.11.2"
 serde_json = "1.0.53"
 tokio = { version = "1.2", features = ["macros", "rt-multi-thread", "time"] }
 unwrap = "1.2.1"
diff --git a/gql/src/entities/network.rs b/gql/src/entities/network.rs
index 59006f8422d8dfa5c828e69d8850fe6d990f5100..094821c9a9dd0567661ff7769f91dfae70d0d609 100644
--- a/gql/src/entities/network.rs
+++ b/gql/src/entities/network.rs
@@ -25,7 +25,7 @@ pub struct PeerCardGva {
     pub endpoints: Vec<String>,
     pub status: String,
     pub signature: String,
-    pub member: bool
+    pub member: bool,
 }
 impl From<duniter_core::dbs::PeerCardDbV1> for PeerCardGva {
     fn from(peer: duniter_core::dbs::PeerCardDbV1) -> Self {