Ori.livneh has submitted this change and it was merged.
Change subject: wmflib: update require_package()
......................................................................
wmflib: update require_package()
Ensure the package resource is created in the scope of its container class,
rather than local scope.
Change-Id: Iaf4438ea406c579ce0c42dd80c94b373502307c2
---
M modules/wmflib/lib/puppet/parser/functions/require_package.rb
1 file changed, 8 insertions(+), 3 deletions(-)
Approvals:
Ori.livneh: Looks good to me, approved
jenkins-bot: Verified
diff --git a/modules/wmflib/lib/puppet/parser/functions/require_package.rb
b/modules/wmflib/lib/puppet/parser/functions/require_package.rb
index 6ff2578..0d7eaaa 100644
--- a/modules/wmflib/lib/puppet/parser/functions/require_package.rb
+++ b/modules/wmflib/lib/puppet/parser/functions/require_package.rb
@@ -15,13 +15,18 @@
#
module Puppet::Parser::Functions
newfunction(:require_package, :arity => -2) do |args|
- args.each do |package_name|
+ Puppet::Parser::Functions.function :create_resources
+ args.flatten.each do |package_name|
class_name = 'packages::' + package_name.tr('-', '_')
unless compiler.topscope.find_hostclass(class_name)
host = Puppet::Resource::Type.new(:hostclass, class_name)
known_resource_types.add_hostclass(host)
- send Puppet::Parser::Functions.function(:create_resources),
- ['package', { package_name => { :ensure => :present } }]
+ cls = Puppet::Parser::Resource.new('class', class_name,
+ :scope => compiler.topscope)
+ catalog.add_resource(cls)
+ host.evaluate_code(cls)
+ compiler.topscope.class_scope(host).function_create_resources(
+ ['package', { package_name => { :ensure => :present } }])
end
send Puppet::Parser::Functions.function(:require), [class_name]
end
--
To view, visit https://gerrit.wikimedia.org/r/172466
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Iaf4438ea406c579ce0c42dd80c94b373502307c2
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Ori.livneh <[email protected]>
Gerrit-Reviewer: Ori.livneh <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits