Unfortunately I haven't migrated to 3.x (some dynamic scope issues, fix is
already mind-brewed), so 2.7.19 will have to do:
Class:
[root@master:/etc/puppet/dev/modules/example/example-test]# cat
manifests/init.pp
class example-test {
file { '/a':
source => "puppet:///modules/itsis-test/a",
}
}
----------------
[root@master:/etc/puppet/dev/modules/example/example-test]# cat files/a
asdf
----------------
Node class definition:
----------------
class example-server::client {
include 'example-test'
}
----------------
Node definition:
----------------
node 'client.example.org' inherits 'example_org' {
..(some unused variables)...
include 'itsis-server::timeturner'
}
----------------
Client:
--------------------
# puppet agent --test
info: Retrieving plugin
err: Could not retrieve catalog from remote server: Error 400 on SERVER:
Could not retrieve information from environment production source(s)
modules/example-test/a at
/etc/puppet/dev/modules/example/example-test/manifests/init.pp:4
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run
Server:
--------------------
# puppet master --verbose --no-daemonize --trace
--catalog_terminus=static_compiler --config=/etc/puppet/puppetmasterd.conf
notice: Starting Puppet master version 2.7.19
info: access[^/catalog/([^/]+)$]: allowing 'method' find
info: access[^/catalog/([^/]+)$]: allowing $1 access
info: access[^/node/([^/]+)$]: allowing 'method' find
info: access[^/node/([^/]+)$]: allowing $1 access
info: access[/certificate_revocation_list/ca]: allowing 'method' find
info: access[/certificate_revocation_list/ca]: allowing * access
info: access[/report]: allowing 'method' save
info: access[/report]: allowing * access
info: access[/file]: allowing * access
info: access[/certificate/ca]: adding authentication any
info: access[/certificate/ca]: allowing 'method' find
info: access[/certificate/ca]: allowing * access
info: access[/certificate/]: adding authentication any
info: access[/certificate/]: allowing 'method' find
info: access[/certificate/]: allowing * access
info: access[/certificate_request]: adding authentication any
info: access[/certificate_request]: allowing 'method' find
info: access[/certificate_request]: allowing 'method' save
info: access[/certificate_request]: allowing * access
info: access[/]: adding authentication any
info: Inserting default '/status' (auth true) ACL because none were found
in '/etc/puppet/auth.conf'
info: Expiring the node cache of client.example.org
info: Not using expired node for client.example.org from cache; expired at
Tue Oct 23 02:01:25 +0200 2012
info: Caching node for client.example.org
notice: Compiled catalog for client.example.org in environment dev in 0.08
seconds
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/parameter.rb:165:in
`fail'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/type/file/source.rb:166:in
`metadata'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/catalog/static_compiler.rb:37:in
`find_and_replace_metadata'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/catalog/static_compiler.rb:23:in
`find'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/catalog/static_compiler.rb:15:in
`each'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/catalog/static_compiler.rb:15:in
`find'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/indirection.rb:195:in
`find'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/handler.rb:109:in
`do_find'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/handler.rb:68:in
`send'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/handler.rb:68:in
`process'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick/rest.rb:24:in
`service'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/httpserver.rb:104:in
`service'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:45:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:173:in `call'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:173:in
`start_thread'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:162:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:162:in
`start_thread'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:95:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:92:in `each'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:92:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:23:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:82:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:42:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:41:in
`initialize'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:41:in
`new'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:41:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:38:in
`synchronize'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:38:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/server.rb:126:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/server.rb:141:in
`start'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/daemon.rb:124:in
`start'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application/master.rb:202:in
`main'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application/master.rb:146:in
`run_command'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:309:in
`run'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:416:in
`hook'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:309:in
`run'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:407:in
`exit_on_fail'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:309:in
`run'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:69:in
`execute'
/usr/local/bin/puppet:4
err:
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/parameter.rb:165:in
`fail'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/type/file/source.rb:166:in
`metadata'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/catalog/static_compiler.rb:37:in
`find_and_replace_metadata'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/catalog/static_compiler.rb:23:in
`find'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/catalog/static_compiler.rb:15:in
`each'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/catalog/static_compiler.rb:15:in
`find'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/indirector/indirection.rb:195:in
`find'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/handler.rb:109:in
`do_find'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/handler.rb:68:in
`send'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/handler.rb:68:in
`process'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick/rest.rb:24:in
`service'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/httpserver.rb:104:in
`service'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:45:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:173:in `call'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:173:in
`start_thread'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:162:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:162:in
`start_thread'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:95:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:92:in `each'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:92:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:23:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/1.8/webrick/server.rb:82:in `start'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:42:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:41:in
`initialize'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:41:in
`new'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:41:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:38:in
`synchronize'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/http/webrick.rb:38:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/server.rb:126:in
`listen'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/network/server.rb:141:in
`start'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/daemon.rb:124:in
`start'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application/master.rb:202:in
`main'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application/master.rb:146:in
`run_command'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:309:in
`run'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:416:in
`hook'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:309:in
`run'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:407:in
`exit_on_fail'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/application.rb:309:in
`run'
/usr/local/puppet-2.7.19-1/lib/ruby/site_ruby/1.8/puppet/util/command_line.rb:69:in
`execute'
/usr/local/bin/puppet:4
err: Could not retrieve information from environment production source(s)
modules/itsis-test/a at
/etc/puppet/itsis_dev/modules/itsis/itsis-test/manifests/init.pp:4
info: //client.example.org/Puppet: Retrieving plugin
err: //client.example.org/Puppet: Could not retrieve catalog from remote
server: Error 400 on SERVER: Could not retrieve information from
environment production source(s) modules/itsis-test/a at
/etc/puppet/itsis_dev/modules/itsis/itsis-test/manifests/init.pp:4
warning: //client.example.org/Puppet: Not using cache on failed catalog
err: //client.example.org/Puppet: Could not retrieve catalog; skipping run
-----------------------------------------
Strace of master is here:
http://tools.a2o.si/tmp/static-compiler-strace.out
I hope this helps,
b.
On Tuesday, 23 October 2012 00:38:48 UTC+2, Bostjan Skufca wrote:
>
> Hi all,
>
> the post below was originally intended for this list, but was
> unfortunately misdirected to puppet-users. As some debate has already begun
> around it, I will not duplicate its content here, so please see for
> yourself:
>
> https://groups.google.com/forum/?fromgroups=#!topic/puppet-users/d4F9ESnRTAo
>
> Can you think of any showstoppers for this feature?
>
> b.
>
--
You received this message because you are subscribed to the Google Groups
"Puppet Developers" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/puppet-dev/-/azRBK4CxfUwJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-dev?hl=en.