# encoding: utf-8 # copyright: 2015, Dominik Richter # author: Dominik Richter # author: Christoph Hartmann require 'inspec/log' module Inspec::DSL def require_controls(id, &block) opts = { profile_id: id, include_all: false, backend: @backend, conf: @conf, dependencies: @dependencies } ::Inspec::DSL.load_spec_files_for_profile(self, opts, &block) end def include_controls(id, &block) opts = { profile_id: id, include_all: true, backend: @backend, conf: @conf, dependencies: @dependencies } ::Inspec::DSL.load_spec_files_for_profile(self, opts, &block) end alias require_rules require_controls alias include_rules include_controls def require_resource(options = {}) raise 'You must specify a specific resource name when calling require_resource()' if options[:resource].nil? from_profile = options[:profile] || profile_name target_name = options[:as] || options[:resource] res = resource_class(from_profile, options[:resource]) add_resource(target_name, res) end def self.load_spec_files_for_profile(bind_context, opts, &block) dependencies = opts[:dependencies] profile_id = opts[:profile_id] dep_entry = dependencies.list[profile_id] if dep_entry.nil? raise <