Jently icon indicating copy to clipboard operation
Jently copied to clipboard

Turn Jently into a daemon. Distributed it as a RubyGem.

Open auxesis opened this issue 11 years ago • 26 comments

Fixes #34.

Per #34, the main benefits of this PR are:

  • Setup is now gem install jently + setup a config file + start the Jently daemon.
  • Users can run multiple instances of Jently pointing at different repos by firing up multiple Jently daemons.
  • Users can deploy Jently with configuration management easily, by using and adapting the shipped Puppet module.
  • Contributors to Jently no longer need to worry about accidentally committing and publicly pushing config.yaml.erb into their fork.

There's a lot of changes to digest, so I'm looking forward to any feedback you have.

I didn't tackle a full on refactoring of Jently as I wanted to keep as much of Jently the same as possible. I may submit another PR in the next few weeks to make the code a little more consistent.

@vaneyckt once you sign off on the PR and merge, you can do the honours of releasing to RubyGems.org.

auxesis avatar Sep 06 '13 12:09 auxesis

Wow. That's a lot of code :+1:. Sorry for the late response, I haven't been behind a computer much this weekend. I'll start looking at this tonight and leave comments wherever I'm having trouble :).

vaneyckt avatar Sep 09 '13 09:09 vaneyckt

No worries at all.

I tried to keep the changes to a minimum, but there was a bit of surgery required. :hocho:

I've had this running in production the last few days, and it seems to be working well. Looking forward to your feedback!

auxesis avatar Sep 09 '13 09:09 auxesis

I'm gonna go over this in more detail tomorrow. To be fair, I underestimated just how much new stuff there was in here. Also I noticed you used some cmd line parser approaches that I've seen before (but never used - I tend to use the much more basic Trollop), so this is an ideal chance for me to learn it :+1:.

Also, lots of other nice stuff, like using gemspec in the Gemfile :gift_heart:

I hope you don't mind if I want to use this as an opportunity to learn, and make sure I understand it all, before I hit the merge button.

Just to be clear: this can easily take a few days. Just wanna be clear about that so you don't think I've forgotten about this. Although I'm sure I'll be pestering you with questions in the meantime :).

vaneyckt avatar Sep 09 '13 22:09 vaneyckt

No worries at all!

There are certainly a lot of changes, and I definitely want you to feel comfortable with all the changes I've made before you merge them.

Ask all the questions. :metal:

auxesis avatar Sep 09 '13 22:09 auxesis

Just to keep you up-to-date: I'm having some people visiting for a while. I thought I could sneak in going through this code every now and then, but it turns out I was wrong. Just so you know why I haven't been v active. I'll definitely have time on Tuesday.

Sorry for the delay :/

vaneyckt avatar Sep 13 '13 10:09 vaneyckt

No worries. I'm in Europe atm so will have a bit more crossover with your hours wise. :smile:

auxesis avatar Sep 16 '13 07:09 auxesis

I've been told by feylya (https://twitter.com/feylya) - all around awesome guy and brilliant devops - that you were scaring the ppl at monitorama with tales of airplane disasters :)

vaneyckt avatar Sep 20 '13 13:09 vaneyckt

Heh, yeah. Just getting back into work today. :grimacing:

I'll go through all your feedback later today. :v:

auxesis avatar Sep 23 '13 13:09 auxesis

brilliant \o/

I won't be near a computer tomorrow (and possibly the day after), so if you don't hear from me for a few days, that's why :) Hope you you had a good time at monitorama :)

vaneyckt avatar Sep 23 '13 13:09 vaneyckt

Yo, I finally got around to going through your feedback.

I'm in Tel Aviv atm, so will be on-and-offline until next Wednesday, but will try and get back to you a bit more quickly.

auxesis avatar Sep 27 '13 19:09 auxesis

I think this is ready to go in. The only reason I haven't pushed the button yet is because of https://github.com/vaneyckt/Jently/issues/41. Just waiting for Github to get back. If they haven't gotten back to me by Wednesday I'll merge this regardless \o/

vaneyckt avatar Sep 30 '13 16:09 vaneyckt

Alright, I'm gonna merge the bugfix in #41 into our internal build and test it for a bit.

Nice work tracking down that bug - I tried for a few hours last week and was stumped. :neutral_face:

auxesis avatar Oct 01 '13 09:10 auxesis

I just noticed that there were a bunch of failing tests due to the removal of the JSON gem, so I've added that back in.

Other than that, I think this PR is in a pretty good position for merging.

auxesis avatar Oct 02 '13 11:10 auxesis

you're right. My mistake :/

vaneyckt avatar Oct 02 '13 11:10 vaneyckt

@auxesis are you sure Marc's code is working for you? It caused failing spec tests for me. I've since added some code to fix this.

vaneyckt avatar Oct 02 '13 11:10 vaneyckt

Yeah you're right, I thought I was running this in production but I had an earlier gem deployed.

I'll revert my last commit so everything merges cleanly.

auxesis avatar Oct 10 '13 08:10 auxesis

Alright, everything should merge fine now! :tada:

auxesis avatar Oct 10 '13 08:10 auxesis

brilliant. I'll merge it over the weekend. Way too busy with work atm :cry:

vaneyckt avatar Oct 11 '13 09:10 vaneyckt

Actually you should hold off. :disappointed:

We've been having issues with this in production the last few days, and I'm doing some refactoring around the place to improve the logging and get a better understanding of why builds are being constantly triggered. :poop:

auxesis avatar Oct 11 '13 11:10 auxesis

OK, I made a whole bunch of logging improvements to attempt to make Jently's behaviour more transparent. :mag:

I've got it working and we haven't had issues with builds being triggered infinitely the last few days. :loop:

Just noticed that the Travis build is failing, so I'll need to check what is going on there. :disappointed:

auxesis avatar Oct 14 '13 10:10 auxesis

yay \o/

:cry: (for the failing build)

vaneyckt avatar Oct 15 '13 08:10 vaneyckt

:poop:

jesseadams avatar Dec 03 '13 01:12 jesseadams

@jesseadams anything that's particularly :poop:?

auxesis avatar Dec 03 '13 01:12 auxesis

@auxesis - Just the fact that this PR lost momentum :smile_cat:

jesseadams avatar Dec 03 '13 02:12 jesseadams

That's life, I guess. :skull:

We've actually been running this in production for a few months at @bulletproofnetworks and it's working pretty great.

I just need to work out why the tests are failing on Travis.

auxesis avatar Dec 03 '13 03:12 auxesis

:cry:

jesseadams avatar Jun 24 '14 17:06 jesseadams