foursquare / fsqio

A monorepo that holds all of Foursquare's opensource projects
Apache License 2.0
254 stars 54 forks source link

Need documentation on how to deploy Twofishes #11

Open steveha-ziprecruiter opened 8 years ago

steveha-ziprecruiter commented 8 years ago

With the original "twofishes" repo, there were a couple of sentences in the documentation which told how to deploy the Twofishes server: _A better option is to run "./sbt server/assembly" and then use the resulting server/target/server-assembly-VERSION.jar. Serve that with java -jar JARFILE --hfilebasepath /directory

I can't find any documentation at all in the "fsqio" repo. I'm pretty sure that it will be some sort of pants build command such as "pants bundle" but I haven't figured it out yet. Please add some documentation on how to build a standalone .jar file for Twofishes.

steveha-ziprecruiter commented 8 years ago

I have figured this out.

./pants binary src/jvm/io/fsq/twofishes/server:server-bin

This produces a .jar file: dist/server-bin.jar

Despite the directory and jar filenames not including "twofishes" that is in fact a Twofishes .jar file.

Quick test to make sure it works:

java -jar dist/server-bin.jar --hfile_basepath dist/twofishes/latest

Please update the documentation with this information.

mateor commented 8 years ago

Hi - yes you are certainly right. We need to improve the documentation across the board - especially when it comes to interfacing with Pants.

One of our motivations with releasing Fsq.io as a Pants project was that it is an open source build system that we have used internally for many years. We no longer, as a company, had the sbt expertise needed to take the code from our Pants repo and convert it to sbt. That gap caused the open source repos to start languishing - updates required Foursquare engineers to write code and fix bugs that we didn't consume internally, which is hard for a company to get behind.

So Fsq.io is our solution to that - we release the code exactly as we use it. Making this repo and the deployment process was a non-trivial undertaking- we didn't want to let the documentation be a blocker to because we might never get it done :)

I am happy to update the Twofishes README with your suggestion above. We also take pul requests - although that process has yet to be exercised and is a bit ad-hoc at the moment.

Thanks for the patience - I very much appreciate your feedback.