IRC logs for #buildstream for Friday, 2018-02-23

*** slaf has quit IRC00:02
*** Prince781 has quit IRC00:06
*** slaf has joined #buildstream00:25
*** Prince781 has joined #buildstream00:43
*** mcatanzaro has quit IRC02:27
*** Prince781 has quit IRC04:02
*** tm has joined #buildstream07:32
*** tristan has joined #buildstream08:09
*** Prince781 has joined #buildstream08:19
*** toscalix has joined #buildstream08:52
*** dominic has joined #buildstream09:33
*** jonathanmaw has joined #buildstream09:48
*** ssam2 has joined #buildstream10:00
*** Prince781 has quit IRC10:10
gitlab-br-botbuildstream: issue #266 ("`get_unique_key()` only works with an incorrectly initialised dictionary") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/26610:12
*** ernestask has joined #buildstream10:12
*** aday has joined #buildstream10:37
ssam2should integration-commands propagate across junction boundries ?10:42
tristanYes, is there a reason to think they should not ?10:44
ssam2no, i'm seeing some not being run10:45
* tristan thinks we should really finally split up integration-commands in two10:45
ssam2so wondering what is going wrong10:45
tristanIt could be a bug, or, it could be lost in build-only deps10:46
tristanbuild-only dep separation will of course lose anything prior10:46
ssam2ah, that's possible. right, so they won't propagate across compose elements10:46
tristanright10:46
ssam2which actually makes sense too.. the results of the integration should be in the compose10:46
tristanthey wouldnt10:46
tristanif compose opted to include the result, yeah10:46
tristan(I think that's default, though)10:47
ssam2I'm currenlty digging into (separate) issue with files seemingly being lost during compose10:47
ssam2I wonder if this is actually the same thing10:47
ssam2actually, I think this isn't a bug, it's a directory overwriting a symlink10:56
tristanThat area can get really confusing10:56
tristanindeed10:56
tristanjuergbi, Would you say that context.projects[0] is the canonical right place to get the "main project", when that is desired ?11:01
tristanI guess11:02
tristanor rather, projects = context._get_projects(), projects[0]11:03
*** aday has quit IRC11:03
*** aday has joined #buildstream11:04
*** aday has quit IRC11:08
*** aday has joined #buildstream11:09
juergbijuergbi: i'd say so, yes. we could add a helper, of course. _get_toplevel_project()11:13
tristanHmm, maybe I'll do that, will look cleaner11:17
tristanfwiw, I'm getting rid of that hard coded list of env vars in `bst shell`11:23
tristanand opening the door for more configurability11:24
juergbi\o/11:25
tristanjuergbi, so you think host bind mounts is a good idea ?11:25
tristanif we're gonna go configurable, then buildstream doesnt have to know that there is a resolv.conf or passwd file11:25
juergbias long as it's part of the bst shell config, i don't have an issue with it11:25
juergbiright11:25
juergbii wouldn't like them hard-coded11:25
tristanof course11:25
tristanI wonder what the bind mount behavior will be for a file already exists11:26
tristan*which already exists11:26
juergbiit actually has to exists, iirc11:26
juergbiyou can't bind mount to nothing11:26
juergbi*exist11:26
tristanin the target ?11:26
juergbiyes, can just be an empty file11:27
tristanhmmm, so it would require create-if-not-exists first11:27
juergbior rely on project to ensure it's in their files11:27
juergbibut create-if-not-exists would be convenient11:27
tristanNow, graphics acceleration is hard; probably not gonna work ?11:33
tristanMaybe we need to use a runtime with llvmpipe for graphics if we want a decent, but not performant `bst shell` ?11:34
tristannow I realize what the epiphany font problem is; runtime has no korean fonts11:35
tristanand by default of course, google.com will forward to your local google which will inevitably display korean characters11:35
juergbitristan: mount bind of /dev/drm is not acceptable?11:53
juergbieh, /dev/dri11:53
juergbionly helps if the sandbox includes a suitable mesa but in many cases that would be possible11:54
tristanjuergbi, lets try it :)11:55
tristanI have a pretty good first shot here, though...11:55
tristanwithout bind-mounts yet11:55
tristanand sexy customized PS111:55
juergbi:)11:55
tristanI did so far make the assumption though, that PS1 will be considered; this is not customized11:56
tristanBut then, we do assume there is at least a /bin/sh11:56
tristanand did not use custom PS1 features (afaik)11:56
tristantlater, any tips on running integration tests on my host ?12:12
tristantlater, shall I just run it ./setup.py test --addopts '-k integration/mytest.py' ?12:13
tristanhrmmm12:15
tristaneverything fails with: ./setup.py test --addopts '--integration tests/integration/shell.py'12:15
tristanwell, every test in shell.py12:15
tristanany help ?12:15
nexusDoes it say why it fails?12:16
tristanmyeah12:17
tristanAnd looks like we have another bug12:17
tristanhttps://bpaste.net/show/c54778023e8a12:18
tristanostree is trying to set extended attributes here, and instead of a decent error, we get stack trace12:18
juergbitristan: set INTEGRATION_CACHE to some path12:18
juergbidefault is /tmp which doesn't work, iirc12:19
juergbishould fix that12:19
tristanit wouldnt if it's tmpfs12:19
tristandefault should be in tree along with other stuff no ?12:19
juergbiwould be fine with me12:19
juergbiwe even already have integration-cache in .gitignore12:20
tristanI was just thinking tmp/ because that's our pytest configured tmpdir (so we already populate it with every run, due to the datafiles test plugin which copies stuff there)12:21
tristanwhen I run it with INTEGRATION_CACHE=`pwd`/tmp ./setup.py ... it creates tmp/integration-cache... also12:22
juergbiit's useful to keep integration cache around to avoid redownloading sources12:22
tristanlooks like it failed again... waiting to discover why12:22
juergbinot sure whether tmp is a good place for that or not12:22
tristanme neither, I just want it to "just work" by default12:25
juergbiagreed12:26
tristanAlso, in-tree must be sensible for that default; otherwise it means `./setup.py test` is leaving debris on your system12:29
tristanwhich I think is generally undesirable12:29
tristanrecommendation in HACKING.rst to put it somewhere where you want to persist things, could be good; if that is a better place12:30
tristanor a place which takes less time for repeated tests12:30
* tristan double checks against master, but looks like INTEGRATION_CACHE=`pwd`/tmp ./setup.py test --addopts '--integration tests/integration/shell.py' ... is totally broken too12:31
ssam2 works for me locally12:35
ssam2on commit b696d36386b3ec0a57d1eda72449d4bcee2bd22712:35
tristanyup12:37
tristanI just tried with master, and works with INTEGRATION_CACHE12:38
tristanalso fails on gitlab in similar way; so that is a problem on my side12:38
*** xjuan has joined #buildstream12:40
gitlab-br-botbuildstream: issue #267 ("Integration tests dont work by default, and write outside of repo") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/26712:43
gitlab-br-botbuildstream: issue #268 ("Stack trace when ostree operates in filesystem not supporting extended attributes") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/26812:46
gitlab-br-botbuildstream: merge request (project-shell-customize->master: Allow customization of shell environment, and set custom prompt in PS1) #287 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/28712:56
gitlab-br-botbuildstream: merge request (project-shell-customize->master: Allow customization of shell environment, and set custom prompt in PS1) #287 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/28712:56
tristanDebugging this is also becoming difficult13:00
tristanWe print the command as ran from tests thanks to the cli fixture, so that things are reproducible in the state left behind by tests13:00
tristanBut if I run: bst --no-colors --config /codethink/GNOME/buildstream/tmp/test_no_shell0/cache/buildstream.conf --directory /codethink/GNOME/buildstream/tmp/test_no_shell0 shell shell/no-shell.bst -- /bin/echo Pegasissies!13:00
tristanNow I get "Missing elements for staging an environment for a shell:"13:01
tristanFor "shell/no-shell.bst"13:01
tristanThe problem seems to be that a `None` is getting printed after running `bst shell` with any command13:02
tristanCannot reproduce outside of integration tests13:05
tristanMaybe the fixture is printing None for some reason13:05
tristanaha, I think I nailed it13:12
gitlab-br-botbuildstream: merge request (project-shell-customize->master: Allow customization of shell environment, and set custom prompt in PS1) #287 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/28713:15
gitlab-br-botbuildstream: merge request (project-shell-customize->master: Allow customization of shell environment, and set custom prompt in PS1) #287 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/28713:28
tristangot it13:29
tristanHave to run go get dinner13:29
tristanthat pipeline will pass :)13:30
tristanfreaky shlex in shell.py test screws it up13:30
*** tristan has quit IRC13:33
tlatertristan: sorry, was being cut open. Still waiting for the narcotics to wear off, will see if I can help out after.13:35
tlaterAck, of course he dcs while I type that out x)13:36
nexuslol13:39
ssam2i don't even know how to respond to someone irc'ing from an operating theatre ;-)13:42
ssam2i hope the repairs went well!13:42
*** tristan has joined #buildstream13:54
* tristan going out13:54
tristanMR !287 above unfortunately cannot be merged13:55
tristanI should update the base format version for the new project.conf options, and make the gnome-build-meta require that before pushing13:55
tristanthat's what the version assertions are for, after all13:55
tlatertristan: Can't tell if you've figured it out by now, but the invocation would be: `./setup.py test --addopts '--integration -m integration'`15:45
* tlater is planning to add a "How to run the test suite" section to Hacking.rst for this kind of stuff.15:46
*** xjuan has quit IRC15:46
tlaterssam2: I wanted to tell family members I was awake. My phone showed me the ping, figured I should reply while I'm at it ;)15:50
* tlater tunes out of IRC to avoid being tempted again :p15:52
jennistlater, I would like to help you write that / will write some material for it next week while you're away16:05
*** tiago has quit IRC16:20
*** xjuan has joined #buildstream16:36
*** toscalix has quit IRC16:39
gitlab-br-botbuildstream: issue #269 ("buildstream hangs forever if fuse device is not present") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/26916:54
*** dominic has quit IRC16:59
jmacSo we're running a FUSE filing system for all builds at the moment to do copy-on-write, is that correct?17:12
skullmanyes17:15
jmacI assumed in the previous discussions that the delay due to adding a fuse was a problem because we were going from no fuse to fuse17:15
jmacIs it just us adding the chown calls etc to that fuse that's slow, then?17:16
skullmannot sure of all the details, some of it is that it's already noticeably slow, and that chown implies being able to run as another user, and FUSE has interesting behaviour if you're not the user who mounted it17:17
*** mcatanzaro has joined #buildstream17:19
ssam2jmac, it's not for all builds17:22
ssam2it's only for things which needs a read/write rootfs17:22
ssam2which in practice is only the integration commands17:22
jmacRight, got it17:25
*** jonathanmaw has quit IRC17:27
gitlab-br-botbuildstream: issue #270 ("Compose element throws away files inside directory symlinks at integration time") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/27017:30
*** ssam2 has quit IRC17:37
gitlab-br-botbuildstream: merge request (sam/compose-log-splits->master: WIP: Log details of artifact splitting when building 'compose' elements) #140 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/14017:38
*** cs_shadow has joined #buildstream18:09
*** ernestask has quit IRC18:19
*** ernestask has joined #buildstream18:21
*** aday has quit IRC19:04
*** valentind has joined #buildstream19:13
*** ernestask has quit IRC21:38
*** xjuan has quit IRC21:52
*** cs_shadow has quit IRC22:08
*** valentind has quit IRC22:46
*** tm has quit IRC22:46
*** mcatanzaro has quit IRC23:44

Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!