Sha256: a942e10e1c6fb29001b39f2752b21dbd359a555e54c48bff2a80dd9abf52f0a8
Contents?: true
Size: 1.51 KB
Versions: 29
Compression:
Stored size: 1.51 KB
Contents
require 'hybrid_platforms_conductor/common_config_dsl/file_system_tests' module HybridPlatformsConductor module HpcPlugins module Test # Perform various tests on a HDFS's file system class FileSystemHdfs < HybridPlatformsConductor::Test extend_config_dsl_with CommonConfigDsl::FileSystemTests, :init_file_system_tests # Check my_test_plugin.rb.sample documentation for signature details. def test_on_node # Flatten the paths rules so that we can spot inconsistencies in configuration @config.aggregate_files_rules(@nodes_handler, @node, file_system_type: :hdfs).map do |path, rule_info| [ "if sudo#{rule_info[:context][:sudo_user] ? " -u #{rule_info[:context][:sudo_user]}" : ''} hdfs dfs -ls \"#{path}\" ; then echo 1 ; else echo 0 ; fi", { validator: proc do |stdout, stderr| case stdout.last when '1' error "HDFS path found that should be absent: #{path}" if rule_info[:state] == :absent when '0' error "HDFS path not found that should be present: #{path}" if rule_info[:state] == :present else error "Could not check for existence of HDFS path #{path}", "----- STDOUT:\n#{stdout.join("\n")}----- STDERR:\n#{stderr.join("\n")}" end end, timeout: 5 } ] end.to_h end end end end end
Version data entries
29 entries across 29 versions & 1 rubygems