Puppet runs are intended to be autonomous and idempotent and executed in a distributed fashion. There is no way to prompt for user input.
You can however implement one of the following strategies
Export an environment variable as a facter fact.
The easiest way to do that is to include the word facter in the variable.
In your manifest you then can use the variable foo
if $::foo >= 42
The other way to alter a manifest is to use parameterized classes. A good example of this is the puppetlabs ntp module.
http://docs.puppetlabs.com/learning/modules2 ... (more)