Issue #7216 has been updated by Garrett Honeycutt.

Each module would need some meta data for the installer.

* name - dnsclient
* description
* variable name - $nameservers
* variable type - string or array
  * could also specify restrictions such as alpha only, alphanumeric, 
ipaddress, ...

The installer could display the name and description and prompt [Y/n] and then 
prompt for each variable and explain the format required, then check the input 
to see that it matches. It could then store the information. Once all the 
modules have been answered the installer could write out the variables and 
values to $MODULEPATH/common/manifests/data.pp.

**data.pp**
<pre>
class common::data {

# dnsclient
$nameservers = ['4.2.2.1', '4.2.2.2']
$searchpath = 'puppetlabs.com'

}
</pre>

For this to happen, we would need to 

* Standardize on the meta data. Preferably adding it to the 
Modulefile/metadata.json that we already use.
  * each variable would need
    * name
    * type
    * validation type
* Have a function to prompt for a given type of data (string or array)
* Have a function to validate user input
* Ability to store this information until the installer is complete
* Output the data to the user
* Optionally write out the data
* Allow the user to override the output path
----------------------------------------
Feature #7216: Optionally have installer on Puppet master configure data for 
base set of modules
https://projects.puppetlabs.com/issues/7216

Author: Garrett Honeycutt
Status: Unreviewed
Priority: Normal
Assignee: 
Category: 
Target version: 
Keywords: 
Branch: 
Affected PE version: 


If I am installing a Puppet Master, it would be nice if it gave me the option 
to enable certain modules. Upon enabling them it would prompt for applicable 
data.

ie:
<pre>
Manage resolver? [Y/n] Y

Please list your name servers, comma delimited: dns1.foo.tld,dns2.foo.tld

Please supply your search path, comma delimited [foo.tld]: eng.foo.tld,foo.tld
</pre>

Then this data could be written and accessed by a module.



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