IRC logs for #buildstream for Monday, 2019-04-08

*** tristan has quit IRC02:35
*** nimish2711 has joined #buildstream02:41
*** tristan has joined #buildstream03:05
*** nimish2711 has quit IRC04:53
*** nimish2711 has joined #buildstream05:39
*** nimish2711 has quit IRC05:44
*** nimish2711 has joined #buildstream05:46
*** nimish2711 has quit IRC06:29
*** nimish2711 has joined #buildstream06:49
*** benschubert has joined #buildstream07:51
coldtomif anyone's interested, i spent some time this weekend procrastinating uni work by building BuildStream in BuildStream: http://othko.xyz/posts/bst-in-bst/08:07
Kinnisoncoldtom: did you use skullone[m]'s stuff as a basis?08:22
Kinnisoneither way, nice job. +108:23
coldtomKinnison: nope, I wasn't aware of any other stuff in that direction08:23
Kinnisonhttps://gitlab.com/BuildStream/buildstream-integration/08:24
Kinnisonwas a start08:24
Kinnison*please* feel free to improve/update that with the results of your weekend efforts :D08:25
*** Guest62 has joined #buildstream08:27
*** rdale has joined #buildstream08:32
*** raoul has joined #buildstream08:35
*** tpollard has joined #buildstream08:59
*** jonathanmaw has joined #buildstream09:14
*** nimish2711 has quit IRC09:23
*** Guest62 has quit IRC09:25
*** lachlan has joined #buildstream09:36
*** lachlan has quit IRC09:40
*** lachlan has joined #buildstream09:42
*** lachlan has quit IRC09:45
*** tristan has quit IRC09:52
*** lachlan has joined #buildstream09:53
jenniscoldtom, nice blog post09:56
*** tristan has joined #buildstream09:58
*** lachlan has quit IRC10:04
*** lachlan has joined #buildstream10:09
*** lachlan has quit IRC10:15
*** lachlan has joined #buildstream10:32
*** Guest62 has joined #buildstream10:43
*** lachlan has quit IRC10:44
*** lachlan has joined #buildstream10:46
*** lachlan has quit IRC10:51
*** lachlan has joined #buildstream10:53
*** nimish2711 has joined #buildstream10:55
*** lachlan has quit IRC11:06
*** toscalix has joined #buildstream11:18
*** lachlan has joined #buildstream11:20
*** toscalix has quit IRC11:27
*** nimish2711 has quit IRC12:08
*** nimish2711 has joined #buildstream12:09
*** nimish2711 has quit IRC12:41
*** nimish2711 has joined #buildstream12:52
*** toscalix has joined #buildstream12:54
*** Guest62 has quit IRC13:03
*** Guest62 has joined #buildstream13:04
*** Guest62 has quit IRC13:08
*** lachlan has quit IRC13:10
*** Guest62 has joined #buildstream13:19
*** lachlan has joined #buildstream13:29
*** Guest62 has quit IRC13:29
*** Guest62 has joined #buildstream13:31
*** lachlan has quit IRC13:34
tpollardurk https://gitlab.com/BuildStream/buildstream/-/jobs/19262413013:35
Kinnisonthat doesn't sound good13:35
juergbitpollard: that's a flaky test issue we see occasionally. just retry13:40
juergbi(asyncio issue)13:40
*** lachlan has joined #buildstream13:43
*** toscalix has quit IRC13:48
jennisjuergbi, I'm able to cd into the tmp dir where the test fails and build with remote execution but I'm not able to get the tests passing14:13
jennisMy guess is that it's not seeing the user config14:13
juergbijennis: what failure are you seeing?14:14
jennisNOTIMPLEMENTED14:14
jennisor something like that14:14
jennissec14:14
jennis[00:00:00][77965fc3][   build:autotools/amhello.bst         ] FAILURE Failed to query action cache: StatusCode.UNIMPLEMENTED (Method not found!)14:16
jennisDo you need an action cache env variable too?14:16
jennisOur gitlab-ci.yml file suggests not14:17
*** lachlan has quit IRC14:19
*** lachlan has joined #buildstream14:23
jennisNot having any luck with gitlab-ci/buildgrid.compose.yml either14:29
*** lachlan has quit IRC14:30
*** lachlan has joined #buildstream14:34
juergbijennis: in my setup I have all three service (execution, action cache, CAS) on the same endpoint14:44
jennisDo you have another container running as a BuildStream remote cache then?14:45
juergbiI'm not using containers for this14:45
juergbiJust a single bgd instance + a worker + bst-artifact-server14:46
jennisI see, but it should be possible14:46
jennisThe compose image we're using just spins up exactly that, right?14:46
jenniscompose manifest*14:46
*** lachlan has quit IRC14:47
juergbiI think that has two different containers, one for execution service + action cache and one for CAS14:49
juergbi(+ worker[s])14:50
*** lachlan has joined #buildstream14:51
jennisNo idea what's going on15:02
jennisI can build remotely if I don't go via the testsuite15:02
jennisIf I am building with remote execution and `bst --cache-buildtrees always build whateva.bst`, should I expect my local cache to contain buildtrees?15:03
jennisAnd vice versa, if I `bst build whateva.bst` I should expect that my local cache is free of buildtrees (providing the build passed)15:04
*** phildawson has joined #buildstream15:19
*** phildawson has quit IRC15:20
*** lachlan has quit IRC15:20
juergbijennis: yes, that's what I'd expect15:20
*** lachlan has joined #buildstream15:24
jennisInteresting...15:31
jennisjuergbi, have you seen this error before from the bot?15:34
jennis2019-04-08 16:33:50,835:[                buildgrid.bot.tenant][ERROR]: [Errno 2] No such file or directory: 'buildbox': 'buildbox15:34
*** lachlan has quit IRC15:37
*** lachlan has joined #buildstream15:42
juergbijennis: that would mean buildbox-fuse is not installed15:50
raoulShould read services (bytestream Read and CAS BatchReadBlobs) be updating mtimes for blobs? I've realised as I've only done an update_tree_mtime for an artifact files, so other parts may expire sooner, even if they've been read since16:10
raoulCould just make the artifact service update files mtimes but I think it'd make sense to update times when we read them16:11
juergbiraoul: we should do it in the artifact service, imo16:16
juergbias we want to keep those files around even if some happen to be cached already on the cache (and thus, the cache doesn't call Read/BatchReadBlobs)16:16
juergbitheoretically, the server could have different policies for different file types. however, I think for now we best keep it simple16:17
raoulYeah wasn't sure if we'd maybe want to update mtimes for when we check if blobs are on a server too, but can just put it all in the artifact service for now16:18
*** nimish2711 has quit IRC16:20
*** lachlan has quit IRC16:20
juergbiraoul: with the planned separation between artifact service and CAS, the timestamp update should be triggered indirectly by the artifact service calling GetMissingBlobs() on the CAS server16:25
juergbibut in the first step bst-artifact-server will not use remote CAS, so it can do it internally16:25
juergbieh, *FindMissingBlobs()16:26
raouljuergbi, I thought the plan would be to have the artifact service just return the artifact protos, and then it'd be up to clients to call GetMissingBlob on the CAS server? That way if we don't use logs or buildtrees they'd be allowed to expire16:27
juergbiit could be done by the client, but then the client would essentially define the retention policy on the CAS server16:29
juergbiand that doesn't sound ideal16:29
juergbiand artifact service likely has higher bandwidth and lower latency to the CAS server, so FindMissingBlobs() server to server would likely be more efficient16:30
raoulhow would it then deal with expiring blobs that aren't used? I thought this was something we wanted to eventually do16:31
juergbiwhich blobs do you mean? parts of the payload/files, or buildtree/logs?16:32
*** lachlan has joined #buildstream16:32
raoulbuildtree/logs16:33
juergbifor buildtree/logs, the artifact server could potentially have configuration whether the timestamp update / FindMissingBlobs() should include buildtree and/or logs16:33
juergbifor an artifact server, I don't think we want to make this client driven for the individual parts16:34
juergbii.e., I expect server side configuration to be more useful in practice, but probably depends on the organization/project16:35
raoulRight, that makes sense, I guess a lot of this will be something to think about in more detail later16:35
raoulanyway I'll add bits to update the blobs from the artifact service16:35
raoulcheers juergbi :)16:35
juergbiyes, and it may be sensible to support timestamp update on Read() in the CAS server but maybe as configuration option16:36
juergbiI'd prefer not requiring clients to call FindMissingBlobs() for timestamp updates, though (as that call is not really needed on the client side for downloads)16:37
*** Guest62 has quit IRC16:45
jennisjuergbi, eventually got to the bottom of it... Martin's compose manifest spins up a separate container (on another port) for the storage service, our testsuite expects this service to be at the same endpoint as AC and the execution service16:49
*** raoul has quit IRC17:08
*** benschubert has quit IRC17:18
*** lachlan has quit IRC17:42
*** lachlan has joined #buildstream17:43
*** jonathanmaw has quit IRC17:51
*** jonathanmaw has joined #buildstream17:52
*** jonathanmaw has quit IRC18:01
*** lachlan has quit IRC19:00
*** lachlan has joined #buildstream19:15
*** lachlan has quit IRC19:16
*** rdale has quit IRC21:18

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