-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
microsoft.genpolicy: never log already existing policy annotation
- Loading branch information
Showing
3 changed files
with
69 additions
and
1 deletion.
There are no files selected for viewing
File renamed without changes.
63 changes: 63 additions & 0 deletions
63
...es/by-name/microsoft/genpolicy/0009-genpolicy-do-not-log-policy-annotation-in-debug.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 | ||
From: jmxnzo <[email protected]> | ||
Date: Mon, 9 Dec 2024 09:56:56 +0100 | ||
Subject: [PATCH] genpolicy: do not log policy annotation in 'debug' | ||
|
||
--- | ||
src/tools/genpolicy/src/obj_meta.rs | 37 ++++++++++++++++++++++++++++- | ||
1 file changed, 36 insertions(+), 1 deletion(-) | ||
|
||
diff --git a/src/tools/genpolicy/src/obj_meta.rs b/src/tools/genpolicy/src/obj_meta.rs | ||
index 3da75fc0ff67068af04ea98a6dfdc6989961e17c..55ec12f4a9261e340950dc94afe42092d18bc859 100644 | ||
--- a/src/tools/genpolicy/src/obj_meta.rs | ||
+++ b/src/tools/genpolicy/src/obj_meta.rs | ||
@@ -8,9 +8,10 @@ | ||
|
||
use serde::{Deserialize, Serialize}; | ||
use std::collections::BTreeMap; | ||
+use std::fmt; | ||
|
||
/// See ObjectMeta in the Kubernetes API reference. | ||
-#[derive(Clone, Debug, Default, Serialize, Deserialize)] | ||
+#[derive(Clone, Default, Serialize, Deserialize)] | ||
pub struct ObjectMeta { | ||
#[serde(skip_serializing_if = "Option::is_none")] | ||
pub name: Option<String>, | ||
@@ -43,3 +44,37 @@ impl ObjectMeta { | ||
self.namespace.as_ref().cloned() | ||
} | ||
} | ||
+ | ||
+impl fmt::Debug for ObjectMeta { | ||
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { | ||
+ let mut debug_struct = f.debug_struct("ObjectMeta"); | ||
+ | ||
+ if let Some(ref name) = self.name { | ||
+ debug_struct.field("name", name); | ||
+ } | ||
+ if let Some(ref generate_name) = self.generateName { | ||
+ debug_struct.field("generateName", generate_name); | ||
+ } | ||
+ if let Some(ref labels) = self.labels { | ||
+ debug_struct.field("labels", labels); | ||
+ } | ||
+ if let Some(ref annotations) = self.annotations { | ||
+ let truncated_annotations: BTreeMap<_, _> = annotations | ||
+ .iter() | ||
+ .map(|(key, value)| { | ||
+ if value.len() > 4096 { | ||
+ (key, format!("{}<... truncated ...>", &value[..4096].to_string())) | ||
+ } else { | ||
+ (key, value.to_string()) | ||
+ } | ||
+ }) | ||
+ .collect(); | ||
+ debug_struct.field("annotations", &truncated_annotations); | ||
+ } | ||
+ if let Some(ref namespace) = self.namespace { | ||
+ debug_struct.field("namespace", namespace); | ||
+ } | ||
+ | ||
+ debug_struct.finish() | ||
+ } | ||
+} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters