diff options
author | Zhenhui Xie <xiezh0831@yahoo.co.jp> | 2019-10-05 22:10:16 +0800 |
---|---|---|
committer | Matan Kushner <hello@matchai.me> | 2019-10-05 23:10:16 +0900 |
commit | bc9e44f45ca9bbdf681fcfe6e23cd0542a54ec60 (patch) | |
tree | 76661c7b28f4b0ee60fde1e924bcea5e2f334427 | |
parent | e5d37e0a974c4a6ba1fefd07b510a61259e3ac09 (diff) |
fix: Add disable configuration option to kubernetes module (#491)
-rw-r--r-- | src/context.rs | 6 | ||||
-rw-r--r-- | src/modules/kubernetes.rs | 3 | ||||
-rw-r--r-- | src/print.rs | 2 |
3 files changed, 7 insertions, 4 deletions
diff --git a/src/context.rs b/src/context.rs index d440abf02..4a10d2421 100644 --- a/src/context.rs +++ b/src/context.rs @@ -77,14 +77,14 @@ impl<'a> Context<'a> { Module::new(name, config) } - /// Check the `disabled` configuration of the module - pub fn is_module_enabled(&self, name: &str) -> bool { + /// Check if `disabled` option of the module is true in configuration file. + pub fn is_module_disabled_in_config(&self, name: &str) -> bool { let config = self.config.get_module_config(name); // If the segment has "disabled" set to "true", don't show it let disabled = config.and_then(|table| table.as_table()?.get("disabled")?.as_bool()); - disabled != Some(true) + disabled == Some(true) } // returns a new ScanDir struct with reference to current dir_files of context diff --git a/src/modules/kubernetes.rs b/src/modules/kubernetes.rs index 40de44a98..c646455ea 100644 --- a/src/modules/kubernetes.rs +++ b/src/modules/kubernetes.rs @@ -53,6 +53,9 @@ pub fn module<'a>(context: &'a Context) -> Option<Module<'a>> { let mut module = context.new_module("kubernetes"); let config: KubernetesConfig = KubernetesConfig::try_load(module.config); + if config.disabled { + return None; + }; module.set_style(config.style); module.get_prefix().set_value(KUBERNETES_PREFIX); diff --git a/src/print.rs b/src/print.rs index 591ff32ac..891890ee0 100644 --- a/src/print.rs +++ b/src/print.rs @@ -36,7 +36,7 @@ pub fn prompt(args: ArgMatches) { let modules = &prompt_order .par_iter() - .filter(|module| context.is_module_enabled(module)) + .filter(|module| !context.is_module_disabled_in_config(module)) .map(|module| modules::handle(module, &context)) // Compute modules .flatten() .collect::<Vec<Module>>(); // Remove segments set to `None` |