This is missing something to explicitly point apply at the type under development, so you could still be picking up a pluginsynced definition.
Try: puppet apply --modulepath=directory_above_module -e 'include xxx' Or export RUBYLIB=path_to_module/lib puppet apply -e 'include xxx' > On 25 May 2017, at 20:10, ggun <[email protected]> wrote: > > I am developing the module on the agent and executing the module as puppet > apply -e 'include xxx' -- so I am not using master and but still I am ending > up with same issue. > I have restarted the server to make sure there is not caching that is causing > this issue. > > On Thursday, May 25, 2017 at 2:56:48 PM UTC-4, Richard Clamp wrote: > It sounds like you're developing with a master. If so you're going to need > to rerun the agent on that node and restart the master so that the type is > reloaded and the additional parameters are recognised. > > Generally though you're better off developing with `puppet apply` so the type > code has a shorter lifespan. > > > > On 25 May 2017, at 19:52, ggun <[email protected]> wrote: > > > > evelop > > Yes, I was planning to have a separate type for other ssm commands. But I > > got stuck with the current problem as I am not able to add any parameter > > beside existing. > > > > > > On Thursday, May 25, 2017 at 1:44:15 PM UTC-4, Shawn Ferry wrote: > > > >> On May 25, 2017, at 1:19 PM, ggun <[email protected]> wrote: > >> > >> Thank you, I will try the first option. I remember doing that but it did > >> not avoid the warnings. But I will retry. > >> > >> There is one last help I am looking for. if you have time to look into > >> below issue. > >> > >> https://groups.google.com/forum/#!topic/puppet-dev/9tkiructtYI > >> > >> I have just added new parameter in the type and used the parameter command > >> and also mention in the init.pp ssm module call, but the module fails with > >> error > >> Error: no parameter named 'command' at > >> /etc/puppetlabs/code/environments/production/modules/xxx/manifests/init.pp:67 > >> on Ssm[RHELDiskManager] at > >> /etc/puppetlabs/code/environments/production/modules/xx/manifests/init.pp:67 > >> on node xxx > >> > >> This issue is happening for any new parameter that I am trying to add. Is > >> there a limit to the parameter that I can use in the type ? I don't think > >> I am overusing them. But don't know why is it failing > > > > At a glance I don’t see anything that stands out for why it isn’t working > > for you > > > > > > > > I think in general you shouldn’t call it a parameter command because it may > > be confusing. I think it should work but maybe ‘operation’ instead. > > You will also need to either add some generic arguments option to be able > > to form complete commands or create a bunch of optional parameters that > > apply only to the different operations. > > > > I don’t think this the correct approach. > > > > > > You want to create multiple types e.g. ssm_create ssm_resize maybe > > ssm_snapshot ssm_remove since they all have separate arguments and logic. > > Trying to overload all of it into a single type is going to be harder the > > further you go. > > > > > > > >> > >> > >> > >> On Thursday, May 25, 2017 at 12:17:09 PM UTC-4, Shawn Ferry wrote: > >> > >>> On May 24, 2017, at 10:02 PM, ggun <[email protected]> wrote: > >>> > >>> Hi Experts, > >>> > >>> Need your kind help in command to execute in the puppet provider. Below > >>> is the code snippet of the puppet provider code. > >>> If I run the code with changes as below the code runs without any issue > >>> > >>> cmd="yes | #{create_ssm} create --fs '#{@resource[:fs_type]}' -p > >>> '#{@resource[:volume_group]}' -n '#{@resource[:logical_volume]}' > >>> '#{@resource[:mount_point]}'" > >>> system(cmd) > >> > >> There are any number of bits of software that call themselves ssm. > >> Assuming this is system storage manager why don’t you pass -f to make it > >> non-interactive? > >> > >> commands => :ssm => ‘/usr/bin/ssm’ > >> args=%W[-f create --fs @resource[:fs_type] -p @resource[:volume_group] -n > >> @resource[:logical_volume] @resource[:mount_point]] > >> ssm(*args) > >> > >> > >> If that isn’t an option you could pass a file containing ‘yes’ > >> cmd=%W[ssm create --fs @resource[:fs_type] -p @resource[:volume_group] -n > >> @resource[:logical_volume] @resource[:mount_point]] > >> Puppet::Util::Execution.execute(cmd, :stdinfile => ‘/path/to/yes-file’) > >> > >> > >> > >>> > >>> But when I run code as below > >>> system('yes | ssm(*args)') # I am building args based on input and > >>> ssm is the commands as shown in below code snippet > >>> puppet run fails with error as > >>> Error > >>> sh: -c: line 0: syntax error near unexpected token `*args' > >>> sh: -c: line 0: `yes | ssm(*args)' > >>> > >>> Please help can I fix above run. > >>> > >>> > >>> Code Snippets > >>> > >>> commands :ssm => '/usr/bin/ssm', > >>> > >>> def create > >>> puts "Creating FileSystem” > >>> args = ['create'] > >>> if @resource[:fs_type] > >>> args.push('--fs', @resource[:fs_type]) > >>> else > >>> args.push('--fs', 'xfs') > >>> end > >>> if @resource[:volume_group] > >>> args.push('-p', @resource[:volume_group]) > >>> else > >>> puts "Default volume group will be creted and user needs to manage > >>> it" > >>> end > >>> if @resource[:logical_volume] > >>> args.push('-n', @resource[:logical_volume]) > >>> else > >>> puts "Default logical volume will be creted and user needs to > >>> manage it" > >>> end > >>> if @resource[:device] > >>> args << @resource[:device] > >>> end > >>> if @resource[:mount_point] > >>> FileUtils.mkdir_p(@resource[:mount_point]) unless > >>> File.exists?(@resource[:mount_point]) > >>> args << @resource[:mount_point] > >>> end > >>> p args > >>> # p cmd > >>> system('yes | ssm(*args)’) > >> > >> You really shouldn’t do that. Your invocation is off. The system call is > >> not using you definition > >> of ssm above it’s just finding it on the path and you need to expand your > >> args system takes a string. > >> > >> args=%w(this is s a test) > >> [5] pry(main)> system("yes | echo #{args.join(' ')}") > >> this is s a test > >> > >>> rescue Puppet::ExecutionFailure => detail > >>> raise Puppet::Error, "Could not create filesystem, volume group,and > >>> logical group. Due to error:(#{detail.message})" > >>> > >>> end > >>> > >>> -- > >>> You received this message because you are subscribed to the Google Groups > >>> "Puppet Developers" group. > >>> To unsubscribe from this group and stop receiving emails from it, send an > >>> email to [email protected]. > >>> To view this discussion on the web visit > >>> https://groups.google.com/d/msgid/puppet-dev/6b4548f5-df77-45b8-b6de-849c6ba6144d%40googlegroups.com. > >>> > >>> For more options, visit https://groups.google.com/d/optout. > >> > >> > >> -- > >> You received this message because you are subscribed to the Google Groups > >> "Puppet Developers" group. > >> To unsubscribe from this group and stop receiving emails from it, send an > >> email to [email protected]. > >> To view this discussion on the web visit > >> https://groups.google.com/d/msgid/puppet-dev/66eba19b-7926-4f77-a65d-92887937c7a7%40googlegroups.com. > >> > >> For more options, visit https://groups.google.com/d/optout. > > > > > > -- > > You received this message because you are subscribed to the Google Groups > > "Puppet Developers" group. > > To unsubscribe from this group and stop receiving emails from it, send an > > email to [email protected]. > > To view this discussion on the web visit > > https://groups.google.com/d/msgid/puppet-dev/824cbd6e-b63a-4012-b140-b00ec016d488%40googlegroups.com. > > > > For more options, visit https://groups.google.com/d/optout. > > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Developers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/puppet-dev/358f5565-8ba3-4294-b8ce-e57bb1a31bb4%40googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/923A8774-66B6-4A8A-96CC-2743C7C143E8%40unixbeard.net. For more options, visit https://groups.google.com/d/optout.
