IRC logs for #baserock for Tuesday, 2014-10-14

*** cyndis_ [] has joined #baserock02:45
*** persia_ [quassel@2400:8900::f03c:91ff:feae:3452] has joined #baserock02:47
*** persia_ [quassel@2400:8900::f03c:91ff:feae:3452] has quit [Changing host]02:47
*** persia_ [quassel@ubuntu/member/persia] has joined #baserock02:47
*** SotK_ [] has joined #baserock02:49
*** jjardon_ [sid723@gateway/web/] has joined #baserock02:49
*** ridgerun1er [] has joined #baserock02:49
jjardon_ is now known as jjardon02:55
*** mSher [] has joined #baserock06:37
*** dutch [] has joined #baserock07:20
pedroalvarezmeh, it wasn't a good idea to setup a mason instance to build all the x86_64 systems in the release cluster with only 40G of disk07:41
pedroalvarezI should deploy a new one wiht more capacity07:52
pedroalvarezin the meantime I changed it to build only the devel system07:52
pedroalvarezpaulsherwood: are we interested on having a mason building ON the jetsons?07:53
*** tiagogomes [~tiagogome@] has joined #baserock08:02
*** jonathanmaw [] has joined #baserock08:29
*** ssam2 [] has joined #baserock08:54
ssam2public mason is failing again, due to missing artifacts on its artifact cache Trove09:13
ssam2I really don't understand why, since the artifact just isn't in the cache09:13
Kinnisonlink to fail log for me to look at?09:13
ssam2each of the 'FAIL' links takes you to alog09:13
ssam2*a log09:14
KinnisonIs there any of 1eba277596eb4ba4b0a02a3d473932436dad0f51c12fc428102e521a6e7d111c in the cache dir?09:14
ssam2/home/cache/artifacts # ls 1eb*09:14
ssam2ls: 1eb*: No such file or directory09:14
* ssam2 has not yet checked cache server logs in fact09:15
KinnisonThe rule is that the worker machines are not allowed to build intermediate artifacts09:15
Kinnisonso the controller clearly believes the artifact to be present09:15
KinnisonOr it'd have scheduled a build for it09:15
ssam2yeah. And the thing is, it keeps doing this09:15
ssam2but I suppose the controller doesn't restart for each build, it's the same instance each time09:15
Kinnisonit's not something daft like the controller having it in a local cache which should never have been populated is it?09:15
ssam2I need to fiddle to get access to the controller, I'll check09:16
ssam2nothing in /srv/distbuild/artifacts on the controller, but I'll have a poke around the controller process logs a bit more and see what else might be up09:18
paulsherwoodpedroalvarez: ossibly09:23
*** flatmush [] has joined #baserock09:23
pedroalvarezssam2: thanks for figuring out what was going with the jetsons09:23
pedroalvarezssam2: Re mason. I've being trying to fix it. It was failing because of disk space 09:25
pedroalvarezI removed things to make room09:25
ssam2right, i can stop getting in your way if you want :)09:32
ssam2i stopped the mason.timer temporarily09:32
pedroalvarezI meant, it was failing before because of that. Now I'd failing for another reason 09:39
ssam2ah, OK09:39
ssam2I think the controller must have got itself into a bad state09:40
ssam2I thought it queried the list of artifacts in the cache server on every build, but maybe it doesn't09:40
* ssam2 manages to crash the controller by sending it invalid JSON. echoes of yesterday :)09:46
ssam2mind you, it's the worker that is failing to fetch the artifact ...09:46
ssam2this is really hard to debug because /var/log/morph.log contains both the initiator and the worker logs09:48
pedroalvarezBut the artifact doesn't exist in the artifact cache server 09:50
pedroalvarezThus artifact is pv09:51
pedroalvarezAnd actually it tries to build it :/09:51
ssam2really ? I see the worker crashing when it gets a 404 for the artifact09:52
ssam2which is not at all what I'd expect09:52
ssam2oho !09:53
ssam2`morph worker-build` takes a bit of a different code path to `morph build` here.09:54
ssam2it's calling BuildCommand.build_source(), but I think it should be calling BuildCommand.cache_or_build_source()09:54
straycatWhy? Distbuild workers operate under the assumption that all the dependencies are cached.09:57
pedroalvarezThat's the problem then 09:58
ssam2my hack to use cache_or_build_source() rather than build_source() doesn't work, which makes sense now I think about it10:28
ssam2it'd need to do something like build_in_order()10:28
ssam2i can either further hack distbuild on the Mason, or clear the artifact cache completely so it starts from scratch10:29
ssam2I guess the option that doesn't contain the word "hack" is the better one10:29
pedroalvarezRebuilding all the arm artifacts won't make me happy :) 10:34
pedroalvarezI'll try to push some artifacts from a local build 10:34
ssam2oh, sorry, I removed them already !10:38
ssam2the artifacts will still be on the workers though10:40
ssam2this highlights the flaw in my plan for fixing this, though, which was to have Mason delete all artifacts except for the tree it just built10:40
pedroalvarezHahaha don't worry ssam2 10:43
straycatssam2, What's wrong with that plan?10:43
ssam2if > 1 mason uses the same artifact cache they'll each remove the other's artifacts10:43
ssam2and we probably want > 1 mason as we support 5 or 6 architectures10:44
ssam2or more10:44
* straycat nods10:44
straycatAlthough if we assume each mason has a different architecture then the artifacts shoudn't overlap.10:45
pedroalvarezMaybe each mason can create a list of: Don't touch this chunks 10:47
straycatThen I guess you need to make other assumptions about what the other masons are building, it doesn't seem like a great idea.10:47
ssam2at that point we may as well come up with a generic solution for all artifact caches10:48
ssam2I was hoping we could take a shortcut10:48
straycatIt would be simpler for each mason to have its own cache server.10:50
ssam2yeah, that might be OK. just causes pain for people who want to use the artifacts that Mason has built10:52
ssam2it'd be nice if we could just point '' to the cache server that all our continuous builders upload to, so everyone gets cached artifacts of 'master'10:52
straycatYeah that would be good10:54
pedroalvarezI would like that we can specify mire than one artifact cache server in morph.conf10:55
pedroalvarezBut that is not easy to do 10:55
ssam2not too hard actually10:56
ssam2but it'd be a bit rubbish to have ,,, ...10:57
pedroalvarezNo no, I don't think we should do that 10:58
pedroalvarezJust have kba10:59
pedroalvarezJust have one, with a lot of storage, an good connectivity 10:59
richard_maweither an aggregate cache server daemon, or we sort out multi-arch distbuild11:00
straycatmulti-arch distbuild would be cool :)11:06
*** Krin [] has joined #baserock11:26
pedroalvarezI've pushed some armv7lhf artifacts :)11:27
paulsherwoodssam2: skim reading your email just now...11:28
paulsherwooddoesn't the .depends idea lead us towards more confusion?11:28
* paulsherwood wants to see less types of definition file, not more11:29
paulsherwoodwhat do you mean by 'foreign dependencies' exactly?11:29
*** Krin [] has quit [Ping timeout: 255 seconds]11:34
ssam2I mean the dependencies as specified in a foreign packaging system11:36
ssam2e.g. the rubygems that a gem that is a rubygem depends on11:36
ssam2wait, I mean a chunk that is a rubygem11:37
ssam2the rubygems that a chunk which is rubygem depends on11:37
ssam2we could maybe throw the info away after the import tool has run. I'm not sure if that is a good idea or not.11:40
ZaraI'm trying to build the nodejs system, but I get this error and don't know why things are going wrong or how to fix it: 2014-10-14 11:37:03 [Build 182/312] [mesa] # umount /src/tmp/staging/tmppZSkTD/proc11:42
ZaraERROR: In staging area /src/tmp/staging/tmppZSkTD: running command 'sh -c make' failed.11:42
ssam2could you put the whole output into a pastebin like ?11:42
ssam2i'm a little confused why it's building mesa for the nodejs system, too ..11:43
Zarawill do11:43
ssam2seems that the nodejs system contains a bunch of stuff that isn't really needed, in fact11:43
ssam2like the whole of the GENIVI baseline11:43
ssam2might be worth deleting every stratum from that system that isn't in the base system and trying again11:45
ssam2base system being
*** Krin [] has joined #baserock11:45
Zarassam2: ah, ok. should I just rm the unneccessary strata? (I don't know if there's something fancy you have to do to remove them.)11:48
ssam2open up the systems/nodejs-system-x86-64.morph file11:48
ssam2and remove the entries from the list of strata11:48
Zaraahh, right11:48
ssam2the strata can be used in multiple systems, and the system morph lists which ones it wants to include11:49
Zara(actually that's the only thing I'd be able to do; don't know why I thought they'd be somewhere I could rm *doinks head*)11:49
ssam2they actually are defined in files on disk, in the definitions repo11:50
*** thecorconian [] has joined #baserock12:01
Kinnisonssam2: store it as x-gem-depends or something>12:09
ssam2so you're ok with x- fields in morphologies ?12:10
KinnisonPersonally? Yes12:10
KinnisonSo long as they don't affect the artifact IDs etc12:10
ssam2(i'm actually questioning myself as to whether it's needed to store this info at all beyond the initial import, now)12:10
paulsherwoodit's all gone red...
paulsherwoodssam2: i'm not ok with x- fields so fdar, need to understand this better12:12
*** Krin [] has quit [Remote host closed the connection]12:14
ssam2paulsherwood: public mason is now building stuff, was broken due to my halfassed attempt to stop the artifact cache from filling up12:14
ssam2paulsherwood: ok. as I said, I'm wondering now if the info needs to be there at all12:16
*** fay [] has joined #baserock12:32
fay is now known as Guest286412:32
*** fay_ [] has quit [Ping timeout: 272 seconds]12:32
Guest2864 is now known as fay__12:32
*** thecorconian1 [] has joined #baserock12:44
*** thecorconian [] has quit [Remote host closed the connection]12:44
*** fay__ [] has quit [Read error: Connection reset by peer]12:49
*** fay_ [] has joined #baserock12:49
*** Krin [] has joined #baserock12:58
*** thecorconian [] has joined #baserock13:04
*** thecorconian1 [] has quit [Remote host closed the connection]13:04
paulsherwoodssam2: so you're wanting to trap (say) rubygems version number, which may be different from any git tag we know about?13:29
ssam2paulsherwood: I more just want to trap the dependencies13:30
ssam2so that if we come to re-import something, we know what was already done13:30
ssam2but I'm beginning to think it's a bit pointless, as the import tool can just refetch that info13:30
paulsherwoodit's been suggested that we might make more prominent to help new users...13:46
paulsherwoodwhat do folks think?13:46
* paulsherwood is biassed :)13:46
* Kinnison has no strong opinions either way13:46
KinnisonIt doesn't fit with my development cycle, but that's because I us a chroot not a vm13:47
paulsherwoodKinnison: would an equivalent simplification be possible for your situation?13:47
ZaraI think this is a brilliant suggestion and heartily agree. :D (it may or may not be my own suggestion)13:47
* paulsherwood can't use a chroot on mac13:47
Kinnisonpaulsherwood: no13:47
Kinnisonpaulsherwood: the chroot has no access to the outside world13:47
Kinnisonpaulsherwood: unlikes the devel vm where it has access to the overarching btrfs it runs in13:47
* petefoth agrees with the suggestion - we should make useful stuff as easy to find as possible13:49
ssam2I think it's worth linking to it as an example. I can't think of a better approach that'd be universally usable13:50
SotK_ is now known as SotK13:50
ssam2personally i've been deploying to containers, but that's not much use if you want to test graphics13:51
KinnisonThe document correctly states its assumptions -- I'm fine with it being promoted13:51
Kinnisonesp. to newbies13:51
wikicatWiki change:;a=commitdiff;h=f2a769a13:54
franredhow the tack baserock/morph was taken for the python chunks which belong to openstack-clients stratum?14:00
* paulsherwood hasn't tried 14.40 out of the box, so can't remember if that morph is new enough for the cycle page14:00
franredI've tried again: s/tack/tag/14:01
wikicatWiki change: link to build-deploy page;a=commitdiff;h=89e59e414:02
ssam2franred: are you asking how we chose the specific commits of those repos that are in use ?14:04
franredssam2, yes, sorry for my bad english14:05
* paulsherwood has failed all day to find a way to split a line in sed on mac os14:05
* paulsherwood is almost tempted to switch to linux14:05
ssam2franred: I don't know the answer, but if the reason is not documented in a commit message or comment, consider it to be random14:05
Kinnisonpaulsherwood: Dare I ask what you're trying to do?14:05
paulsherwoodmassage some .morph files14:06
paulsherwoodfind . -name *morph | xargs sed -i -e 's/^\(- name:.*-\)\(x86.*\)$/\1\2!  target: \2/'14:06
paulsherwoodfind . -name *morph | xargs sed -i -e "s/!/`echo `/"14:06
paulsherwoodi'm so desperate i'm trying echo instead of \n14:06
* Kinnison fails to unpick that14:06
Kinnisoncan you give me a pastebin with an input and an output?14:07
KinnisonFor what you want14:07
franredpaulsherwood, in mac you need to specified the backup file extension after -i: sed -i"" -e ... (or at least was one problem that I've found when I've worked with sed on mac)14:09
paulsherwoodfranred: that's useful to know, but my -e is randomly fixing that for me :)14:09
Kinnisonpaulsherwood: they look deceptively equal14:10
paulsherwoodoutput has an extra line target:14:10
Kinnisonpaulsherwood: is it just the insertion of the target: under the bsp?14:10
paulsherwoodevery stackoverflow example i've followed fails to work14:10
Kinnisonpaulsherwood: that expression works for me14:13
Kinnisoncan you try that with your find/xargs stuff14:13
ssam2jjardon: did you force push to branch baserock/jjardon/libdrm ?14:13
ssam2I was in the process of merging it and it seems to have changed14:13
ssam2could have been me being dumb though14:15
*** genii [~quassel@ubuntu/member/genii] has joined #baserock14:15
SotKssam2: I did a `git pull` a few minutes ago that showed a forced update in that branch14:16
ssam2seems to have lost its top commit14:17
ssam2I imagine it was me being stupid, then14:17
paulsherwoodKinnison: fail, i'm afraid. no line appears.14:17
KinnisonWhy not do this in Baserock?14:18
Kinnisonor is busybox sed even less useful?14:18
Kinnisonpaulsherwood: Are youtrying to apply this to master?14:19
paulsherwoodKinnison: i could similarly ask why you use a chroot rather than a vm? :)14:19
paulsherwoodKinnison: not yet, no :)14:19
paulsherwoodi apply some other things to master first14:19
* Kinnison uses a chroot because he likes to move around with his baserock systems, and the laptop in question only has 8G of RAM so can't afford to give over fixed amounts for VMs14:20
paulsherwoodin part i want to be sure what i'm doing works on mac. i guess i can drop that as a requirement for this script14:20
* Kinnison is out of ideas :-(14:20
paulsherwoodthansk for tryingh14:21
KinnisonMac might be bsd sed14:21
Kinnisonwhich might be different from gnu sed14:21
paulsherwoodno problem14:21
ssam2python is quite portable ... :)14:21
paulsherwoodi have some python... want to see it?14:22
* paulsherwood mistakenly assumed that this part of what he wants to do would be quicker to implement in script14:23
ZaraI'm trying to netcat to transfer the img file but it won't connect to localhost; not sure if I've done something wrong or if there's something I have to enable first. (error message: nc: can't connect to remote host ( Connection refused)14:23
Kinnisonerm, localhost?14:23
rjekWhat command lines are you using on each end?14:23
KinnisonAre you expecting to transfer from localhost to localhost?14:23
rjekAlso yes, localhost sounds surprising.14:23
Zaraha, well I didn't know what else to try; it should be different ports at least but frankly I know very little about networking14:24
KinnisonYour VM will have a different IP address14:24
Kinnisonrun 'ifconfig eth0' in your VM to see14:25
Kinnisonor, in the new world, 'ip addr show dev eth0'14:25
ZaraKinnison: ahhhh, right, that's really helpful, thanks! I've never used VMs before so it makes everything harder.14:25
KinnisonIt's all fun and games until someone DHCPs with hostname=localhost14:31
ssam2zara: you should be able to do 'nc -l -p 2222' at the listening end ; 'nc x.x.x.x 2222' at the sending end14:46
ssam2where x.x.x.x is the IP of your laptop or wherever you want to receive the file, and 2222 is a random port14:46
ssam2if you run those commands you should be able to type into one and see the output on the other, and then use Ctrl+D (end of file) to say 'exit'14:47
ssam2if that works, you can < data into one end and > it to a file at the other end14:47
paulsherwoodi thought we discussed this, need to get upgrade-devel to use instead of localhost14:51
paulsherwoodZara: assuming you're using the cycle script, please edit clusters/upgrade-devel.morph and make the above fix14:51
straycatmac is bsd sed iirc, and there are some differences.14:56
straycati mean has, but you know what i mean14:56
ssam2could two people review this patch for lorries.git ?15:03
ssam2it's adding rake-compiler which is a build-time dependency of some RubyGems15:04
Kinnisonif the x-products-rubygems doesn't confuse lorry you can have a +1 from me although I'm confused as to why you're using http:// rather than git://15:04
ssam2it doesn't confuse Lorry15:04
ssam2no reason I'm using http://15:05
ssam2I wasn't aware it made much difference, if it's better to use git:// then I will15:05
SotKssam2: +1 as long as lorry is ok with x-products-rubygems as Kinnison mentioned15:06
ssam2thanks, I'll merge15:09
KinnisonAnyone here familiar with how to take a manifest.xml for repo and turn it into something less xmlish and thus more comprehensible?15:10
ssam2I believe flatmush is our Google Repo expert ;)15:10
ssam2oh, git-repo is its full name rather than Google Repo15:10
flatmushKinnison: I can read manifests, but I'd be surprised if you can't.15:11
Zarassam2: sorry, just saw that, I got it working after Kinnison's tips. :) I got the img file but I'm not sure if I deployed the right thing. So I'm trying to use the cycle script atm.15:11
flatmushname and path are the wrong way around15:11
Kinnisonflatmush: this manifest is distressingly short which makes me think it must be somehow inheriting content from elsewhere15:11
Kinnisonflatmush: only I can't tell what or where15:11
flatmushpath is appended to the repository basename to get the git path, name is relative to the place the repo is checked out and is where the cloned repo goes15:12
flatmushKinnison: Looks ok to me, it'd be small for an Android build, but that's still quite a few repositories.15:13
KinnisonIt's coreOS, I was kinda expecting at least 50-100 repos15:13
flatmushthe more important question is, why are people using repo for a non-android project15:13
flatmushKinnison: I think you can overlay other manifests on top of the base manifest, but I've never been unlucky enough to deal with that15:14
Zarathe cycle script worked great, thanks paul!15:14
* Kinnison starts to think it might be easier to run repo on this and see what it does15:16
flatmushKinnison: What hints that overlays may be used is that everything in that manifest is in a group called "minilayout", presumably you can add other manifests and select the minilayout group if you don't want any of the other stuff15:16
flatmushKinnison: It'll do what you expect, unless there's more repositories in _remotes.xml which it includes.15:16
KinnisonWhat I expect, is for it to make a prolapse of repositories all over shop, for me to spend a day unpicking15:17
paulsherwoodZara: cool!15:22
franredopenstack-clients says that it is an stratum with OpenStack clients for OpenStack deployments, do someone mind if I add the rest of the openstack clients and update the refs?15:36
franredalso, so someone mind if I create an openstack-python-tool stratum?15:36
ssam2adding the missing openstack-clients and updating the existing ones seems like a good idea15:37
franreds/so /does /15:37
ssam2why do we need 'openstack-python-tool' ?15:37
franredopenstack-clients and openstack-services use lot of python-tools and some of them are shared between them15:38
franredjust to be tidy15:38
Kinnisonflatmush: given how long it's taking to repo sync, I'm guessing it definitely ended up with extra stuff from somewhere15:38
ssam2franred: ah, ok15:39
ssam2openstack-common might be a better name15:39
ssam2we have a bunch of strata named 'foo-common' already, so it'd be following an existing pattern15:39
franredssam2, ok, I will use the *-common pattern, cheers15:40
wikicatWiki change:;a=commitdiff;h=d8e7d3915:42
*** ssam2 [] has quit [Quit: Leaving]16:07
*** jonathanmaw [] has quit [Quit: Leaving]16:15
*** dutch [] has quit [Quit: Quit]16:23
*** franred [] has quit [Quit: Leaving]16:24
* straycat considers reviewcat16:28
*** Krin [] has quit [Remote host closed the connection]16:36
*** tiagogomes [~tiagogome@] has quit [Ping timeout: 260 seconds]16:38
*** mSher [] has quit [Quit: Leaving]17:09
*** genii [~quassel@ubuntu/member/genii] has quit [Read error: Connection reset by peer]22:57

Generated by 2.15.3 by Marius Gedminas - find it at!