Module: Inspec
  
  
  
  
  
  
  
  
  
  
  
  
    - Defined in:
- lib/inspec/errors.rb,
 lib/inspec/ui.rb,
 lib/inspec/log.rb,
 lib/inspec/rule.rb,
 lib/inspec/shell.rb,
 lib/inspec/config.rb,
 lib/inspec/expect.rb,
 lib/inspec/runner.rb,
 lib/inspec/schema.rb,
 lib/inspec/backend.rb,
 lib/inspec/fetcher.rb,
 lib/inspec/globals.rb,
 lib/inspec/objects.rb,
 lib/inspec/profile.rb,
 lib/inspec/secrets.rb,
 lib/inspec/version.rb,
 lib/inspec/describe.rb,
 lib/inspec/metadata.rb,
 lib/inspec/resource.rb,
 lib/inspec/plugin/v2.rb,
 lib/inspec/plugin/v2.rb,
 lib/inspec/dsl_shared.rb,
 lib/inspec/exceptions.rb,
 lib/inspec/env_printer.rb,
 lib/inspec/objects/tag.rb,
 lib/inspec/runner_mock.rb,
 lib/inspec/objects/list.rb,
 lib/inspec/objects/test.rb,
 lib/inspec/runner_rspec.rb,
 lib/inspec/file_provider.rb,
 lib/inspec/method_source.rb,
 lib/inspec/objects/input.rb,
 lib/inspec/objects/input.rb,
 lib/inspec/objects/value.rb,
 lib/inspec/source_reader.rb,
 lib/inspec/cached_fetcher.rb,
 lib/inspec/input_registry.rb,
 lib/inspec/profile_vendor.rb,
 lib/inspec/require_loader.rb,
 lib/inspec/shell_detector.rb,
 lib/inspec/objects/control.rb,
 lib/inspec/objects/or_test.rb,
 lib/inspec/profile_context.rb,
 lib/inspec/runtime_profile.rb,
 lib/inspec/objects/describe.rb,
 lib/inspec/rspec_extensions.rb,
 lib/inspec/objects/each_loop.rb,
 lib/inspec/plugin/v1/plugins.rb,
 lib/utils/deprecation/errors.rb,
 lib/inspec/dependencies/cache.rb,
 lib/inspec/objects/ruby_helper.rb,
 lib/inspec/control_eval_context.rb,
 lib/inspec/library_eval_context.rb,
 lib/inspec/dependencies/lockfile.rb,
 lib/inspec/dependencies/resolver.rb,
 lib/utils/deprecation/deprecator.rb,
 lib/utils/deprecation/config_file.rb,
 lib/inspec/dependencies/requirement.rb,
 lib/utils/deprecation/global_method.rb,
 lib/inspec/plugin/v1/plugin_types/cli.rb,
 lib/inspec/dependencies/dependency_set.rb,
 lib/inspec/plugin/v1/plugin_types/secret.rb,
 lib/inspec/plugin/v1/plugin_types/fetcher.rb,
 lib/inspec/utils/telemetry/global_methods.rb,
 lib/inspec/plugin/v1/plugin_types/resource.rb,
 lib/plugins/shared/core_plugin_test_helper.rb,
 lib/inspec/plugin/v1/plugin_types/source_reader.rb,
 lib/inspec/base_cli.rb
 
Overview
  
    
author: Dominik Richter author: Christoph Hartmann
   
 
  
Defined Under Namespace
  
    
      Modules: Archive, Backend, DSL, Deprecation, DescribeDslLazyLoader, Exceptions, Formatters, Impact, MethodSource, Plugin, Plugins, Reporters, ResourceBehaviors, ResourceDSL, Resources, RubyHelper, Telemetry, TestDslLazyLoader
    
  
    
      Classes: Attribute, BaseCLI, Cache, CachedFetcher, Config, ConfigError, Control, ControlEvalContext, CyclicDependencyError, DependencySet, Describe, DescribeBase, DirProvider, DuplicateDep, EachLoop, EnvPrinter, Error, Expect, FetcherFailure, FetcherRegistry, FileProvider, FuncTestRunResult, ImpactError, Input, InputRegistry, InspecCLI, LibraryEvalContext, List, Lockfile, Log, Metadata, MockProvider, OrTest, PluginCtl, Profile, ProfileContext, ProfileNotFound, ProfileVendor, RelativeFileProvider, ReporterError, RequireLoader, Requirement, Resolver, Resource, Rule, Runner, RunnerMock, RunnerRspec, RuntimeProfile, Schema, Shell, ShellDetector, SourceReaderRegistry, Tag, TarProvider, Test, UI, UnsatisfiedVersionSpecification, UserInteractionRequired, Value, ZipProvider
    
  
  
    
      Constant Summary
      collapse
    
    
      
        - Fetcher =
          
        
- FetcherRegistry.new 
- SecretsBackend =
          
        
- PluginRegistry.new 
- VERSION =
          
        
- '3.9.3' 
- SourceReader =
          
        
- SourceReaderRegistry.new 
      Class Method Summary
      collapse
    
    
  
  
    Class Method Details
    
      
  
  
    .config_dir  ⇒ Object 
  
  
  
  
    | 
2
3
4 | # File 'lib/inspec/globals.rb', line 2
def self.config_dir
  ENV['INSPEC_CONFIG_DIR'] ? ENV['INSPEC_CONFIG_DIR'] : File.join(Dir.home, '.inspec')
end | 
 
    
      
  
  
    .deprecate(group, msg, opts = {})  ⇒ Object 
  
  
  
  
    | 
4
5
6
7
8 | # File 'lib/utils/deprecation/global_method.rb', line 4
def self.deprecate(group, msg, opts = {})
  config_io = opts.delete(:config_io)
  deprecator = Inspec::Deprecation::Deprecator.new(config_io: config_io)
  deprecator.handle_deprecation(group, msg, opts)
end | 
 
    
      
  
  
    .fetcher(version)  ⇒ Object 
  
  
  
  
    | 
34
35
36
37
38
39 | # File 'lib/inspec/fetcher.rb', line 34
def self.fetcher(version)
  if version != 1
    raise 'Only fetcher version 1 is supported!'
  end
  Inspec::Plugins::Fetcher
end | 
 
    
      
  
  
    .plugin(version, plugin_type = nil)  ⇒ Object 
  
  
  
  
    
Provides the base class that plugin implementors should use.
   
 
  
 
    
      
  
  
    .record_telemetry_data(data_series_name, data_point = nil)  ⇒ Object 
  
  
  
  
    
A Global method to add a data series object to the Telemetry Collection. ‘data_series_name`s are unique, so `:dependency_group` will always return the same object. `data_point` is optional, you may also supply a block with several data points. All data points should allow #to_s
   
 
  
  
    | 
9
10
11
12
13
14
15
16
17
18
19
20 | # File 'lib/inspec/utils/telemetry/global_methods.rb', line 9
def self.record_telemetry_data(data_series_name, data_point = nil)
  coll = Inspec::Telemetry::Collector.instance
  return unless coll.telemetry_enabled?
  ds = coll.find_or_create_data_series(data_series_name)
  return unless ds.enabled?
  if block_given?
    ds << yield
  else
    ds << data_point
  end
end | 
 
    
      
  
  
    .resource(version)  ⇒ Resource 
  
  
  
  
    
Retrieve the base class for creating a new resource. Create classes that inherit from this class.
   
 
  
    | 
75
76
77
78 | # File 'lib/inspec/resource.rb', line 75
def self.resource(version)
  validate_resource_dsl_version!(version)
  Inspec::Plugins::Resource
end | 
 
    
      
  
  
    .secrets(version)  ⇒ Object 
  
  
  
  
    | 
10
11
12
13
14
15 | # File 'lib/inspec/secrets.rb', line 10
def self.secrets(version)
  if version != 1
    raise 'Only secrets version 1 is supported!'
  end
  Inspec::Plugins::Secret
end | 
 
    
      
  
  
    .source_reader(version)  ⇒ Object 
  
  
  
  
    | 
19
20
21
22
23
24 | # File 'lib/inspec/source_reader.rb', line 19
def self.source_reader(version)
  if version != 1
    raise 'Only source readers version 1 is supported!'
  end
  Inspec::Plugins::SourceReader
end | 
 
    
      
  
  
    .src_root  ⇒ Object 
  
  
  
  
    | 
6
7
8 | # File 'lib/inspec/globals.rb', line 6
def self.src_root
  File.expand_path(File.join(__FILE__, '..', '..', '..'))
end | 
 
    
      
  
  
    .validate_resource_dsl_version!(version)  ⇒ Object 
  
  
  
  
    | 
80
81
82 | # File 'lib/inspec/resource.rb', line 80
def self.validate_resource_dsl_version!(version)
  raise 'Only resource version 1 is supported!' if version != 1
end |