00:09
faithfulgeek 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: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: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
<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:20
<halorgium>
buildable
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
<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: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>
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: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>
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:06
<halorgium>
@foo.build #=> sends an HTTP request out
06:07
<sr>
or an xmpp request
06:17
<sr>
btw halorgium I still don't get your buildable.build suggestion
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
07:42
<halorgium>
sr: is there a reason why Integrity doesn't create the Bobette for it to use itself?
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
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: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>
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>
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:28
faithfulgeek 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:43
esquivalient 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:59
esquivalient 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: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
<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: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: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
<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: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>
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: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: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: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: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>
though not counting the times I feel like shit....hacking from bed all day isn't *that* bad :p
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
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:37
<foca>
actually I'm done, just running tests
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: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 #<
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: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: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>
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:09
<sr>
I think it is time for an integrity release
16:09
<foca>
I still have those 3 errors
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:11
<foca>
can you run those?
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
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: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>
you looking into this?
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
<foca>
sucks not being able to run the tests
16:20
<foca>
ok, I can't keep committing stuff blindly :)
16:20
<foca>
can you look into this?
16:20
<foca>
after we get this fixed, rebase -i and squash everything together and push -f
16:21
<foca>
let not history find we were committing blindly without running tests!
16:21
<foca>
uh, oh, FUCK YOU IRCLOGGER
16:21
<sr>
I have logs too. :-)
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: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: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: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:53
<sr>
nvm that. building is epic failing on us ATM
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: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: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:19
<sr>
qrush, hey, I am looking at your patch ATM
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: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 joined
17:25
<IntegrityBot>
Integrity: Built 6fca04c and failed
17:25
<IntegrityBot>
http://builder.integrityapp.com/integrity/commits/6fca04c00a3de3a2845761c1c6421234ed42cd26
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: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>
it was about rails3, right?
17:30
<sr>
btw, was the DHH keynote with Tom Something *that* boring?
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: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: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
<Lenary>
sr: there is nothing in /builds/ does it auto cleanup?
18:47
<sr>
Lenary, no, it don't
18:48
<Lenary>
so there should be stuff there
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>
the command was doing (cd #{working_dir} && git clone #{uri} #{working_dir})
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:55
<foca>
ugh, so why does it fail on those?
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
<Lenary>
too late, i went for heroku
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: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>
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:28
<Lenary>
http://pastie.org/private/knurx6crjrpdfle1fa7w
19:28
<Lenary>
shouldn't it be http basic authing/
19:28
<Lenary>
and thanks for all the help sr
19:29
<Lenary>
ah, got the variable wrong
19:29
<sr>
just saw it :)
19:30
<Lenary>
thanks for all the help
19:30
<Lenary>
i'll stop bothering you
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:47
<mileszs>
It wasn't me.
19:48
<sr>
foca, wdyt http://gist.github.com/6a659d173b7452902d51
20:01
<sr>
I am off to bed. 'night
23:18
blakemizerany joined