<     May 2009     >
Su Mo Tu We Th Fr Sa
                1  2
 3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
00:09 faithfulgeek joined
02:04 GarkoMorok joined
03:13 GarkoMorok joined
05:01 <sr> foca, http://github.com/sr/bobette/commit/a97d44ac21b7e9045f82cd6c5e79c8b62db406f9
05:01 <sr> halorgium, that is for setup (added by nakajima)
05:07 <halorgium> sr: why isn't this a mixin?
05:08 <sr> halorgium, because that is a dirty hack that started yesterday :-)
05:09 <sr> not even sure wheter it is awesome/aweful
05:11 <sr> it needs to be used on a real app to see if it is useful or not
05:11 <halorgium> sr: oh, i think i misunderstood what it was
05:11 <sr> oh?
05:12 <halorgium> just actually having a look at the bob code finally :)
05:12 <sr> wait were talking about the gist or the commit I linked above?
05:12 <halorgium> what i meant was why doesn't bob have a Buildable mixin?
05:12 <halorgium> commit
05:12 <sr> aaah
05:13 <sr> because how'd the mixin know how to implement #branch,#uri,#kind,etc of an object?
05:13 <halorgium> no, it'll tell you that it needed those methods
05:14 <sr> but how is it useful then?
05:14 <halorgium> when you tried to run http://github.com/integrity/bob/blob/36b01281971b01534d4f8c9cd2c1c9411b454697/lib/bob/builder.rb#L22
05:14 <halorgium> sorta API description
05:15 <sr> ah. yeah
05:15 <sr> makes sense
05:15 <halorgium> instead of NoMethodError :)
05:16 <halorgium> and it means you can add the #build method to that module
05:16 <halorgium> Integrity::Project.first.build
05:16 <halorgium> or something
05:17 <halorgium> http://github.com/sr/bobette/blob/a97d44ac21b7e9045f82cd6c5e79c8b62db406f9/lib/bobette.rb#L16
05:17 <halorgium> that turns into:
05:18 <halorgium> project = Integrety::Project.handle(payload)
05:18 <halorgium> project.build
05:18 <sr> yeah, Bobette::Integrity::Project is only temporary. Integrity::Project will implements the buildable API
05:19 <halorgium> yer, i'm just saying that the API should allow for you to forget about Bob altogther
05:19 <sr> which api?
05:20 <sr> buildable?
05:20 <halorgium> buildable
05:20 <halorgium> yes
05:20 <halorgium> having to do Bob.build(buildable) == suck
05:21 <sr> huum, not sure I don't see why
05:21 <sr> the buildable api basically useless without bob
05:21 <sr> or... is it?
05:21 <halorgium> no, i'm saying you shouldn't have to know about Bob :P
05:21 <halorgium> not that Bob is pointless
05:21 <halorgium> @buildable.build > Bob.build(@buildable)
05:22 <sr> I don't see where a buildable object needs to know about bob
05:22 <halorgium> no, in the get '/' block
05:23 <sr> and, how would buildable#build looks like?
05:23 <sr> def build(commits); Bob.build(self, commits); end?
05:23 <halorgium> well, no
05:24 <halorgium> why isn't the build just called iwth no params?
05:24 <halorgium> surely the project knows what it needs to build?
05:24 <halorgium> def build; Bob.build(self, pending_commits); end
05:25 <sr> ah, pending commits. huum
05:25 <halorgium> and pending_commits should be an API method
05:25 <halorgium> (maybe?)
05:25 <sr> I have to finish some short story for school in less than one hour
05:26 <sr> so, I am off :P
05:26 <sr> let's discuss this later
05:26 <* sr> runs
05:26 <sr> foca, ^
05:27 <halorgium> sr: i might fork bobette and show ya
05:28 <sr> shit! shit shit shit
05:28 <sr> I am so fucked. no more ink in the printer
05:29 <sr> yeah, I seems to understand code better than chat :P
05:32 <halorgium> sr: i'll print it for ya :P
05:33 <sr> and then sends it from NZ to BE by mail? :P
05:33 <sr> not sure it'll reach BE in ~30 minutes
05:34 <sr> let's hope accept the teacher accepts it by email
05:40 <halorgium> polaroid?
05:41 <sr> heh :P
05:41 <sr> actually, I am jkust gonna stay home and hack away
05:54 <sr> btw halorgium, with bob, bobette and integrity joined together, I think you have your generic CI lib
05:54 <sr> and integrity becomes almost read-only
05:55 jamesgolick joined
05:59 <halorgium> sr: yes, i agree :)
05:59 <halorgium> having not looked at it prior to today, i can now say i like where it is at
06:00 <halorgium> i think the plugin system is not quite there, but architecturely sound
06:01 <sr> halorgium, there are still notifiers... current implementation sucks big times
06:03 <halorgium> yer, i don't care about notifiers now :)
06:03 <halorgium> i only need bob :P
06:03 <sr> yeah...
06:03 <sr> but now that we have bob that should be way easier
06:04 <sr> we can plug-in and out any buildable implemention
06:05 <halorgium> i want a HTTP buildable
06:05 <sr> ?
06:06 <halorgium> @foo.build #=> sends an HTTP request out
06:07 <sr> hehe yeah
06:07 <sr> or an xmpp request
06:07 <sr> or whatever!1
06:10 ZacLondon joined
06:17 <sr> btw halorgium I still don't get your buildable.build suggestion
06:17 <halorgium> lol
06:17 <* halorgium> is just fixing up something else
06:18 <sr> why not buildable.start_building buildable.finish_building ?
06:22 <sr> also, with bobette I think we can avoid the project setup stage
06:23 <sr> which means you can have zero-setup CI
06:23 <sr> (besides setting a post-receive hook up)
06:28 <halorgium> yes, bob should be able to bootstrap itself
06:29 <sr> btw, do you think bobette should be more defensive about the payload?
06:29 <sr> I always have problems knowing wheter I am being too defensive or not
06:30 <halorgium> you mean for distributing data?
06:30 <halorgium> or accepting data?
06:32 <sr> accepting data
06:32 <sr> validating the payload
06:32 <sr> it currently just returns a 400 on any JSON::JSONError
06:32 <halorgium> oh, you should check the vertebra one i had
06:33 <halorgium> it was pretty sane
06:33 <sr> but it'll fail if the payload doesn't have the required keys
06:33 <sr> in vertebra_integrity?
06:34 <halorgium> http://github.com/halorgium/vertebra_github/blob/77fc8b57a6e2bf4f7a94ed89f1719d8ac8cdc5c2/lib/vertebra_github/actors/server.rb
06:34 <halorgium> http://github.com/halorgium/irccat/blob/1da7e755f0767ff3c87a5150f041b17e995ee029/lib/irc_cat/http_server.rb
06:34 <halorgium> that one is probably better actually
06:35 <halorgium> you should fix the commit processing part of Integrity::Project
06:35 <sr> so basically, resuce Exception?
06:35 <halorgium> you want it to not fail
06:36 <halorgium> i would have a separate rack app for the API
06:36 <halorgium> then people can auth that differently
06:36 <halorgium> me and atmos_ are wanting to use our SSO middlware for the app and http-auth for the API
06:36 <halorgium> (or a token)
06:37 <sr> a separate app?
06:37 <sr> this one is pretty dumb already
06:39 <sr> also, what should be fixed in the commit processing part of I::Project?
06:39 <halorgium> oh, so you are going to keeep this app separate from integrity?
06:40 <sr> yeah, of course
06:41 <halorgium> i was finding that if the project was not inited it wouldn't actually do the builds
06:41 <halorgium> i think this'll fix itself when the extraction occurs
06:41 <sr> that is the point. bobette handles the payload, makes a buildable object out of it using Bobette.buildable.new(payload) (which means you plug any buildable you want) and tells bob to build it
06:41 <sr> yeah, lots of dirty naughty bugs should go away
06:41 <sr> and lots of LoC too
06:42 <sr> bobette isn't coupled to integrity at all
06:45 <sr> <3 rack
07:42 <halorgium> sr: is there a reason why Integrity doesn't create the Bobette for it to use itself?
07:49 Booster joined
07:49 alberto_pm joined
07:49 <alberto_pm> hi!
07:50 <halorgium> oh hurro
07:50 <alberto_pm> is there a way to start integrity with mongrel? i just want to try integrity quickly on my local machine
07:50 <alberto_pm> what's the easiest way? thin? mongrel?
07:52 <sr> alberto_pm, `rake launch` from the a clone
07:53 <sr> halorgium, you mean bobette should be included in integrity?
07:53 <alberto_pm> sr: ok, i had installed via gem... thx!
07:53 <sr> ah, then `integrity launch`
07:54 <sr> you need thin though
07:54 nachof joined
08:20 queso joined
08:30 qrush joined
08:39 <alberto_pm> i tried to run "rake launch" and it failed complaining about missing "thor" gem although it is installed
08:39 <alberto_pm> i tried runnning "integrity launch" and now it tells me to install thin
08:39 <alberto_pm> so i guess there is no workaround from installing thin
08:39 <alberto_pm> :)
08:44 faithfulgeek joined
09:06 <alberto_pm> launching from git clone or from thin install i am getting a gem version error for rack
09:06 <alberto_pm> /usr/local/lib/site_ruby/1.8/rubygems.rb:149:in `activate': can't activate rack (>= 0.9.1, < 1.0, runtime), already activated rack-1.0.0 (Gem::Exception)
09:06 <alberto_pm> from /usr/local/lib/site_ruby/1.8/rubygems.rb:165:in `activate'
09:06 <alberto_pm> from /usr/local/lib/site_ruby/1.8/rubygems.rb:164:in `each'
09:06 <alberto_pm> from /usr/local/lib/site_ruby/1.8/rubygems.rb:164:in `activate'
09:06 <alberto_pm> from /usr/local/lib/site_ruby/1.8/rubygems.rb:165:in `activate'
09:06 <alberto_pm> from /usr/local/lib/site_ruby/1.8/rubygems.rb:164:in `each'
09:06 <alberto_pm> from /usr/local/lib/site_ruby/1.8/rubygems.rb:164:in `activate'
09:06 <alberto_pm> from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:35:in `require'
09:06 <alberto_pm> from /home/alberto/integrity/config.ru:3
09:06 <alberto_pm> from /usr/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/builder.rb:29:in `instance_eval'
09:06 <alberto_pm> from /usr/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/builder.rb:29:in `initialize'
09:07 <alberto_pm> from /home/alberto/integrity/config.ru:1:in `new'
09:07 <alberto_pm> from /home/alberto/integrity/config.ru:1
09:07 <alberto_pm> is this a known issue? i haven't touched the configuration
09:13 <mileszs> alberto_pm: I think this is because Thin 1.2.1 wants rack >= 1.0, sinatra wants rack >=0.9.1, < 1.0. Not ideal, but if you uninstall thin 1.2.1 I _think_ you'll get past it.
09:13 <sr> gem uninst rack -v1.0.0
09:14 <mileszs> Then Thin will still look for it.
09:14 <sr> thin depends on rack1.0 ?
09:14 <sr> I think it is because of sinatra
09:15 <mileszs> Thin 1.2.1 seems to... now I forget how I figured this out yesterday.
09:15 <mileszs> In any case, I rolled back to Thin 1.0 instead of 1.2.1 and got past it.
09:15 <mileszs> Maybe I'm mistaken, though.
09:16 <sr> well, if that works it's the solution then :P
09:16 <sr> those "already activated" errors are so lame
09:17 <mileszs> Agreed.
09:17 <mileszs> Yeah, Thin 1.2.1 seems to want rack > 1.0.
09:19 <mileszs> I think Sinatra 0.9.1.3 will be compatible with rack 1.0, so this issue will go away.
09:21 <sr> indeed
09:21 <sr> sinatra-sinatra already is
09:21 <mileszs> Actually, I think I know that because I read a post by you somewhere on the Interwebs.
09:21 <sr> should be released on rubyforge soon
09:21 <sr> huum, on sinatra's mailing-list maybe?
09:22 <mileszs> Haha, quite possibly. I was searching furiously for information regarding rack versions and sinatra to figure out this 'already activated' thing.
09:23 deedubs joined
09:24 deedubs left
09:28 faithfulgeek joined
09:58 mileszs joined
10:01 hugod joined
10:29 <alberto_pm> yeah those "already activated" errors suck heavily
10:29 <alberto_pm> having to uninstall a recent version to solve the problem (not the first time i end up doing this) sucks so hard...
10:29 <alberto_pm> thanks for the help guys!
10:39 queso joined
10:43 esquivalient joined
11:03 queso joined
11:09 djb joined
11:13 Booster joined
12:20 <alberto_pm> how do you handle artifacts in integrity? is there a variable holding the artifacts directory that you can use in rake tasks? how do you get to include the artifacts in the web interface?
12:22 <mileszs> alberto_pm: That is not yet a 'finalized' detail, from what I gather. There's a bit of note on the website: http://integrityapp.com/#metricfu
12:23 <mileszs> alberto_pm: There is also this discussion on Lighthouse: http://integrity.lighthouseapp.com/projects/14308/tickets/47-build-artifacts
12:30 <alberto_pm> mileszs: thx, artifacts are kind of vital to me
12:31 <alberto_pm> it's crucial to have them working if i want to switch from ccrb to integrity
12:31 <alberto_pm> i'll look into that
12:32 <mileszs> Perhaps the example rake task that the web site points to will do? I haven't messed with artifacts at all. :-/
12:54 atmos joined
12:59 esquivalient joined
13:08 GarkoMorok joined
13:11 <sr> alberto_pm, there is nothing built in at this point
13:12 <sr> see mileszs's links
13:15 <sr> alberto_pm, so, if a rake task doesn't work for you, I'd suggest to stick to ccrb for now
13:18 <alberto_pm> what a pity...
13:18 <alberto_pm> i hope that something like that gets included at some point
13:19 <alberto_pm> at least the chance to do it, be it using a plugin or whatever
13:19 <sr> what features do you want from it that a rake task can't give you?
13:20 <alberto_pm> well, currently our cruise task runs migrations etc. etc. then specs, then cucumber with webrat, then cucumber with selenium
13:20 <alberto_pm> in some projects algo rcov reports are generated
13:20 <sr> http://github.com/integrity/integrity/blob/82a09d92f74c51ea915589dc28832f18837e90b2/Rakefile#L33
13:21 <alberto_pm> when a build breaks i can go to ccrb and see which specs or ccumber steps failed + i can look at the rcov reports and see if people are doing their tests properly
13:21 <sr> that runs metrics_fu (with rcov, and other code quality metrics) and move the output folder where it can be served by our web server
13:22 <alberto_pm> ok, probably if haveing mutiple projects you would need to copy it to separate folders right?
13:22 <alberto_pm> but yes that might do it
13:22 <sr> http://metrics.integrityapp.com/ for an example
13:22 <sr> that doesn't keep a version by commit though
13:23 <alberto_pm> weill i think i can live with it, having only the latest artifacts
13:24 <alberto_pm> currently i generate the artifacts in the CCRB directory for that purpose or in root_path/artifacts if not present
13:26 <alberto_pm> i still think i would like it better if integrity would give me a path variable for output
13:26 <alberto_pm> but i understand other people might think differently
13:27 <sr> why? I don't understand why you'd need one
13:28 djb_ joined
13:31 <alberto_pm> i think it's nicer to have it served by the continuous integration server than to have to serve the files otherwise
13:32 <alberto_pm> i also think it's nicer to have those files archived with the build
13:32 <sr> IMO, serving file is a job for a webserver, not CI software
13:32 <sr> agreed that one
13:33 <sr> *on
13:33 <alberto_pm> and i don't like rake files that copy to a specific directory e.g. /var/www/...
13:33 <alberto_pm> whatever
13:33 <sr> why not?
13:34 <alberto_pm> i think: why does my cucumber file have to be so specifically tailored to my integrity setup
13:34 <alberto_pm> i't imagine that folder is different if you run thin for example
13:35 <alberto_pm> or if you server your files otherwise
13:35 <alberto_pm> right now my feature:cruise rake task is tailored to ccrb but it will work with any ccrb setup
13:36 <alberto_pm> maybe i want to integrate your project, but my files are served from another directory
13:36 <alberto_pm> i would have to change your rake task right?
13:37 <sr> writing a task to show you
13:37 <alberto_pm> ok
13:39 <alberto_pm> you might be completely right. i have to admit i have always seen it work with artifacts folder. it might be that you can solve anything with rake files.... maybe it's my brackground...
13:39 <alberto_pm> *background
13:40 <sr> yeah, that is the point. you can do whatever in the task
13:41 <sr> https://gist.github.com/c0d6a772af6e0fd0d1ae
13:41 <sr> http://integrityapp.com/#database-yml
13:43 <alberto_pm> are there any sort of variables avaiable to the rake task?
13:43 <alberto_pm> build?
13:43 <alberto_pm> build name or anything?
13:43 <alberto_pm> so that i can archive the artifacts by build...
13:44 <sr> nope
13:44 <alberto_pm> well i think i'll give it a try
13:44 <sr> ok. feel free to ask if you need help
13:44 <sr> I am off. be back later
13:44 <alberto_pm> i think at least for commodity's sake it would be nice to be able to jump from the build's view to the artifacts folder...
13:45 <alberto_pm> ok thanks a lot for your infos and help anyways!
13:45 <alberto_pm> was great chatting with you
13:45 jamesgolick joined
13:48 <mileszs> I do agree that a link from the build to the artifacts would be nice... or even a link from the project's page to what would always be the latest artifacts would be nice.
13:49 <alberto_pm> yep
13:49 <alberto_pm> definitely
13:49 <alberto_pm> maybe it's a bad habit coming from ccrb
13:49 <mileszs> I think part of the resistence is rooted in keeping Integrity from becoming the behemoth that CCrb is. :-)
13:49 <alberto_pm> yeah sure i can also understand that
13:49 <alberto_pm> the nice thing about integrity is it being so simple and not bloated like ccrb
13:50 <mileszs> Maybe an 'integrity-with-artifacts' fork would make everyone happy. haha.
13:50 <alberto_pm> i thought about that a minute ago
13:50 <alberto_pm> but i would first to try and settle with integrity as is
13:50 <alberto_pm> and if i really still do find i have other needs...
13:51 <alberto_pm> i don't like forking away... :)
13:51 <alberto_pm> maybe they find a very minimalistic way of including that feature, who knows
13:52 <alberto_pm> or it is a very popular demand
13:52 <mileszs> I know there is some interest from others in having artifacts integrated in some way, but it may not be a deal breaker for enough people.
13:52 <alberto_pm> sure, i can also understand that people don't want it included
13:52 <alberto_pm> diversity is good
13:53 <alberto_pm> maybe next week i also advocate for not having artifacts built in... who knows
13:54 <mileszs> haha true
14:03 <alberto_pm> are any of you going to be at euruko this weekend?
14:07 <esquivalient> I'm with you on the artifacts alberto. A lot of Integrity's ease of use comes from simplicity, but needing to manage separate vhosts and links for my artifacts is more work than I would like.
14:08 <alberto_pm> yep definitely
14:08 <esquivalient> I just started messing with it last week, and I haven't really found a solution that suits me.
14:08 <alberto_pm> also i want my developers not have to care about the server setup
14:08 <alberto_pm> they should just go there and add the project
14:08 <esquivalient> exactly
14:08 <alberto_pm> i guess you could have a template rake task
14:08 <alberto_pm> but...
14:09 <alberto_pm> on one side simplicity, on the other comfort
14:10 <esquivalient> worse comes to worse, mileszs may be on to something with the integrity-wth-artifacts fork, but I've still got hope we can come up with a solution that satisfies everyone
14:10 <esquivalient> I've been looking through the code trying to get up to speed so I can see what a possible good solution would be
14:11 <alberto_pm> yep, i would definitely would like to strive for something that makes us all more or less happy
14:11 <alberto_pm> i would be willing to help or give my 2 cents
14:11 <alberto_pm> i just started looking at integrity today, i hope to able to able contribute somehow soon
14:14 <alberto_pm> from what ive heard or read, making classes or variables available from integrity didn't get much traction
14:14 <alberto_pm> and the env variables variant was not winning either
14:14 <alberto_pm> am i right?
14:14 <esquivalient> I only just started looking at it a week ago, so I'm afraid I'm not fully up to speed. That was the impression I got though.
14:17 <foca> artifacts would be an excellent use for plugins as we were discussing them yesterday sr
14:19 <foca> for example, you could add a plugin that takes an "artifacts" dir (if it exists) in the project after running a build, and copies it to some place, and then adds the links on the UI, etc, etc
14:19 <esquivalient> I missed the discussion yesterday on plugins. At first glance, it looks like some of those ideas would solve the problem nicely.
14:23 <foca> sr: also, about halorgium's Buildable#build << I like that
14:23 <foca> it's sort of Enumerable or Comparable, that ask you to implement each/<=> and provide you with a bunch of methods. Here you would get asked to implement a bunch of methods, and get #build for free
14:24 <foca> only thing I don't agree with halorgium on is having the list of commits be a method on the buildable
14:24 <foca> i'd say project.build([commit, commit, commit]) is a better api imo
14:25 <foca> since the Project doesn't care much about the state of what commits need to be built, just provides a mechanism to build commits
14:26 <foca> esquivalient: this a rough idea I have for how plugins would look like: https://gist.github.com/4c4e935f332c3aa3ab90
14:26 <foca> that's pretty much all the discussion we had on that yesterday :)
14:29 <esquivalient> and the html_fragment is inserted onto the build page when finished?
14:30 <alberto_pm> i agree, a plugin would be nice for the artifacts thing
14:30 <alberto_pm> you can opt-in rather than opt-out
14:30 <alberto_pm> :)
14:31 <alberto_pm> just a few hooks and should be able to do what you want
14:31 <alberto_pm> if you want to have a bloated plugin go for it
14:31 <sr> foca, haha, I like you better on irssi :-)
14:31 <sr> brb
14:31 <foca> why?
14:33 <foca> I mean, when I wasn't, I just had to read irclogger ... and I still do, it's easier to follow than irssi ....... :rolleyes:
14:33 <alberto_pm> i would be willing to contribute on the plugins/artifacts stuff let me know if i can help anyhow
14:33 <alberto_pm> :)
14:34 <alberto_pm> btw, integrity is a great piece of software :)
14:34 <alberto_pm> i looked into it today for the first time and i already feel ccrb is so far behind me
14:35 <sr> foca, </3
14:36 <sr> foca, now that you put it that way, I agreed (Buldable mixin ala Comparable)
14:37 <sr> also, the build artifact problems could be solved by using another Buildable implementation that copies files in #finish_building (or something like that)
14:37 <sr> I feel like the bob+bobette+integrity opens up a lot of possibilities
14:38 <sr> btw foca, wdyt of the test I pushed to bobette?
14:38 <sr> alberto_pm, heh, thanks :)
14:42 <sr> foca, damn flu btw :(
14:46 <foca> heh, yeah
14:46 <foca> though not counting the times I feel like shit....hacking from bed all day isn't *that* bad :p
14:47 <sr> hehe :)
14:48 <sr> foca, I'd like to start experimenting with using Bob+Bobette in integrity
14:48 <sr> please have a look at bobette last changes
14:54 <sr> foca, how would the Buildable#build method loosk liek bt
14:54 <sr> err, *looks like btw?
14:54 <sr> Bob::Builder#build basically?
14:54 <foca> def build(commits); Bob.build(self, commits); end
14:55 <sr> that's what I said to halorgium but he didn't agree
14:55 <sr> maybe it was just about the commits argument, though
14:56 <foca> it's just an abstraction so your Buildable doesn't know about Bob
14:56 <foca> and knows how to build itself
14:57 <sr> yeah, +1 to that
14:58 <esquivalient> how do you guys imagine turning integrity into bob/bobette/integrity will effect simplicity/ease of use? Do you have some ideas about how to keep it easy to get installed, or do you consider that secondary to simplicity after setup?
14:59 <sr> esquivalient, we definitely *will* keep is as simple as it is right know
14:59 <foca> or even simpler *cue suspense music*
14:59 <sr> to setup that's it
14:59 <sr> haha
15:00 <foca> all these refactorings are only internal
15:00 <esquivalient> haha
15:00 <foca> sr: re: bobette -> I'm not comfortable with having Integrity:: inside it
15:01 <foca> if it has Integrity it goes in integrity
15:01 <foca> if not you're not separating concerns, just moving files around
15:01 <foca> or welll.....not exactly
15:02 <sr> foca, agreed. it was just easier to have it inside bobette than in a separate integrity branch
15:02 <sr> that is for ease of experimentation's sake
15:02 <foca> I'm still not sure how I'd plug bobette into the mix
15:04 <sr> in integrity's config.ru: Bobette.buildable = Integrity::Project; map "/push"; run Bobette; map "/"; run Integrity::App; end, basically
15:04 <sr> the test is a failure if it doesn't show my point :(
15:04 <sr> s/the test/bobette_test.rb
15:27 <sr> mileszs, I *finally* merged your patch
15:31 <sr> fyi foca, bob is rb19-proof :)
15:33 <sr> and I still think bob should go under the integrity project
15:36 <sr> foca, I am working on adding a Buildable mixin to Bob btw
15:36 <foca> ah
15:36 <foca> I'm too
15:37 <foca> actually I'm done, just running tests
15:37 <foca> heh
15:37 <foca> oh, nice (1.9)
15:38 <foca> ah, that's simple enough (how to plug Bobette into Integrity)
15:38 <sr> if you're looking for a way to easily setup rb19 alongs rb18, I'd recommand rtomayko's method
15:42 <sr> what would be the Right Way to makes a condition on RUBY_VERSION btw?
15:43 <foca> how do you mean?
15:43 <sr> I'd do if RUBY_VERSION =~ /^1\.9/ but there might be a better way
15:43 <foca> where do you want to do that?
15:43 <foca> I'd say avoid doing that if possible :)
15:43 <sr> don't require metric_fu if rb19
15:44 <sr> because metric_fu requires rcov which uses the old switch syntax (unsupported in rb19)
15:44 <sr> s/switch/case
15:45 <foca> no idea, I haven't worked much on compatibility between 1.8 and 1.9
15:48 <sr> ah, RUBY_VERSION responds to #> and #<
15:48 <foca> nice
16:02 IntegrityBot joined
16:02 <IntegrityBot> Bob the Builder: Built 22375ab and failed
16:02 <IntegrityBot> http://builder.integrityapp.com/bob-the-builder/commits/22375ab68f4f7ae35c608283b589dc150498afb3
16:02 IntegrityBot left
16:03 <foca> sr: any ideas?
16:03 <foca> I can't make it build from integrity/bob
16:03 <foca> and foca/bob has that problem
16:04 <sr> http://builder.integrityapp.com/ is fucked up it seems :P
16:04 <sr> look at all the unbuild commits
16:04 <foca> yeah
16:05 <sr> huum, "svnserve.conf
16:05 <sr> that file shouldn't even be mentioned
16:05 <sr> ssh-ing into r2d2
16:06 <foca> can you run the tests from your pc?
16:06 <sr> yeah, all green
16:06 <foca> =/
16:06 <foca> I get those E
16:06 <foca> Errno::ENOENT: No such file or directory - /Users/foca/Projects/self/bob/tmp/Users-foca-Projects-self-bob-tmp-test_repo-master
16:06 <sr> I pushed three commits I had forgotten to push 20 minutes ago
16:07 <foca> yeah, I got those
16:08 <sr> had to git-reset /var/www/integrity/builds/integrity-bob-master
16:08 <sr> all green now
16:09 <sr> I think it is time for an integrity release
16:09 <foca> I still have those 3 errors
16:09 <foca> :(
16:09 <foca> I'll push the Buildable thing
16:10 <sr> yeah go for it
16:10 <foca> and let's see if the tests run fine on r2
16:10 IntegrityBot joined
16:10 <IntegrityBot> Bob the Builder: Built a76964f and failed
16:10 <IntegrityBot> http://builder.integrityapp.com/bob-the-builder/commits/a76964f368f5aec837223117ca91a0a743e52a68
16:10 IntegrityBot left
16:11 <foca> yay
16:11 <foca> :(
16:11 <foca> can you run those?
16:11 <foca> oh, wait
16:11 <foca> those tests actually make sense :)
16:11 <foca> s/tests/errors
16:12 <sr> err, I get NotImplementedError E-s
16:12 <sr> looks like the other E where hidding these
16:13 <sr> :)
16:13 <foca> try now
16:13 IntegrityBot joined
16:13 <IntegrityBot> Bob the Builder: Built a9ab643 and failed
16:13 <IntegrityBot> http://builder.integrityapp.com/bob-the-builder/commits/a9ab643e28aac4ee6f08769c08256aba15e13d6c
16:13 IntegrityBot left
16:14 <foca> wat
16:14 <foca> hm
16:14 <sr> grrr, why would my ssh-agent die on me? I *hate* to type my passphrase everytime I push
16:15 <sr> foca, one F and one E :D
16:15 <sr> we're getting closer it seems :P
16:16 <foca> yeah, the E I fixed
16:16 <foca> it was stupidity on my part
16:16 <foca> I don't understand the F
16:16 <foca> I mean, it makes sense that it's an F
16:16 <foca> but why wasn't it failing before?
16:17 <sr> I have no idea :/
16:18 <sr> hash ordering?
16:18 <sr> wait, no
16:18 <sr> you looking into this?
16:19 <foca> yeah
16:19 IntegrityBot joined
16:19 <IntegrityBot> Bob the Builder: Built 0563592 and failed
16:19 <IntegrityBot> http://builder.integrityapp.com/bob-the-builder/commits/056359261222ad28d7b5fd85e0f31edce198f90f
16:19 IntegrityBot left
16:19 <foca> sucks not being able to run the tests
16:19 <foca> waaaaat
16:19 <sr> ... the fuck
16:20 <foca> ok, I can't keep committing stuff blindly :)
16:20 <foca> can you look into this?
16:20 <sr> sure
16:20 <foca> after we get this fixed, rebase -i and squash everything together and push -f
16:20 <foca> :p
16:21 <foca> let not history find we were committing blindly without running tests!
16:21 <foca> uh, oh, FUCK YOU IRCLOGGER
16:21 <foca> :)
16:21 <sr> I have logs too. :-)
16:21 <foca> :p
16:21 <sr> no way I am push-f-ing ever again. I managed to fuck up bob/integrity, I retained the lesson
16:22 <sr> *I have retained
16:22 <sr> err. I am calling you bob now
16:22 <sr> s/bob/foca
16:22 <foca> xD
16:23 <sr> btw foca, I think we should make a new release including fix for theses:
16:23 <sr> http://integrity.lighthouseapp.com/projects/14308/tickets/141-include-the-commit-authormessage-null-fix-as-a-migration
16:23 <sr> http://integrity.lighthouseapp.com/projects/14308/tickets/144-do-not-try-to-figure-scm-kind-use-a-dropdown-menu-instead
16:23 <sr> that'll gives us a more or less stable release on which we can start doing the bob switch
16:23 <foca> yeah
16:24 <foca> 0.1.9.4
16:24 <foca> right?
16:24 <sr> yep
16:24 <sr> we need a bit more organization wrt to milestones too, I think
16:25 <sr> no sure which workflow fits integrity, though
16:25 <sr> anyway. looking into bob failures
16:26 nakajima joined
16:38 <sr> foca, ah, figured it! what a stupid error... we were FileUtils.rm_rf(Bob.directory) ... before Bob.directory was set
16:38 <sr> making the rm_rf totally useless
16:39 <sr> will push in a min
16:45 <sr> duh, svn is fucking slow
16:45 <sr> 30sec to run the svn test suite
16:47 <sr> funny that the threaded bg engine test runs slower on rb19
16:51 <sr> foca, pushed a couple of test fixes and rb19 compat
16:51 IntegrityBot joined
16:51 <IntegrityBot> Bob the Builder: Built a7a8d35 and failed
16:51 <IntegrityBot> http://builder.integrityapp.com/bob-the-builder/commits/a7a8d35f1ad5402a39642296c094186bb05af7b5
16:51 IntegrityBot left
16:53 <sr> nvm that. building is epic failing on us ATM
16:55 Booster joined
17:01 nacho_ joined
17:02 IntegrityBot joined
17:02 <IntegrityBot> Bob the Builder: Built bc02b8c and failed
17:02 <IntegrityBot> http://builder.integrityapp.com/bob-the-builder/commits/bc02b8cd382cca2ee57dab1083873e3e3053e749
17:02 IntegrityBot left
17:05 <sr> foca, soo, as I said earlier, I fucking hate migrations
17:05 <sr> more specificaly, I hate sqlite for not supporting ALTER COLUMN
17:05 <sr> I really don't feel like doing the same you did in :add_commit migration
17:06 <sr> also, it forces us to keep schema definition in two places, which defeats one of the reason I love datamapper
17:07 <mileszs> sr: Good deal on the merge, by the way. :-)
17:07 <mileszs> Thanks.
17:07 <sr> np, thank you
17:10 <sr> btw foca, wdyt of http://github.com/qrush/integrity/commits/order_projects_by_name ?
17:10 <sr> I am confused about the "fliping order so that test passes" commit
17:10 <sr> also about the over-writing on .all
17:17 qrush joined
17:19 <sr> qrush, hey, I am looking at your patch ATM
17:19 <qrush> yay
17:19 <qrush> you weren't at railsconf, were you?
17:20 <sr> nah, I was here, in belgium :-)
17:21 <qrush> aww man you missed some great times
17:21 <sr> yeah, the github and rack panel sounded awesome
17:21 <sr> lots of people i'd have loved to met too
17:22 <sr> wtf. *i'd love to meet
17:22 <sr> qrush, http://gist.github.com/109020
17:23 <qrush> woot
17:24 <sr> I ignored http://github.com/qrush/integrity/commit/c96b4d24db36ff086a73ff8da37dcc8c9b5b3e63
17:24 <qrush> yeah probably best
17:24 <qrush> is it still failing though?
17:24 <sr> nah, everything is green
17:24 <qrush> fine with me lol
17:25 <sr> ok, cool. pushing then
17:25 IntegrityBot joined
17:25 <IntegrityBot> Integrity: Built b8a0e5f and failed
17:25 <IntegrityBot> http://builder.integrityapp.com/integrity/commits/b8a0e5f7c37556504e78cdeb54c905025de6e229
17:25 IntegrityBot left
17:25 IntegrityBot joined
17:25 <IntegrityBot> Integrity: Built 6fca04c and failed
17:25 <IntegrityBot> http://builder.integrityapp.com/integrity/commits/6fca04c00a3de3a2845761c1c6421234ed42cd26
17:25 IntegrityBot left
17:26 <qrush> fuuuuu
17:26 <sr> huum, that must be foca playing with our CI server :P
17:28 <sr> qrush, thanks for the railsconf notes btw
17:28 <qrush> haha np man
17:28 <qrush> I skipped a few sessions at the end...just didn't seem worth it to take notes
17:28 <qrush> wycats' talk was neat but there was nothing...solid
17:28 <qrush> and the core panel was being taped so
17:28 nakajima joined
17:29 <qrush> i'm glad people are reading it though :)
17:29 <sr> huum yeah, I saw his conf at MWRC, pretty boring :P
17:29 <sr> s/conf/talk
17:29 <sr> it was about rails3, right?
17:30 <sr> btw, was the DHH keynote with Tom Something *that* boring?
17:31 Booster joined
17:31 qrush_ joined
17:57 Booster joined
18:07 Booster joined
18:17 Lenary joined
18:17 <Lenary> guys, i have a question
18:17 <Lenary> the "git repository" field
18:18 <Lenary> can that be on your local machine?
18:19 <Lenary> i've already set up integrity on my current computer
18:19 <Lenary> it's all working
18:33 <Lenary> nvm, you need a git:// or a .git url
18:33 <Lenary> so it fails
18:33 <sr> Lenary, /home/foo/code/bar/.git should work
18:34 <foca> I can run bob's svn tests fine, I just can't run git tests =/
18:35 <foca> also I wasn't playing with r2, I was playing xbox :p
18:35 <Lenary> sr: ah, ok
18:36 <Lenary> that's kinda annoying
18:36 <Lenary> i just nuked the setup and was going to use heroku + github
18:38 Booster joined
18:39 <sr> foca, git reset --hard origin/master ?
18:39 <foca> Bob::SCM::CantRunCommand: Couldn't run SCM command `(cd /Users/foca/Projects/self/bob/tmp/Users-foca-Projects-self-bob-tmp-test_repo-master && git clone /Users/foca/Projects/self/bob/tmp/test_repo /Users/foca/Projects/self/bob/tmp/Users-foca-Projects-self-bob-tmp-test_repo-master &>/dev/null)`
18:39 <foca> that error makes sense
18:40 <Lenary> what should be happening when i request a manual build?
18:40 <sr> remove the &>/dev/null ?
18:40 <Lenary> it seems that nothing is happening
18:40 <sr> Lenary, private repo?
18:41 <Lenary> sr: nah, back to local setup
18:41 <Lenary> with .git at the end of the file
18:41 <sr> try /path/to/repo.git
18:41 <sr> (instead of /path/to/repo/.git)
18:41 <Lenary> hrm
18:42 <sr> heh :P
18:42 <Lenary> no
18:42 <sr> what does the logs say?
18:44 <Lenary> http://pastie.org/private/dhyjour3b3nzhhyoldbwrg
18:45 <Lenary> yet still the interface says nothing happened
18:45 <foca> fatal: destination directory '/Users/foca/Projects/self/bob/tmp/Users-foca-Projects-self-bob-tmp-test_repo-master' already exists.
18:46 <sr> foca, weird. test setup should rm -rf bob/tmp
18:47 <sr> Lenary, huum
18:47 <sr> what version?
18:47 <Lenary> sr: there is nothing in /builds/ does it auto cleanup?
18:47 <sr> Lenary, no, it don't
18:48 <Lenary> oh
18:48 <Lenary> so there should be stuff there
18:48 <sr> yeah
18:48 <Lenary> well, i chmodded it +w
18:48 <Lenary> does everything earlier in the directory chain need to be +w as well?
18:48 <Lenary> as in chmod a+w
18:49 <sr> can you build some git://github.com/ repo?
18:49 <Lenary> the integrity i have installed is the one from gem install
18:49 <foca> fixed it
18:49 <sr> foca, pushed?
18:49 <foca> the command was doing (cd #{working_dir} && git clone #{uri} #{working_dir})
18:50 <sr> oooh
18:50 <foca> so it either failed on cd because the dir didn't exist, or it failed on clone because the dir already existed
18:50 <sr> why wouldn't it fail for me?
18:51 <sr> btw, I think we should capture the scm commands stdout and stderr and log them
18:51 <sr> the /dev/null redirection anoyed me a few times
18:53 IntegrityBot joined
18:53 <IntegrityBot> Bob the Builder: Built f251f25 and failed
18:53 <IntegrityBot> http://builder.integrityapp.com/bob-the-builder/commits/f251f25bda575b78330087660ab2b2ef3ed7e2de
18:53 IntegrityBot left
18:55 <foca> ugh, so why does it fail on those?
18:55 <sr> who knows?
18:56 <sr> foca, all green when I run rake directly on r2d2
18:59 <sr> foca, wdyt of migrations btw?
18:59 <sr> and my mini rant on them
19:00 <* Lenary> is going to try heroku
19:00 <Lenary> seems much easier than local
19:04 <sr> Lenary, when you say nothing happens, wdym exactly?
19:05 <Lenary> well, there's nothing happening in the /builds dir
19:05 <Lenary> meh, heroku seems easier
19:05 <Lenary> actually documented
19:05 <Lenary> whereas a local install isn't
19:05 <sr> I just built integrity localy using /home/simon/code/integrity/.git as the URI
19:06 <sr> using the latest gem
19:06 <sr> how do you run it btw?
19:06 <Lenary> using passengerpane
19:06 <Lenary> in development mode
19:07 <sr> can you try with `integrity launch` ?
19:07 <sr> that'll start a server backed by thin and save the database to ~/.integrity.db
19:09 Booster joined
19:09 <Lenary> erm
19:09 <Lenary> too late, i went for heroku
19:10 <Lenary> as i said
19:10 <sr> whatever works for you :)
19:12 <Lenary> erm, this isn't
19:13 <Lenary> i want to have authentication on my heroku app
19:13 <Lenary> wait a sec
19:13 <Lenary> i think it will work now
19:13 <sr> see config.yml
19:14 <Lenary> http://github.com/foca/integrity/blob/a27620ec4423302b078c4902dd73c79ff537a971/config/heroku/integrity-config.rb#L10 is wrong
19:14 <Lenary> typo on that line
19:14 <Lenary> i fixed it
19:14 <Lenary> well, i fixed it in mine
19:14 <Lenary> but won't fork just for that fix
19:15 <Lenary> if you see, it should be username, not usenrame
19:16 qrush joined
19:17 <Lenary> and it's still not working
19:17 <Lenary> i'm using the heroku way
19:20 <Lenary> i can't work out if i'm authing automatically or not
19:24 <sr> uh?
19:24 <sr> wdym "automatically" ?
19:26 <Lenary> well, i thought i added the password to the keychain
19:26 <Lenary> which would mean safari authed automatically
19:26 <Lenary> but it's not
19:26 <Lenary> it's not http authing at all
19:26 <Lenary> :/
19:28 <Lenary> http://pastie.org/private/knurx6crjrpdfle1fa7w
19:28 <Lenary> shouldn't it be http basic authing/
19:28 <Lenary> oh yeah
19:28 <Lenary> and thanks for all the help sr
19:29 <Lenary> ah, got the variable wrong
19:29 <Lenary> woops
19:29 <Lenary> sorry
19:29 nakajima joined
19:29 <sr> just saw it :)
19:30 <sr> np
19:30 <Lenary> woo
19:30 <Lenary> working
19:30 <Lenary> now
19:30 <Lenary> thanks for all the help
19:30 <Lenary> i'll stop bothering you
19:30 <Lenary> :P
19:30 Lenary left
19:33 GarkoMorok joined
19:38 <foca> raggi: when you have a few minutes, can you add a few rdoc comments to the Threaded engine? :) I'd like to have everything documented
19:41 IntegrityBot joined
19:41 <IntegrityBot> Bob the Builder: Built 80315f0 and failed
19:41 <IntegrityBot> http://builder.integrityapp.com/bob-the-builder/commits/80315f010f3b12948f01b50973621159549ad060
19:41 IntegrityBot left
19:47 <mileszs> It wasn't me.
19:48 <sr> foca, wdyt http://gist.github.com/6a659d173b7452902d51
19:50 <foca> +1
20:01 <sr> I am off to bed. 'night
20:01 <foca> night
20:54 qrush_ joined
21:02 qrush_ joined
21:11 qrush__ joined
21:24 nakajima joined
21:48 hugod joined
22:12 qrush_ joined
23:18 blakemizerany joined