Hello Rob Thanks for that information. *lein uberjar *worked. But it built a jar that does not contain every library necessary to run PuppetDB.
Some, truncated, output from lein ... puppetserver test depdency unconfigured (ignoring) -- blah blah blah --- Warning: The Main-Class specified does not exist within the jar. It may not be executable as expected. A gen-class directive may be missing in the namespace which contains the main method, or the namespace has not been AOT-compiled. Created /home/simont/puppetdb/target/puppetdb-5.3.0-SNAPSHOT.jar Warning: The Main-Class specified does not exist within the jar. It may not be executable as expected. A gen-class directive may be missing in the namespace which contains the main method, or the namespace has not been AOT-compiled. Created /home/simont/puppetdb/target/test/puppetdb-5.3.0-SNAPSHOT-test.jar Created /home/simont/puppetdb/target/puppetdb.jar I haven't got a config file yet but this is what happens when I run PuppetDB ... java -cp target/puppetdb.jar clojure.main -m puppetlabs.puppetdb.core.services Exception in thread "main" java.io.FileNotFoundException: Could not locate puppetlabs/puppetdb/core/services__init.class or puppetlabs/puppetdb/core/services.clj on classpath. at clojure.lang.RT.load(RT.java:463) at clojure.lang.RT.load(RT.java:426) at clojure.core$load$fn__6548.invoke(core.clj:6046) at clojure.core$load.invokeStatic(core.clj:6045) at clojure.core$load.doInvoke(core.clj:6029) at clojure.lang.RestFn.invoke(RestFn.java:408) at clojure.core$load_one.invokeStatic(core.clj:5848) at clojure.core$load_one.invoke(core.clj:5843) at clojure.core$load_lib$fn__6493.invoke(core.clj:5888) at clojure.core$load_lib.invokeStatic(core.clj:5887) at clojure.core$load_lib.doInvoke(core.clj:5868) at clojure.lang.RestFn.applyTo(RestFn.java:142) at clojure.core$apply.invokeStatic(core.clj:659) at clojure.core$load_libs.invokeStatic(core.clj:5925) at clojure.core$load_libs.doInvoke(core.clj:5909) at clojure.lang.RestFn.applyTo(RestFn.java:137) at clojure.core$apply.invokeStatic(core.clj:659) at clojure.core$require.invokeStatic(core.clj:5947) at clojure.main$main_opt.invokeStatic(main.clj:317) at clojure.main$main_opt.invoke(main.clj:313) at clojure.main$main.invokeStatic(main.clj:424) at clojure.main$main.doInvoke(main.clj:387) at clojure.lang.RestFn.applyTo(RestFn.java:137) at clojure.lang.Var.applyTo(Var.java:702) at clojure.main.main(main.java:37) And inspecting the jar .... jar -tf target/puppetdb.jar | grep core | grep services puppetlabs/trapperkeeper/services/status/status_core.clj puppetlabs/trapperkeeper/services/watcher/filesystem_watch_core.clj puppetlabs/trapperkeeper/services/metrics/metrics_core.clj puppetlabs/trapperkeeper/services/webrouting/webrouting_service_core.clj puppetlabs/trapperkeeper/services/webserver/jetty9_core.clj puppetlabs/trapperkeeper/services/scheduler/scheduler_core.clj META-INF/services/com.fasterxml.jackson.core.ObjectCodec META-INF/services/com.fasterxml.jackson.core.JsonFactory This file does exist in the jar however, *puppetlabs/puppetdb/core.clj*. Simon On Saturday, June 30, 2018 at 9:44:46 AM UTC+10, Rob Browning wrote: > > Simon Tideswell <[email protected] <javascript:>> writes: > > > No, I'm not trying to do anything fancy. I just wanted to use PuppetDB > on a > > Ubuntu 18 server so that I can access the data with PuppetBoard. I can > see > > that Canonical provided a package for PuppetDB on U14. I actually used > the > > same Package on a U16 server with good results. But the U14 and U16 > servers > > were running Puppet 3.8.x. Now that I'm using Puppet 5 on U18 I thought > it > > was high time that I used a newer PuppetDB package. Canonical don't > provide > > one, there doesn't appear to be one at apt.puppetlabs.com and the > > instructions for compiling from source are broken, so I was a bit stuck. > > It's not a high priority, but I find PuppetBoard useful (from a sysadmin > > perspective). > > I just noticed something that might be relevant from your earlier > message, and I'll plan to investigate Monday and get back to you, but in > any case, if you'd like an interim fix, and are comfortable just running > puppetdb directly, you should be able to do this: > > lein uberjar > > and then run puppetdb directly: > > java -cp target/puppetdb.jar clojure.main \ > -m puppetlabs.puppetdb.core services \ > -c your-config-file > > Of course you might also want to add some jvm heap arguments, etc. > > And unless the data's not very important, I'd suggest sticking with > checkouts of releases, i.e. "git checkout 5.2.2" (before you build the > uberjar) etc. > > Hope this helps > -- > Rob Browning > -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/f7379309-97db-4c93-bd97-d92f7cf5efb7%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
