IRC logs for #buildstream for Friday, 2017-06-02

*** tristan has joined #buildstream06:37
*** ChanServ sets mode: +o tristan07:07
*** jude has joined #buildstream08:30
*** jonathanmaw has joined #buildstream09:00
*** persia has quit IRC09:38
*** persia has joined #buildstream09:40
tristanjjardon[m], so I'm trying to find a work around11:27
tristanbut I found out what is causing the crazy, I was right11:27
tristanSee added comment on https://github.com/ostreedev/ostree/issues/63311:28
jjardon[m]tristan: nice, so maybe we can use an older ostree version in the meantime? Does the ostree used in buildstream comes from the host or from the bst definitions?11:31
tristanjjardon[m], its the artifact cache and a Source implementation; in both cases we require it from the host11:35
tristanI know v2016.14 to work, but I'm testing some workaround now11:35
tristanI tried using the uncompressed cache, which doesnt suffer the problem, but it's piss slow11:36
tristanNow trying to just only use bare-user mode repositories for buildstream (it's the repo mode we already use for artifact cache, but now trying that for the ostree source too)11:36
tristanI have same problem it turns out on the aarch64 host because I needed to install ostree by hand there11:37
tristanalso using the compressed cache is just pretty silly for the ostree source; it will end up taking 1.5 times the disk space11:41
tristanwhew this is a looooong test :(12:09
*** tristan has quit IRC12:16
*** tristan has joined #buildstream12:28
*** ChanServ sets mode: +o tristan12:33
violetaI've added the import test I've been working on to my repo. It has a script that carries out the test to check that the files are as expected, including permissions. In future this would have a ./run-tests.sh script to run every script for every test. I'm sure there are a lot of problems with the format, but there's still work to do on it https://gitlab.com/VioletaMG/buildstream-tests/tree/violeta/test-suite12:40
tristanvioleta, good start !12:50
tristanvioleta, first impressions are, I like that the script has a concept of collecting things and testing them automatically12:51
tristanIf I'm reading it right at a glance: I dont like that the script does `bst build` && `bst checkout` of everything first, and then proceeds to test output only afterwards12:52
tristanin any case, there are many approaches with bash12:53
tristanjust that part is, better to run & test each thing (tests will eventually become long running things, we'll want to know which ones fail right away)12:53
violetaok, makes sense12:53
tristanmaybe in the same way that you enumerate directories in a loop, we can have directories which contain scripts; and the master loop can source them and run a test function for each in a loop12:54
tristani.e. assuming each test script has a "function test() { ... }" or such12:55
tristanand those can source some common utility functions (for testing permissions or running builds etc)12:55
persiaAny chance of testing with yarn or similar?12:56
tristanI dont know what yarn is12:56
tristanlooks like something that emerged from nodejs ?12:57
persiahttps://blog.liw.fi/posts/yarn12:57
violetagood point, I think it'll be cleaner that way12:58
tristanI dont know, I dont want to make things more complicated than they should be, to be honest12:59
violeta(my comment was to the individual test scripts)12:59
tristanif it is simple and appropriate for the use cases, then sure12:59
persiaIn my experience, yarn tests are simple to read, and comprehensive for functional testing for anything with a primary interface as a command-line.13:00
tristanbut yeah, violeta, dont bust your brain cells overcomplicating things just because someone thought up an ultra fancy testing framework that will cause us to lose time wrapping our heads around13:00
persiaOh indeed.  My suggestion to use yarn isn't intended to slow anything :)13:01
tristanit would be interesting to, for instance, have a bunch of tests on different host scenarios, assert graceful failures for projects that want to use git but have no git installed etc, but we are also bound by gitlab runners13:02
violetabut that's not testing Buildstream, but testing different host environments?13:08
violetanot sure if I've misunderstood13:08
tristanvioleta, no disregard that comment, it's a nice-to-have-but-we're-not-gonna-have-it-for-now13:08
violetaok13:09
tristanvioleta, just to clarify what that was about, it's about fault tolerance or more specifically, failing gracefully; BuildStream does not require host git or host bzr; but projects which use git plugins _do_, tests could theoretically be made to ensure that buildstream informs the user gracefully before spending hours processing just to find that there is not git installed on the host13:10
violetait's kind of close to my time for leaving, what useful things could I do? Just continue improving the script with the comments you've made? Do we have a list of the things we want to test or is something we are thinking currently?13:10
tristanbut let's file that category of tests into unrelated for now13:10
violetaok13:11
tristanvioleta, improve structure based on my comments is one thing yeah, ensure that we have exercised all the options of the import plugin, and then I think next lets do some basic build element tests on softwares we know to build reliably without much dependencies beyond a runtime13:12
tristanafter that we'll want tests for compose elements13:12
tristanvioleta, also do we want a structure with many subdirs with separate projects ?13:13
tristanIt may be13:13
tristanI see you structured it that way, and it's probably a good idea13:13
tristanin any case, we should have a simple ./run-tests.sh or such at the top level which iterates the subdirs13:14
violetayes, that was my idea13:14
tristanalright looking good :)13:15
* tristan is going away now too...13:15
violetaand I thought that even if everything is on one branch, we could have one project for each related set of tests. But if it doesn't make much sense I can change that, I just did it now that we have only one test13:15
violetaok, have a nice evening o/13:15
tristangood news is, I have built 12 modules so far... converted from jhbuild... on Aarch64 !13:15
violetasee you in two weeks :-)13:15
tristanWith a work around to the ostree bug, but I'm not happy with the workaround13:16
tristanOkaaay 2 weeks I have to wait for you !13:16
* tristan sets timer13:16
violeta:-)13:16
gitlab-br-botbuildstream: merge request (jonathan/enhance-script-element->master: Jonathan/enhance script element) #22 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/2215:28
*** jonathanmaw has quit IRC16:56
*** tiagogomes has quit IRC17:03

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