Issue #4404 has been updated by Markus Roberts.

Status changed from Ready for Testing to Closed

commit:037bb329f090ce86227fc62b51d081831fa9de03 [#4404] Remove requirement for 
source on Parser::Resource::Param

----------------------------------------
Bug #4404: Should allow Stage[main] on left side of a relationship
http://projects.puppetlabs.com/issues/4404

Author: Jeff McCune
Status: Closed
Priority: Normal
Assigned to: Markus Roberts
Category: stages
Target version: 2.6.1
Affected version: 2.6.1rc1
Keywords: Stage[main], stage, run-stages, relationship, source, left
Branch: http://github.com/nicklewis/puppet/tree/ticket/2.6.x/4404


Overview
========

    Stage[main] -> Stage[last]

This syntax should work, but does not in puppet 2.6.0 and 2.6.1rc1.

Expected Behavior
=================
Stage[main] is a resource like any other and specification on the left hand 
side of a relationship declaration should establish a "before" relationship to 
the Stage resource specified on the right hand side of the relationship 
declaration.

Actual Behavior
===============
When Stage[main] is on the left hand side of a relationship resource 
declaration, the following error is produced by puppet:

    source is a required option for Puppet::Parser::Resource::Param

Steps to Reproduce
==================
An acceptance test is being added to puppet-acceptance at: 
http://github.com/puppetlabs/puppet-acceptance

    stage { [ "pre", "post" ]: }
    Stage["pre"] -> Stage["main"] -> Stage["post"]
    class one   { notify { "class one, first stage":   } }
    class two   { notify { "class two, second stage":  } }
    class three { notify { "class three, third stage": } }
    class { "one": stage => pre }
    class { "two": }
    class { "three": stage => post }

Additional Information
======================

The trace for this error is:

<pre>
/Users/jeff/plabs/puppet/lib/puppet/util/errors.rb:60:in `fail'
/Users/jeff/plabs/puppet/lib/puppet/parser/functions/include.rb:22:in 
`function_include'
/Users/jeff/plabs/puppet/lib/puppet/parser/ast/function.rb:34:in `send'
/Users/jeff/plabs/puppet/lib/puppet/parser/ast/function.rb:34:in `evaluate'
/Users/jeff/plabs/puppet/lib/puppet/parser/ast.rb:72:in `safeevaluate'
/Users/jeff/plabs/puppet/lib/puppet/parser/ast/astarray.rb:35:in `evaluate'
/Users/jeff/plabs/puppet/lib/puppet/parser/ast/astarray.rb:34:in `collect'
/Users/jeff/plabs/puppet/lib/puppet/parser/ast/astarray.rb:34:in `evaluate'
/Users/jeff/plabs/puppet/lib/puppet/parser/ast.rb:72:in `safeevaluate'
/Users/jeff/plabs/puppet/lib/puppet/resource/type.rb:75:in `evaluate_code'
/Users/jeff/plabs/puppet/lib/puppet/parser/resource.rb:70:in `evaluate'
/Users/jeff/plabs/puppet/lib/puppet/parser/compiler.rb:296:in `evaluate_main'
/Users/jeff/plabs/puppet/lib/puppet/parser/compiler.rb:104:in `compile'
/Users/jeff/plabs/puppet/lib/puppet/parser/compiler.rb:18:in `compile'
/Users/jeff/plabs/puppet/lib/puppet/indirector/catalog/compiler.rb:77:in 
`compile'
/Users/jeff/plabs/puppet/lib/puppet/util.rb:180:in `benchmark'
/Users/jeff/plabs/puppet/lib/puppet/indirector/catalog/compiler.rb:75:in 
`compile'
/Users/jeff/plabs/puppet/lib/puppet/indirector/catalog/compiler.rb:34:in `find'
/Users/jeff/plabs/puppet/lib/puppet/indirector/indirection.rb:193:in `find'
/Users/jeff/plabs/puppet/lib/puppet/indirector.rb:50:in `find'
/Users/jeff/plabs/puppet/lib/puppet/application/apply.rb:112:in `main'
/Users/jeff/plabs/puppet/lib/puppet/application/apply.rb:35:in `run_command'
/Users/jeff/plabs/puppet/lib/puppet/application.rb:300:in `run'
/Users/jeff/plabs/puppet/lib/puppet/application.rb:397:in `exit_on_fail'
/Users/jeff/plabs/puppet/lib/puppet/application.rb:300:in `run'
/Users/jeff/plabs/puppet/lib/puppet/util/command_line.rb:55:in `execute'
/Users/jeff/plabs/puppet/bin/puppet:4
/Users/jeff/plabs/puppet/lib/puppet/parser/compiler.rb:21:in `compile'
/Users/jeff/plabs/puppet/lib/puppet/indirector/catalog/compiler.rb:77:in 
`compile'
/Users/jeff/plabs/puppet/lib/puppet/util.rb:180:in `benchmark'
/Users/jeff/plabs/puppet/lib/puppet/indirector/catalog/compiler.rb:75:in 
`compile'
/Users/jeff/plabs/puppet/lib/puppet/indirector/catalog/compiler.rb:34:in `find'
/Users/jeff/plabs/puppet/lib/puppet/indirector/indirection.rb:193:in `find'
/Users/jeff/plabs/puppet/lib/puppet/indirector.rb:50:in `find'
/Users/jeff/plabs/puppet/lib/puppet/application/apply.rb:112:in `main'
/Users/jeff/plabs/puppet/lib/puppet/application/apply.rb:35:in `run_command'
/Users/jeff/plabs/puppet/lib/puppet/application.rb:300:in `run'
/Users/jeff/plabs/puppet/lib/puppet/application.rb:397:in `exit_on_fail'
/Users/jeff/plabs/puppet/lib/puppet/application.rb:300:in `run'
/Users/jeff/plabs/puppet/lib/puppet/util/command_line.rb:55:in `execute'
/Users/jeff/plabs/puppet/bin/puppet:4
</pre>


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
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-bugs?hl=en.

Reply via email to