Class: HybridPlatformsConductor::HpcPlugins::Test::OrphanFiles
- Inherits:
-
TestOnlyRemoteNode
- Object
- Plugin
- Test
- TestOnlyRemoteNode
- HybridPlatformsConductor::HpcPlugins::Test::OrphanFiles
- Defined in:
- lib/hybrid_platforms_conductor/hpc_plugins/test/orphan_files.rb
Overview
Test that the node has no orphan files
Defined Under Namespace
Modules: ConfigDslExtension
Constant Summary collapse
- DIRECTORIES_TO_ALWAYS_IGNORE =
List of directories to always ignore
[ '/proc', '/sys/kernel/debug', '/sys/kernel/slab' ]
Constants included from LoggerHelpers
LoggerHelpers::LEVELS_MODIFIERS, LoggerHelpers::LEVELS_TO_STDERR
Instance Attribute Summary
Attributes inherited from Test
#errors, #expected_failure, #name, #node, #platform
Instance Method Summary collapse
-
#test_on_node ⇒ Object
Check my_test_plugin.rb.sample documentation for signature details.
Methods inherited from TestOnlyRemoteNode
Methods inherited from Test
#assert_equal, #assert_match, #error, #executed, #executed?, #initialize, only_on_nodes, only_on_platforms, #to_s
Methods inherited from Plugin
extend_config_dsl_with, #initialize, valid?
Methods included from LoggerHelpers
#err, #init_loggers, #log_component=, #log_debug?, #log_level=, #out, #section, #set_loggers_format, #stderr_device, #stderr_device=, #stderr_displayed?, #stdout_device, #stdout_device=, #stdout_displayed?, #stdouts_to_s, #with_progress_bar
Constructor Details
This class inherits a constructor from HybridPlatformsConductor::Test
Instance Method Details
#test_on_node ⇒ Object
Check my_test_plugin.rb.sample documentation for signature details.
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/hybrid_platforms_conductor/hpc_plugins/test/orphan_files.rb', line 53 def test_on_node { # TODO: Access the user correctly when the user notion will be moved out of the ssh connector "#{@deployer.instance_variable_get(:@actions_executor).connector(:ssh).ssh_user == 'root' ? '' : "#{@nodes_handler.sudo_on(@node)} "}/usr/bin/find / \\( #{@nodes_handler. select_confs_for_node(@node, @config.ignored_orphan_files_paths). inject(DIRECTORIES_TO_ALWAYS_IGNORE) { |merged_paths, paths_to_ignore_info| merged_paths + paths_to_ignore_info[:ignored_paths] }. uniq. map { |dir| "-path #{dir}" }. join(' -o ') } \\) -prune -o -nogroup -nouser -print" => { validator: proc do |stdout| assert_equal stdout, [], "#{stdout.size} orphan files found.", stdout.join("\n") end, timeout: 300 } } end |