IRC logs for #buildstream for Tuesday, 2018-07-31

*** bochecha has quit IRC00:05
*** xjuan has quit IRC00:17
*** foddo3 has joined #buildstream01:27
*** leopi has joined #buildstream03:15
*** leopi has quit IRC03:28
*** leopi has joined #buildstream05:06
*** ernestask[m] has left #buildstream05:12
*** lebster has joined #buildstream05:17
*** tristan has joined #buildstream06:07
gitlab-br-botbuildstream: merge request (tpollard/386-cherrypick->bst-1.2: widget.py: Limit failure summary to currently failing elements (#386)) #589 changed state ("merged"): https://gitlab.com/BuildStream/buildstream/merge_requests/58906:32
tristanjuergbi, Around ?06:34
juergbiyes06:34
tristanhttps://gitlab.com/BuildStream/buildstream/issues/38#note_87327672 seems to indicate that you intend to postpone fixing the permissions regression until a day that we can handle the most difficult parts, like setuid, arbitrary uid and xattrs06:35
tristanThis is not good, at all06:35
tristanWe need to open a separate, closable issue which does not block on rocket science06:35
tristanI am in the process of opening, and/or "dressing up" the deficit issues imposed by the early cycle landing of things06:36
juergbitristan: being able to set group permission without actually being able to specify group id doesn't make sense to me06:36
tristanjuergbi, it's a huge step backwards; right now you may need to do some hacks to create new groups and chowns before shipping a bootable system, but you can at least rely on the mode bits being carried through06:37
tristanbefore this regression06:37
tristanLets move forward and keep focused on this06:38
tristanI don't think this is acceptable at all, and was really unhappy to accept the CAS merge at GUADEC because of this06:38
juergbiso we should add a temporary solution for permission bits and then might need to introduce something completely different for the rest?06:38
tristanYour reassurance that we can work around CAS made me think that we will fix this06:38
juergbiyes, of course, we will fix this, but we need to keep the whole picture in mind06:39
tristanthat's conflating quite a bit, as far as I can see; CAS pertains to only storage of the metadata06:39
tristanI.e. if we can store the metadata of permissions, we should store UID/GID, xattrs, everything in the same storage06:39
tristanThe mode bits do not rely on the sandbox having anything fancy, though06:40
tristanIn a future where we address the more difficult issues, is there a reason why we would want to change the way we store file metadata ?06:40
juergbiwell, with hardlinks mode bits are still problematic, and also were with OSTree06:40
juergbi(with FUSE that's fixed)06:41
tristanThe FUSE in buildbox thing ?06:41
juergbiyes06:41
tristanWill that land in 1.3 ?06:42
juergbiwell, it's not implemented but FUSE avoids the hardlink issue06:42
juergbiat least optional support for buildbox I definitely want to land in 1.306:42
tristanI'm a bit unhappy about not being able to backport the fix to 1.2, to be honest06:42
tristanSince I am not aware enough of what security concerns might arise from not having this information in flatpak SDKs and runtimes06:43
tristanI still don't know if 1.2 is going to blow up in our face because of this regression06:44
tristanAnd that is a very hard question to answer06:44
juergbiyes, it's hard to answer but I still don't expect any serious issues06:44
juergbiin environments where everything is single user06:45
juergbii.e., it doesn't matter what group/other permissions you set if there is only one UID (and that's the owner of the file)06:45
tristanWe need a plan B for 1.4 (and possibly even 1.2), in case we cannot really land buildbox transition06:45
juergbiExtending CAS to cover the permission bits like OSTree would likely be relatively simple06:46
juergbiI just don't want to jump the gun and add something where we might want a different solution for the big picture06:47
tristanDuring 1.2, I should note that it is quite intended to also generate bootable systems, well; we already have been in freedesktop-sdk and in other places06:47
tristanSo flatpaks, while being the only thing (which we are *aware* of) that is "in production", is not the only concern06:47
juergbiyes, but as you mentioned above, the fully bootable system currently anyway needs undocumented workarounds06:47
juergbiadding a few chmods there is not impossible06:48
tristanjuergbi, I understand the sentiment, but we need to live within the release cadence, and sometimes that requires compromise06:48
juergbiyes, if there are actual users that are impacted, we need a quicker fix that may not be ideal06:48
tristanAnd this is a slippery slope, we should not wait for perfect in order to at least do what is possible now06:49
juergbibut so far we're not aware of anyone like that06:49
juergbithat's not the same thing06:49
tristanjuergbi, No, don't think of it that way, think of it the opposite way06:49
juergbiI'm saying the permission bits are hardly useful alone06:50
juergbii.e., it's far away from a 'good enough but not perfect' solution06:50
tristanHere is a GNOME analogy: It's not because Nokia sold out to microsoft that we can throw stable API out the window; instead, it is only by providing this stability that others will buy in06:50
tristanIt's not 'good enough', no, but it is most certainly better than "only executable or not"06:52
juergbiI'd say barely better06:53
tristanFor a project which started out with the primary target being "Create custom bootable linux systems from scratch", because "If we can do that, we can cover all the other build cases", this is pretty embarrassing06:53
juergbilet's just say that when we look into this (and we should do this very soon), we first spend a few minutes thinking about the big picture instead of immediately ignoring everything outside the permission bits regression06:55
juergbiwe should provide some solution for #38 soon anyway, even if it's just a documented way of handling the limitations06:56
juergbiI was hoping that we would get to that quite a while ago06:56
tristanjuergbi, I understand, but please understand that this is a hard fight for me when we allow things to regress like this06:56
juergbibut the discussion is currently not whether to merge CAS or not, it's merged already, assuming you don't want to back it out...06:57
juergbiso we have to discuss what to do next06:57
tristanjuergbi, while you might be personally very aware of what this could break and not, we also have to hold the line on issues like: https://gitlab.com/BuildStream/buildstream/merge_requests/58106:57
*** noisecell has joined #buildstream06:57
tristanjuergbi, So on one hand, I have people who misunderstand our priorities and goals, and have to design a format that will work for the ultimate plan06:58
tristanOn the other hand, I have this regression06:58
juergbithat needs thinking of the whole picture (UIDs, GIDs, etc.) independent of the permission bits regression06:58
tristanjuergbi, not *that* much, this is format we're talking about in 581, and it will still make sense to express mode bits separately from ownership bits in the format06:59
juergbiI'm not sure about that07:00
juergbie.g., where would you store file capabilities if we were to support that?07:00
tristanSeparately, of course07:00
tristanActually, I think you dont mean store, I think you mean *express*07:00
juergbistore as in .bst07:01
tristanBut I also dont think we'd want to express that part in the context of a plugin which stages a file07:01
juergbimaybe not but the same could be considered for permission bits outside the executable bit07:01
tristanFile capabilities and xattrs are probably better expressed by calling setcap in a script, and carried through the artifact metadata07:01
juergbipossibly, but the same could be said for permission bits07:02
juergbiand uid/gid07:02
juergbiall of those are likely very uncommon07:02
juergbi(in this context)07:02
tristanWell, this is not the only case, because we also now have tar, local, zip, etc to think about; tar actually should ideally just work transparently07:04
tristanbut currently I'm unsure of what it's behavior will be, asides from dropping the xattrs and ownership bits when run as a regular user07:04
juergbithere are both situations there07:04
juergbifor sources you often don't want uid/gid bits07:04
tristanjuergbi, the point being that if we have a way to express permissions in sources, we should have the same way applied wherever it appears in the format07:05
tristanWe both want the same thing. You want to only implement the ultimate solution for #38... I want to only implement the ultimate solution in the format.07:06
tristanSo there will be gaps, and if there are gaps, that is fine; so long as everyone is on the same page of what the end product is going to be07:06
tristanIt's better IMO to create a format which conveniently expresses the permission bits, acknowledging that some of these parts dont work because of the regression07:07
tristanThan to change formats along the way07:07
juergbisure, as long as it's about aspects that are already clear07:07
tristanFor local source, I'm thinking a similar behavior as proposed in 581 will work, with a possibility to have a list of glob patterns which single out specific files to be staged and set permissions on those07:08
tristanI do not think it sensible to expose only the executable bit through the format, when it's clear that all of the bits are important; and that permission bits are clearly different things than ownership bits and xattrs07:10
tristan<juergbi> we should provide some solution for #38 soon anyway, even if it's just a documented way of handling the limitations07:12
tristanjuergbi, that also is disappointing, a documented way of handling the limitations is something we should have right now, in the *absence* of fixing #3807:12
tristanWhich still needs to remain our goal07:12
tristanHonestly, other tooling has solved this problem, we need to solve it to ensure we are relevant07:13
juergbiyes, I wanted to have this already a long time ago as well07:13
juergbiwe should definitely have some reasonable support for permissions/ownership. explicit annotations may be part of the solution, though, imo07:14
juergbi(at least in case of setuid / file capabilities, I strongly prefer explicit annotations to implicit magic)07:15
*** toscalix has joined #buildstream07:17
tristanjuergbi, explicit annotations in places are necessary, but is precisely what we want to strive to avoid07:23
tristanWe've seen this before, in rpm spec files, in hacky scripts which run before deploying a firmware after building a system (I've seen these scripts in at least 3 organizations so far, and is always a huge hack that is hard to keep in sync and desirable to remove from production pipelines)07:24
tristanWe're trying to achieve something better than the status quo, while we are doing great in other areas; we need to keep our focus on this end game as well07:25
juergbitristan: it depends. I've also seen some horrible scripts before. however, as I mentioned, for setuid I as a distro maintainer would want to be aware of every single setuid file installed in the system. i.e., I would actually dislike the automatism there (because it could lead to security issues)07:28
juergbiregular permission bits are typically much less of an issue (although blindly accepting world-writable files might also not be ideal)07:29
tristanjuergbi, That is *easily* handled with a semantic similar to `tar -tvv`07:29
tristanIt can even be tested for07:29
juergbiI don't understand how manual listing of a tar archive helps here...07:30
tristanin the first place, when building a system; we have to first trust the upstream maintainers, of packages like PAM and openssl07:30
tristanto have put a lot of effort into their build scripts to install something sensible07:30
juergbitrusting upstream maintainers of security-critical packages is one thing07:31
tristanafter that we tweak the system, only after a lot of burdensome research; knowledge which is better suited to the designers of the upstream software07:31
juergbibut allowing random app developers to install setuid root binaries is completely different07:31
tristanRandom app developers have always been able to setuid on make install, it doesnt mean that they do so07:32
*** noisecell has quit IRC07:32
tristanI think that is a separate conversation, really07:32
juergbion my system there are less than 30 setuid binaries in total, so the overhead of explicit annotation is definitely worth it to me, but maybe that's just me07:32
juergbiI guess so07:33
tristanThose 30 special cases add up, with setcaps, with intricate descisions of which binaries need which user/group/other bits, they all come together07:33
tristanEven if we were talking about one place to make those 30 exceptions; however, I don't believe we are07:34
tristanBecause of the pipeline nature of BuildStream, we should be able to trust that when I depend on an element which made those 30 exceptions; those attributes should carry through in the data07:34
juergbiyes, I'm not saying we only want explicit annotations, just wanted to mention that some explicit annotations can even be beneficial and we shouldn't focus too much on 'magic'07:35
tristan(we shoulnt have to make those exceptions more than once)07:35
juergbithe main point is that it needs to be reasonably convenient and maintainable07:35
tristanjuergbi, I think that filesystem data is essentially at the core of our bread and butter, and we need to be able to carry all these bits through in the artifacts - i.e. even if you want to explicitly set permissions for files installed by GDM or PAM, those should be applied in the corresponding elements07:45
tristanin the abstract, we are just a mechanism which processes elements with filesystem data in and out07:45
juergbiyes, I agree that we definitely would want annotations in the corresponding elements07:45
tristanWe should not complicate things by saying that `chmod` run in the install commands is not carried forward, and that we need to run special "things" which read annotations from public data that an element exposes07:46
juergbihowever, we may not be able to represent everything in the sandbox, which is a bit of an issue07:46
tristanRight, however; other build systems have managed to do it, the technique of `pseudo` and `fakeroot` are a bit too ugly for us; but I don't think this is impossible07:48
tristanI.e. first of all, we definitely need to accept that a setcap binary in a sandbox will not really have the capabilities it purports to have on the host system07:49
juergbito some extent that actually works in a user namespace (as much as the sandbox allows)07:49
*** finn has joined #buildstream07:49
juergbithe biggest issue is uid/gid07:49
juergbiwith a suitably configured linux host, I think we can handle this with subuid/subgid. however, this raises the bar for host system requirements07:50
tristanRight, and the only issue is recording it, pseudo uses LD_PRELOAD but we probably need a ptrace solution07:50
*** bochecha has joined #buildstream07:51
*** bochecha has joined #buildstream07:51
juergbione possibility I mentioned on gitlab is the combination of seccomp and ptrace. pure ptrace would be way too slow07:51
juergbifor just recording, the overhead for this may be acceptable, however, if we also want stat() to return the proper uid, this could be an issue07:52
tristanyeah, we definitely need that07:52
juergbialso, it's far from ideal that we have to pay the overhead for both FUSE and ptrace07:52
tristanUnfortunately, even if we only need read-back in a few cases, it would be horrible if the user ever had to know that and choose07:53
juergbione option could be to implement two solutions. one with subuid/subgid (requires suitable host config but is fast) and the other is ptrace (works on any linux but is slow)07:53
juergbiI expect the ptrace support with read-back to have a noticeable overhead07:53
juergbiand thus really want the faster subuid/subgid support07:53
juergbi(or LD_PRELOAD but that's not a good fit)07:54
juergbibut the ptrace support is also the most complicated one, and it's the one we wouldn't actually recommend...07:54
tristanIf we could run bwrap with LD_PRELOAD and have that override apply to what runs in the container, that'd be fine, but it's not possible07:55
juergbiyes, it would require cooperation by the project, we couldn't do it transparently07:56
tristanrather, we need fuse-like support for overriding the syscall table in a tree of processes, without context switching07:56
juergbithe only other option I could think of would be running a Linux VM07:56
* tristan has to eat lunch at this point07:57
*** tristan has quit IRC08:00
*** noisecell has joined #buildstream08:07
*** leopi has quit IRC08:08
*** noisecell has quit IRC08:11
*** ernestask has joined #buildstream08:12
* paulsherwood reads backscroll, and realises that folks are using 'stable' is if it is a real thing08:21
*** mohan43u has quit IRC08:23
*** mohan43u has joined #buildstream08:26
*** leopi has joined #buildstream08:28
*** bochecha has quit IRC08:30
gitlab-br-botbuildstream: merge request (valentindavid/331_include->master: WIP: Add support for include in project.conf) #471 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/47108:48
*** leopi has quit IRC08:53
*** leopi has joined #buildstream09:00
tiagogomesfakeroot_ng uses ptrace. However when I looked at it it didn't support all the arches baserock cared about09:05
juergbitiagogomes: do you know anything about the performance overhead offhand?09:07
tiagogomesjuergbi, no sorry, I didn't run any benchmark at it09:08
*** noisecell has joined #buildstream09:19
gitlab-br-botbuildstream: merge request (tpollard/483->master: WIP: plugins/git.py: Fail if ref is not in given track) #564 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/56409:19
*** WSalmon has quit IRC09:37
*** WSalmon has joined #buildstream09:37
gitlab-br-botbuildstream: issue #482 ("Decide whether to add type hints to coding standard") changed state ("closed") https://gitlab.com/BuildStream/buildstream/issues/48210:14
qinustyadds68: RE Manifect - Is the desire for this manifest to be produced during a build and elements, refs etc?10:18
adds68qinusty, erm i think it would be better to just call bst on a project with an option to produce the manifest, producing one every build is probably wasteful10:24
qinustyDoes #freedesktopsdk have a manifest I can take a look at?10:24
gitlab-br-botbuildstream: merge request (mablanch/448-autocompletion-broken-defaults->master: WIP: Resolve "Autocompletion defaults to the project's root before the element path") #592 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/59210:41
*** bochecha has joined #buildstream10:50
gitlab-br-botbuildstream: merge request (mablanch/448-autocompletion-broken-defaults->master: WIP: Resolve "Autocompletion defaults to the project's root before the element path") #592 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/59210:59
NexusI'm making changes to someone else's MR, should i append a commit onto their branch?11:16
gitlab-br-botbuildstream: merge request (jmac/virtual_directories->master: Abstract directory class and filesystem-backed implementation) #445 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/44511:16
tlaterNexus: Ask someone if they're happy with that ;p11:16
Nexusnot had to do this before so i'm not sure what our policy is11:16
Nexustlater: they aren't here11:16
Nexusthta's why i'm doing it11:17
tlaterSeems fine by me then, they can always revert it if need be.11:17
Nexuskk11:17
Nexusty11:17
gitlab-br-botbuildstream: merge request (richardmaw/cache-fail->master: Store failed builds in the cache) #475 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/47511:18
tiagogomesHrm, fixing ttps://gitlab.com/BuildStream/buildstream/issues/195 will disallow side-by-side projects as freedesktop-sdk has11:19
tlaterHrmmmmm... I'm trying to import an OS tarball, which of course contains device nodes11:23
tlaterThose can't be stored in CAS11:23
tlaterIs there any way to remove everything in /dev before creating my artifact in an import element?11:23
tlaterI suppose I might need a manual element, but just in case...11:23
KinnisonI thought juergbi had done something to put non-CAS-recordable content alongside in the bst cache?11:23
tlaterKinnison: I get an exception telling me that /dev/null has an unsupported file type11:24
Kinnisonoh dear11:24
KinnisonIs this only when using a remote cache?11:24
KinnisonOr with the local CAS based cache?11:24
tlaterKinnison: Local cache, can't cache the artifact.11:25
Kinnisonblerp11:25
* Kinnison guesses juergbi needs to weigh in11:25
tlaterKinnison: I'm 90% sure I'll need to create a manual element and remove the device nodes, frankly. This is how things have worked for as long as I can remember11:27
tlaterThe error message is nicer now, though11:27
Kinnisontlater: Yeah, the manual element approach is probably easiest11:28
* Kinnison supposes elements which want to create device nodes in the final output will probably have to do so with integration scripts or somesuch11:28
tlaterYep, I'll probably have to do this as part of my init scripts11:29
tlaterThough I think that's normal anyway11:29
gitlab-br-botbuildstream: merge request (mablanch/448-autocompletion-broken-defaults->master: WIP: Resolve "Autocompletion defaults to the project's root before the element path") #592 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/59211:30
* Kinnison used to have an initramfs based distro at a previous job where the linuxrc started by creating device nodes for the most part (though I think null and console were needed or the kernel was upset)11:31
jjardonHi! Would it be posible to add https://gitlab.com/BuildStream/buildstream/issues/524 to the blocker list? That issue is currently blocking us to use 1.1.411:32
KinnisonThat was easy to do though because it was a stock cpio of the device nodes11:32
*** finn has quit IRC11:33
juergbitlater: regular users normally can't create device nodes (I believe this will be supported in user namespaces with 4.18), I'm confused why you even get that far11:36
juergbitlater: or are you running bst as root?11:36
tlaterjuergbi: Extracting a tarball11:36
tlaterOh, yeah, hell I am!11:36
* tlater should fix that11:36
juergbiah ok11:36
juergbitar can't normally even extract those11:36
tlaterHrm, I'll need custom tar flags then11:37
* tlater checks if BuildStream supports this highly eccentric case yet11:37
juergbiwe should probably make sure that bst tar behavior is always the same, no matter what user11:37
tlaterjuergbi: This is why we test as a normal user in CI ;)11:38
juergbiyes, that's definitely good but occasionally you have someone running bst as root ;)11:39
tlaterYeah, I suppose this could be a problem for actual projects that don't test as thoroughly as we do.11:39
tlaterjuergbi: Do you have suggestions for how I could extract a tarball with device nodes in it?11:41
tlaterI could do it on the command line, but BuildStream doesn't handle this case well...11:41
tlaterHmm11:41
tlaterI guess I could use a file source and manually extract it11:42
juergbitlater: how do you manually extract it?11:44
juergbibtw: there is no need to have device nodes in tarballs / persistent file systems anymore these days11:44
tlaterjuergbi: I know, but I'm grabbing alpine's tarball11:45
tlaterjuergbi: tar -xf <tarball> -X dev/* would work, I think11:47
tlaterIf I used `kind: remote` instead of `kind: tar`11:48
persiajuergbi: None at all?  I thought there was still a need for /dev/zero, /dev/console, and a couple others (either in storage or in initramfs).12:14
juergbipersia: devtmpfs mount covers whole /dev12:16
juergbiand it's mountable early enough12:17
KinnisonI think you can ask the kernel to automount it after it unpacks the initramfs12:32
persiaIt's an ordering issue.  I had thought that a very minimal set of device nodes was required to run init, but if one can mount early enough, it doesn't matter.12:35
KinnisonCONFIG_DEVTMPFS_MOUNT: Automount devtmpfs at /dev12:36
KinnisonThough apparently that may not affect initramfs booting12:36
* Kinnison hrms12:36
KinnisonOh it means that initramfsen need to sort /dev on the target themselves12:37
*** mohan43u has quit IRC12:48
*** leopi has quit IRC12:49
*** mohan43u has joined #buildstream12:51
persiaIncreasingly not the ideal channel for the discussion, but generally the initramfs can mount devtmpfs (or whatever), making that easy.  The tricky bit is launching userspace processes in initramfs before /dev is populated at all.  A common example is init scripts that want to redirect output to /dev/null or /dev/console before those exist.12:53
*** finn has joined #buildstream12:54
*** xjuan has joined #buildstream12:55
*** mohan43u has quit IRC12:55
*** mohan43u has joined #buildstream12:58
*** leopi has joined #buildstream13:03
*** mohan43u has quit IRC13:03
*** mohan43u has joined #buildstream13:07
*** mohan43u has quit IRC13:11
*** mohan43u has joined #buildstream13:14
gitlab-br-botbuildstream: merge request (mablanch/447-stack-trace-checkout->master: Handle checkout failure for unbuilt elements) #590 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/59013:18
toscalixshould we consider a "race condition" a bug by default?13:26
noisecellif you want the tool to be deterministic, I would say yes?13:27
paulsherwoodit depends, imo. it could be deliberate as a feature of the algorithm/design13:28
paulsherwood(i'm thinking of ybd's randomised build order... which guarantees races)13:29
paulsherwoodbut most of the time it's almost certainly a bug13:29
flatmushgenerally you'd only use the term race condition if it's unplanned13:31
paulsherwoodoh...13:32
* paulsherwood googles13:32
* paulsherwood now agrees with flatmush13:33
paulsherwoodtoscalix: yes :-)13:33
persiatoscalix: I think it depends on the underlying problem.  If it introduces nondeterminism, then I think it is a bug.  If it just reorders log files, I think it doesn't matter.13:33
flatmushis a reordered log file not an example of non-determinism?13:34
persiaOr, rather, if it introduces *critical* nondeterminism.  Being fair about it, disordered logs are nondeterministic, but that happens with any parallel build process and is largely unavoidable if builds should happen quickl;y.13:34
paulsherwoodyup, imo13:34
persiaflatmush: It is, although my brain seems to have had an incorrect semantic mapping for "nondeterminism" when I wrote the first sentenc.13:35
toscalixthanks. I will label the ticket then as bug13:35
gitlab-br-botbuildstream: merge request (mablanch/448-autocompletion-broken-defaults->master: WIP: Resolve "Autocompletion defaults to the project's root before the element path") #592 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/59213:56
*** toscalix has quit IRC14:06
*** leopi has quit IRC14:06
gitlab-br-botbuildstream: merge request (tpollard/483->master: WIP: plugins/git.py: Fail if ref is not in given track) #564 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/56414:08
*** toscalix has joined #buildstream14:08
gitlab-br-botbuildstream: issue #531 ("Fetch jobs resume despite "terminate" option on CTRL-C") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/53114:10
*** leopi has joined #buildstream14:12
*** Phil has quit IRC14:14
gitlab-br-botbuildstream: merge request (relative_workspaces->master: WIP: Patch for issue #191 support relative workspaces) #504 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/50414:15
*** leopi has quit IRC14:21
*** eth2 has joined #buildstream14:27
valentindIt takes an awful amount of time for bst to start because it tries getting the size of the artifact directory.14:29
tlatervalentind: We have a ticket for that open14:32
tlaterI think jonathanmaw will be looking at that next week (he's on vacation atm)14:32
valentindtlater, OK, thank you.14:32
valentindSo I suppose until next week, I have to clean my artifact directory.14:33
tlater:(14:35
tlaterSorry about that, I wanted to spend more time optimizing it, but the branch was already huge at that point.14:35
valentindNo worries.14:40
toscalixhopefully we will have a known issues page soon where, at least, we will be able to prevent users and tell them workarounds until problems that are known get fixed14:41
tlaterOh, that would be very useful. I've also been accidentally re-stating known issues as of late, it's hard to keep up.14:42
toscalixbut let's keep in mind that the default action when something like this happens is to revert the changes. It is important that the changes are small enough so revert them does not becomes a drama14:43
persiaOne solution I've seen work well elsewhere is to merge a minimal implementation, followed immediately by opening a new WIP branch with improvements, etc.14:45
persiaThis helps stall reversion by clearly communicating to all that the issues are being addressed.14:45
laurenceso in this case do you propose to revert the change? maybe we cannot because it was a huge branch. but this is effecting users, sadly14:45
persiaThis depends on most users not using the primary integration branch though.14:46
laurencetlater, what's the ticket that captures this technical debt?14:47
toscalixlaurence, this is where the maintainer rules if there is no other process.14:47
laurencetoscalix, I notice we have a label named 'needs backport' - is that new?14:47
laurenceseems a good idea :)14:47
tlaterlaurence: needs backport is ages old ;p14:48
laurencetlater, ah14:48
tlaterOnly one issue had it afaik.14:48
laurencetlater, just rarely used14:48
laurencetoscalix, understood14:48
toscalixI cannot say of we should revert the change or not. That requires a carefull evaluation.14:48
gitlab-br-botbuildstream: merge request (tpollard/483->master: WIP: plugins/git.py: Fail if ref is not in given track) #564 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/56414:48
laurencetoscalix, should we also have a label for 'technical debt' at least ?14:49
laurenceI believe a label is enough to capture those issues14:49
toscalixI have concerns about putting a label with such a broad meaning14:49
toscalixwe would end up with that label in so many places...14:49
toscalixit would become useless at some point. If it requires further explanation, I would not do it14:50
toscalixif there is a technical debt, you create another task explaining what should be done, why and when14:50
laurenceok, but i am keen to devise some way of capturing the 1.4 technical debt14:50
Nexusmy tests are hanging on `tests/frontend/workspace.py::test_build[strict-git]`14:50
Nexusanyone else getting this?14:50
laurencesooner rather than later, since we are developing a lot at the moment and the earlier we start the better14:51
laurenceI can help by providing what I think the list is14:51
laurencewe just need to capture in gitlab14:51
toscalixcreate another tasks and assign 1.4 milestone, link the task to the one being closed14:51
tlaterlaurence: Sorry that took so long, the issue is #46614:51
laurencetlater, cheers14:51
cs_shadowhi, who should I contact for the credentials of the "buildstream" docker hub account?14:52
tlaterThat would be me14:52
adds68Hi, has anyone seen this error when trying to contact the cache?14:53
adds68[--:--:--][][] WARNING Failed to initialize remote https://testcache.codethink.co.uk:11002: Method not found!14:53
tlaterOh, wait14:53
tlaterThe actual buildstream account?14:53
tlaterssssam[m] probably still owns those.14:53
cs_shadowtlater: yeah, the actual buildstream one. Apparently the CI one doesn't have enough permissions other than push14:54
tlaterIt certainly doesn't, but I believe I gave you an account with enough permissions to do anything?14:54
tlaterIf not; I definitely need to now, heh14:55
cs_shadowtlater: no, I do not have any special creds14:55
tlatercs_shadow: Let me see what I can do14:56
cs_shadowtlater: thanks14:57
qinustynope adds68. I've never tried it over a network though14:59
adds68juergbi, hey i don't suppose you have seen the error i am seeing from the cas before ^^ ?14:59
adds68qinusty, hm yea it did work, but since the land and switching to 1.1.4 i now see this error14:59
juergbiadds68: hm, no, I don't think I've seen that before15:00
adds68:(15:01
adds68no logs reported from systemd either15:01
adds68juergbi, oh wait, there is an error now: SSL routines:OPENSSL_internal:PEER_DID_NOT_RETURN_A_CERTIFICATE.15:02
qinustyHow are you starting the CAS server?15:07
adds68bst-artifact-server --port 11002 --server-key /here/ --server-cert /here/ --client-certs /home/artifacts/authorized.crt --enable-push /path/to/repo15:11
adds68qinusty, ^15:11
tlatercs_shadow: Do you have a docker account?15:12
gitlab-br-botbuildstream: merge request (mablanch/448-autocompletion-broken-defaults->master: WIP: Resolve "Autocompletion defaults to the project's root before the element path") #592 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/59215:14
cs_shadowtlater: I can create one, give me a minute15:15
tlaterIn fact, does anyone else here have a valid docker account? iirc it took me a little while to make one.15:15
tlaterI'm not going to be around much after today, so it would be good to have someone else with admin rights.15:16
cs_shadowtlater: here's my profile: https://hub.docker.com/u/csshadow/15:17
tlaterAh, jjardon is also an owner15:18
tlatercs_shadow: I'm adding you as an admin, you're doing most of the maintainer work these days anyway15:19
tlaterYou should now be able to do anything you like here: https://hub.docker.com/u/buildstream/dashboard/15:19
cs_shadowtlater: thanks very much15:20
*** edb has joined #buildstream15:21
gitlab-br-botbuildstream: merge request (tpollard/483->master: WIP: plugins/git.py: Fail if ref is not in given track) #564 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/56415:32
flatmushDoes buildstream isolate the network when sandboxing?16:06
tlaterflatmush: It attempts to16:07
* tlater has not asserted how effective it is at doing so16:07
gitlab-br-botbuildstream: issue #532 ("bst cache responds: "Failed to initialize remote https://testcache.codethink.co.uk:11002: Method not found!"") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/53216:08
flatmushok, we're just seeing odd inconsistencies that would make it seem like it's accessing the network, but not sure yet, will keep you posted16:09
adds68Has anyone seen this error when configuring/using the cache?  SSL routines:OPENSSL_internal:PEER_DID_NOT_RETURN_A_CERTIFICATE.16:16
qinustyDidnt see the ping adds68 :( Sorry. I assume your /here/ for server crt and key actually points to the crt and key files?16:25
qinustyas opposed to a directory16:25
gitlab-br-botbuildstream: merge request (tpollard/483->master: plugins/git.py: Fail if ref is not in given track) #564 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/56416:25
gitlab-br-botbuildstream: merge request (tpollard/483->master: plugins/git.py: Fail if ref is not in given track) #564 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/56416:27
adds68qinusty, yea correct16:31
adds68qinusty, from further investigation it could be an ssl issue16:31
adds68due to certificates16:31
gitlab-br-botbuildstream: merge request (richardmaw/cache-fail->master: Store failed builds in the cache) #475 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/47516:34
laurenceqinusty, are you looking for some extra info on the YAML indentation issue from adds68 ? https://gitlab.com/BuildStream/buildstream/issues/47016:55
*** noisecell has quit IRC16:55
gitlab-br-botbuildstream: merge request (mablanch/448-autocompletion-broken-defaults->master: Fix autocompletion for elements in sub-folders) #592 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/59217:04
*** phildawson has quit IRC17:06
*** tlater has quit IRC17:08
*** aiden has quit IRC17:08
*** bethw has quit IRC17:08
*** milloni has quit IRC17:09
*** bethw has joined #buildstream17:11
*** aiden has joined #buildstream17:11
*** milloni has joined #buildstream17:12
*** tlater has joined #buildstream17:13
gitlab-br-botbuildstream: issue #76 ("Cache failed builds") changed state ("closed") https://gitlab.com/BuildStream/buildstream/issues/7617:17
gitlab-br-botbuildstream: merge request (richardmaw/cache-fail->master: Store failed builds in the cache) #475 changed state ("merged"): https://gitlab.com/BuildStream/buildstream/merge_requests/47517:17
*** leopi has joined #buildstream17:36
gitlab-br-botbuildstream: merge request (valentindavid/331_include->master: WIP: Add support for include in project.conf) #471 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/47117:57
*** cholcombe has joined #buildstream18:37
cholcombe<+SP9002_@efnet> so, he wants the win. so we're just gonna get lunch or something, then hes gonna push me to the ground and tap my ass with his foot so he can claim he "kicked my ass" tbh im going along with it becase I dont wanna lose any teeth18:37
*** cholcombe has quit IRC18:37
laurenceat least his patter was semi-interesting....18:44
laurenceNexus, right so with the merging of caching of failed builds - https://gitlab.com/BuildStream/buildstream/merge_requests/47518:45
laurenceWe need to file an extra issue to account for the technical debt we have accrued18:45
laurenceas there's an issue with artifacts not being pushed18:46
*** leopi has quit IRC18:51
*** xjuan has quit IRC19:21
*** jennis2 has joined #buildstream19:55
*** jennis has quit IRC19:57
*** ernestask has quit IRC20:38
*** bochecha has quit IRC22:33
*** edb has quit IRC22:53

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