Issue #9657 has been updated by Nigel Kersten.

Randall, Nan and I had a chat about this, and here' s the result of the brain 
dump.

 How the world is:

`puppet device` is a command line tool that behaves like 'agent' in that it 
connects to a master, gets the catalog for each device specified in 
'deviceconfig' (default: /etc/puppet/device.conf) and applies it to the 
devices, but proxied through the agent that the `puppet device` command is 
running on.

The deviceconfig file can contain definitions for more than one device, and is 
restricted to per-device configuraitons (e.g. no defaults, inheritance, etc)


The problem is that we have no facility for quick testing without a master by 
applying a single manifest.

`puppet apply mydevicerules.pp`

This currently fails to apply because apply is designed to apply resources to 
the current node, not to a remote node.

We don't think that we want to automatically have manifests be able to be 
applied to remote devices as it would violate the principle of least surprise, 
where applying a single manifest to a host would result in resources being 
applied to remote resources.


Possible proposals:

`mydevicerules.pp` - A manifest containing at least one resource/rule to be 
applied to a device.

` puppet apply --device=mydevice mydevicerules.pp`
 This would apply the resources to a device called mydevice and whose 
definition is found in `device.conf`

`puppet apply --deviceconfig=/path/to/mydeviceconfig.conf  mydevicerules.pp` 
This could apply the manifest to multiple devices? 

`puppet apply --device=mydevice mixed_local_and_device_resources.pp`
There has been some talk about allowing mixed manifests where some kinds of 
resources would be applied to the remote device, and others to the local node. 
This seems incoherent...


----------------------------------------
Feature #9657: Improve puppet apply to support network device
https://projects.puppetlabs.com/issues/9657

Author: Nan Liu
Status: Needs More Information
Priority: Normal
Assignee: Nan Liu
Category: 
Target version: 2.7.x
Affected Puppet version: 2.7.3
Keywords: network, device
Branch: 


After writing additional network device, it seems reasonable to support device 
in puppet apply. Currently network resources are skipped:

    debug: /Stage[main]//F5_virtualserver[www-http]: Skipping device resources 
because running on a host
    debug: /Stage[main]//F5_virtualserver[www-https]: Skipping device resources 
because running on a host

Rather than having two separate modules with slight differences (see: 
https://github.com/puppetlabs/puppetlabs-f5/issues/42). It makes sense to 
ensure puppet resource and puppet apply also supports --deviceconfig option. 


-- 
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