El agente de puppet no hace gestión de argumentos de entrada. En el caso de ser erróneo, da el siguiente error:
root@puppettest1:~# puppet agent ..server myserver ..no-daemonize ..verbose ..waitforcert=60 dnsdomainname: Name or service not known /usr/lib/ruby/vendor_ruby/puppet/application/agent.rb:54:in `handle_serve': uninitialized constant Puppet::Network::Handler (NameError) from /usr/lib/ruby/vendor_ruby/puppet/application.rb:363:in `send' from /usr/lib/ruby/vendor_ruby/puppet/application.rb:363:in `parse_options' from /usr/lib/ruby/1.8/optparse.rb:1298:in `call' from /usr/lib/ruby/1.8/optparse.rb:1298:in `parse_in_order' from /usr/lib/ruby/1.8/optparse.rb:1254:in `catch' from /usr/lib/ruby/1.8/optparse.rb:1254:in `parse_in_order' from /usr/lib/ruby/1.8/optparse.rb:1248:in `order!' from /usr/lib/ruby/1.8/optparse.rb:1339:in `permute!' from /usr/lib/ruby/1.8/optparse.rb:1360:in `parse!' from /usr/lib/ruby/vendor_ruby/puppet/application.rb:370:in `parse_options' from /usr/lib/ruby/vendor_ruby/puppet/application.rb:305:in `run' from /usr/lib/ruby/vendor_ruby/puppet/application.rb:416:in `hook' from /usr/lib/ruby/vendor_ruby/puppet/application.rb:305:in `run' from /usr/lib/ruby/vendor_ruby/puppet/application.rb:407:in `exit_on_fail' from /usr/lib/ruby/vendor_ruby/puppet/application.rb:305:in `run' from /usr/lib/ruby/vendor_ruby/puppet/util/command_line.rb:69:in `execute' from /usr/bin/puppet:4
En versiones anteriores como 2.6, se requería añadir a mano en lib/puppet/application/agent.rb la línea
require 'puppet/network/handler'
Para saber qué versión de puppet se está ejecutando
puppet agent --version
En version 2.7, hay que revisar los argumentos de entrada. En nuestro caso, al cortar y pegar, se habían sustituido los — por ..