puppetlabs-puppetdb icon indicating copy to clipboard operation
puppetlabs-puppetdb copied to clipboard

Manifest should validate the passed parameters

Open nogweii opened this issue 11 years ago • 1 comments

I did something stupid:

  class { 'puppetdb':
    disable_ssl    => true,
    listen_port    => 'localhost',
    listen_address => '8000'
  }

Of course, 'localhost' isn't a valid port identifier and I don't have any devices called '8000'. Since I messed up, I got this error from PuppetDB:

2013-11-28 13:11:18,959 ERROR [main] [puppetlabs.utils] Uncaught exception
java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Number
        at com.puppetlabs.jetty$plaintext_connector.invoke(jetty.clj:61)
        at com.puppetlabs.jetty$create_server.invoke(jetty.clj:70)
        at ring.adapter.jetty$run_jetty.invoke(jetty.clj:79)
        at com.puppetlabs.jetty$run_jetty$fn__4565.invoke(jetty.clj:96)
        at clojure.core$with_redefs_fn.invoke(core.clj:6751)
        at com.puppetlabs.jetty$run_jetty.invoke(jetty.clj:95)
        at com.puppetlabs.puppetdb.cli.services$_main$fn__12093.invoke(services.clj:512)
        at clojure.core$binding_conveyor_fn$fn__4107.invoke(core.clj:1836)
        at clojure.lang.AFn.call(AFn.java:18)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:679)
2013-11-28 13:11:18,963 INFO  [Thread-4] [cli.services] Shutdown request received; puppetdb exiting.

Which could have been avoided if puppet threw an error since I passed a string as a port number. :smile:

nogweii avatar Nov 28 '13 21:11 nogweii

I had this exact same problem, thank you for helping me hunt it down.

davidgibbons avatar Mar 05 '14 18:03 davidgibbons