summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJay Mundrawala <jdmundrawala@gmail.com>2015-02-08 08:50:52 -0800
committerJay Mundrawala <jdmundrawala@gmail.com>2015-02-08 08:51:29 -0800
commita955967fc934377ca4f7161bf775ff1b6cd5d230 (patch)
tree4691ab505490f8f40bb1d82e7e6beca3f83c8f55
parent3b1df86ecf403071b94e1ce3cb06ec28f106f179 (diff)
downloadchef-a955967fc934377ca4f7161bf775ff1b6cd5d230.tar.gz
Modified dsc_script imports to not use hash rocket
New Syntax: dsc_script 'Foo' do imports "FooModule", "FooResource", "BarResource" ... end or dsc_script 'Foo' do imports "FooModule" ... end
-rw-r--r--lib/chef/resource/dsc_script.rb18
-rw-r--r--lib/chef/util/dsc/configuration_generator.rb6
2 files changed, 15 insertions, 9 deletions
diff --git a/lib/chef/resource/dsc_script.rb b/lib/chef/resource/dsc_script.rb
index 43a64c4628..cf96ef6b7f 100644
--- a/lib/chef/resource/dsc_script.rb
+++ b/lib/chef/resource/dsc_script.rb
@@ -29,6 +29,7 @@ class Chef
@allowed_actions.push(:run)
@action = :run
@resource_name = :dsc_script
+ @imports = {}
end
def code(arg=nil)
@@ -89,12 +90,17 @@ class Chef
)
end
- def imports(arg=nil)
- set_or_return(
- :imports,
- arg,
- :kind_of => [ Hash ]
- )
+ def imports(module_name=nil, *args)
+ if module_name
+ @imports[module_name] ||= []
+ if args.length == 0
+ @imports[module_name] << '*'
+ else
+ @imports[module_name].push(*args)
+ end
+ else
+ @imports
+ end
end
def flags(arg=nil)
diff --git a/lib/chef/util/dsc/configuration_generator.rb b/lib/chef/util/dsc/configuration_generator.rb
index 160f0d0c78..0d7296eae9 100644
--- a/lib/chef/util/dsc/configuration_generator.rb
+++ b/lib/chef/util/dsc/configuration_generator.rb
@@ -97,10 +97,10 @@ Configuration '#{configuration_name}'
def generate_import_resource_statements(imports)
if imports
imports.map do |resource_module, resources|
- if resources.length > 0
- "Import-DscResource -ModuleName #{resource_module} -Name #{resources.join(',')}"
- else
+ if resources.length == 0 || resources.include?('*')
"Import-DscResource -ModuleName #{resource_module}"
+ else
+ "Import-DscResource -ModuleName #{resource_module} -Name #{resources.join(',')}"
end
end
else