IRC logs for #buildstream for Friday, 2017-10-13

*** semanticdesign has quit IRC01:29
*** semanticdesign has joined #buildstream01:29
*** semanticdesign has quit IRC01:49
*** semanticdesign has joined #buildstream01:50
*** semanticdesign has quit IRC02:45
*** semanticdesign has joined #buildstream02:46
*** semanticdesign has joined #buildstream02:47
*** semanticdesign has quit IRC03:37
*** tristan has quit IRC05:41
*** tristan has joined #buildstream05:47
gitlab-br-botpush on buildstream@master (by Tristan Van Berkom): 1 commit (last: Ensure that artifact file permissions are set in the right order) https://gitlab.com/BuildStream/buildstream/commit/a968bab76201856a67c876be25745fee912c136b06:58
gitlab-br-botpush on buildstream@master (by Tristan Van Berkom): 1 commit (last: element.py: Force remove artifact assembly directory on failure to commit) https://gitlab.com/BuildStream/buildstream/commit/446875be50996de0c1447af43de75d1f7b03721907:15
gitlab-br-botbuildstream: merge request (81-non-empty-read-only-directories-not-handled-during-bst-build-and-others->master: Ensure that artifact file permissions are set in the right order) #100 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/10007:15
gitlab-br-botpush on buildstream@master (by Tristan Van Berkom): 1 commit (last: _plugincontext.py: Fix third party plugin loading) https://gitlab.com/BuildStream/buildstream/commit/58a1dd4ba9aef43a47d7dd24deee6eb9e9e45b3008:36
gitlab-br-botbuildstream: merge request (external_plugin_errors->master: _plugincontext.py: Fix third party plugin loading) #107 changed state ("closed"): https://gitlab.com/BuildStream/buildstream/merge_requests/10708:37
gitlab-br-botbuildstream: issue #110 ("Stacktrace when loading plugin installed in 'develop' mode") changed state ("closed") https://gitlab.com/BuildStream/buildstream/issues/11008:37
*** jonathanmaw has joined #buildstream08:48
*** bochecha has joined #buildstream09:05
*** ssam2 has joined #buildstream09:07
*** adds68 has quit IRC09:22
*** adds68 has joined #buildstream09:22
ssam2tristan, i'm getting confused by the term "canonical push/pull urls"09:29
ssam2as in https://gitlab.com/BuildStream/buildstream/issues/11209:29
ssam2does that just mean, the issue that the ssh:// push protocol requires a corresponding http URL to actually do anything ?09:30
tristanssam2, it basically means; it would be nice to just give buildstream one url09:31
tristanfor one artifact server09:31
ssam2right; but user authentication makes that more complex09:31
tristanhopefully the scheme also supports anything we'd need, like port number09:31
tristanyes09:31
tristanIt doesnt necessarily mean that all users need to authenticate and push, and we could have multiple url schemes09:32
ssam2ok, that makes sense then09:33
tristanssam2, so one simpler-that-writing-a-whole-deamon approach might be... supporting pull with an ssh url ?09:33
ssam2yeah, that seems much easier09:33
tristanSo then, people could use http in read-only09:33
tristanBut... it doesnt yet consider that people will want to push and pull tarballs09:33
ssam2indeed. i think that's a tangent from #111 and the multiple artifact caches feature, though09:34
tristanSo, whatever is done for that; should hopefully consider that using the same configuration API, we can eventually support interacting with tarball using clients09:34
ssam2to push and pull tarballs we need to add a daemon with its own protocol that can receive tarballs09:34
tristanI.e. one doesnt need to be implemented for the other09:34
ssam2yeah09:34
tristanBut one needs to consider that the other will have to happen09:34
tristanSo clueless-about-networking me... wants to hope that using an ssh login to an artifact server and running a remote script... might allow that remote script to direct the client to another http url ?09:37
tristanI.e. pull-over-ssh might be just like pull-over-http with one extra roundtrip ?09:37
ssam2hmmmmmm09:37
tristanheh09:38
ssam2ostree-push does implement a protocol09:38
ssam2so no reason it couldn't respond with a http URL09:38
ssam2good idea09:38
tristanostree-push is something else... look at our fork09:38
ssam2yeah09:38
tristanah I misread you09:38
tristananyway yeah09:38
ssam2and since there's a protocol, we could extend it to receive tarballs in future if we wanted09:39
tristanright, certainly...09:39
tristanalso download of packed up ostree stuff via TarStream might make sense for pull09:40
ssam2yeah09:40
ssam2but we presumably don't want that hidden behind ssh, so we'd need to have something running as a cgi script in the http server, or listenening on a different port, to handle the tarball requests09:40
ssam2still, it's easy enough to write something in python that does such09:41
ssam2and can run as a standalone http daemon, or gated behind a real one, as per sysadmin preferences09:41
*** tlater has joined #buildstream09:41
tristannod, if we do, we'll want to use twisted or flask or such09:41
tristanthe web stuff baked into the standard library is the farthest thing from secure09:42
tristanalso a goal would be to have something you can install and run09:42
tristaninstead of the ad-hoc stuff we have right now09:42
tristanwell, maybe not run09:42
tristanI dont know... it gets complicated and then you need a daemon ?09:42
tristananyway, simplifying that setup so that it's *easy* is important09:43
ssam2flask is nice in this regard09:43
ssam2as I think most python web frameworks are09:43
ssam2in that you can run the webapp as a standalone httpd server for testing / local setups09:43
ssam2and integrate it with apache or whatever using wsgi for production09:44
jonathanmawtlater: I've had a look, and it seems the .yaml files weren't installed to the right place10:33
jonathanmawmystery solved10:33
tlaterjonathanmaw: Oh, alright. This probably requires some better documentation/errors10:33
jonathanmawtlater: hmm, Element should be raising errors if the file is missing, anyway.10:35
tlaterjonathanmaw: Do all plugins require defaults?10:36
tristanI think so10:37
tristanIt might not need to be required, but I think it currently expects the adjacent yaml file10:37
tristantlater, not only because they need to *set* defaults, but otherwise comments in the YAML file are also the defacto way to document plugins10:37
tristanso you'll have your sphinx stuff loading those too10:38
jonathanmawok, looks like the current behaviour is to allow plugins with missing defaults files https://gitlab.com/BuildStream/buildstream/blob/master/buildstream/element.py#L145610:47
tristanssam2, so I noticed the other day... there is one thing that is missing, or rather a convenience we dont have - I'm thinking of leaving it out10:51
tristanssam2, that is; with the older arches approach, it looks like the arch is automatically fed to variables10:51
tristanas in %{bst-arch}, %{bst-target-arch}10:52
ssam2oh yeah10:52
tristanWith the current implementation, you'd need to define a variable conditionally depending on the arch type project option10:52
ssam2how would that look ?10:52
tristanwhich is, annoying; a feature to solve that would be allowing a variable to be declared with the value of an option10:52
* tristan writes psuedo yaml10:53
ssam2should we not just expose all the options as variables ?10:53
tristanssam2, like this: https://bpaste.net/show/f69aa308718410:55
tristanEhhhh10:55
tristanssam2, declaratively, maybe10:56
tristanthat's the feature I was thinking10:56
tristanAdd some base option to the option definition, like export-variable: True10:56
ssam2ok, i guess that's sensible to make it optional10:56
tristannamespaces and unwanted surprises and all10:57
tristanssam2, or rather: export-variable: "variable-name"11:00
ssam2better yeah11:00
gitlab-br-botpush on buildstream@jonathan/all-elements-need-yaml (by Jonathan Maw): 1 commit (last: Make all element loading require a yaml file) https://gitlab.com/BuildStream/buildstream/commit/58fc5628c4fdb6911b3ea57cdc8e0ad7790dd44711:04
gitlab-br-botbuildstream: merge request (jonathan/all-elements-need-yaml->master: Make all element loading require a yaml file) #108 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/10811:05
tlaterBefore I forget about this again, tristan, what exactly is your idea for https://gitlab.com/BuildStream/buildstream/merge_requests/93 ?11:06
tristandidn't I comment on that yesterday ?11:08
tristantlater, did you pay attention to the changes I made on your other branch before landing ?11:10
tristanI got one part wrong apparently, fixing comment and code around that11:10
tlaterYes, I just read through all of them11:10
tristantlater, the reason you had 'try / finally:' in element.py because of tmpfile mechanics trying to remove things unsafely yes ?11:10
tlaterThis is two weeks ago - but I think it was a permission issue. tmpfile mechanics won't change the permissions and error out11:11
tristanand... why the hell do we use tmpfile at all to create the directory for assembling the artifact anyway ?11:11
tristanhttps://gitlab.com/BuildStream/buildstream/issues/81#note_43329110 <-- tlater yes that is the reason11:11
tristanjuergbi, you did that right ? any rationale for tmpdir of assemblydir ?11:12
tlaterRight, yeah, and I'm pretty sure that the try/finally just ensures that the permissions are correct11:12
* tlater looks at tristan's changes again11:13
juergbitristan: was this because of the introduction of subdirectories?11:13
juergbii.e., we have to construct the artifact structure, otherwise the high-level ostree commit support won't work?11:13
tristanjuergbi, we added assemblydir I believe because yes, logs/ meta/ files/ thing11:13
tristanjuergbi, So, the whole sandbox itself is a tmpdir11:14
tristanwhich is why I wonder11:14
tristan:)11:14
tristanlooks like a tmpdir in a tmpdir11:14
* tristan thinks, instead of try/finally, just use a hard coded dir name11:14
tristanand remove the extra tmpdir context manager thing11:15
tristanwin + win + win11:15
* tlater thinks that makes sense11:15
tlater:)11:15
tlatertristan: Also, yes, you did comment on !93, but I haven't made any real changes since I put it up originally11:16
tlaterIt's still floating in "let's discuss this on IRC"11:16
tristan93 93 93 93....11:16
tlaterThe one I linked earlier :)11:16
tlaterWarnings for overwriting things11:17
tristantlater, fix the comments I made related to the sources and we're good to go11:17
tlaterYou're fine with just warnings there then?11:17
tlaterAh, no, you did comment about errors11:18
tlaterAlright, ta11:18
tristanlooks like that's working11:24
gitlab-br-botpush on buildstream@fix-artifact-cleanup (by Tristan Van Berkom): 1 commit (last: element.py: Fix cleanup after collection of artifact with read-only directories) https://gitlab.com/BuildStream/buildstream/commit/b1552ea657a0d9da7ee8733334a02a2f92dc7f9711:28
gitlab-br-botbuildstream: merge request (fix-artifact-cleanup->master: element.py: Fix cleanup after collection of artifact with read-only directories) #109 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/10911:29
tristanSo I also move the artifacts dir from the sandboxroot, to the rootdir which the sandboxroot is inside of11:34
tristannot sure why it was nested that far, but CI looks to be working11:34
gitlab-br-botbuildstream: merge request (fix-artifact-cleanup->master: element.py: Fix cleanup after collection of artifact with read-only directories) #109 changed state ("merged"): https://gitlab.com/BuildStream/buildstream/merge_requests/10911:45
gitlab-br-botpush on buildstream@master (by Tristan Van Berkom): 1 commit (last: element.py: Fix cleanup after collection of artifact with read-only directories) https://gitlab.com/BuildStream/buildstream/commit/b1552ea657a0d9da7ee8733334a02a2f92dc7f9711:45
gitlab-br-botbuildstream: Tristan Van Berkom deleted branch fix-artifact-cleanup11:45
gitlab-br-botbuildstream: issue #81 ("Non-empty read-only directories not handled during 'bst build' and others") changed state ("closed") https://gitlab.com/BuildStream/buildstream/issues/8111:46
*** tristan has quit IRC11:51
*** tristan has joined #buildstream12:46
gitlab-br-botpush on buildstream@sam/no-install-python-deps (by Sam Thursfield): 1 commit (last: .gitlab-ci.yml: Use `pip3 install --no-index` when installing BuildStream) https://gitlab.com/BuildStream/buildstream/commit/a4a323857a2958c4c24dd625ee289bdb2a293e3012:52
gitlab-br-botbuildstream: merge request (sam/no-install-python-deps->master: .gitlab-ci.yml: Use `pip3 install --no-index` when installing BuildStream) #110 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/11012:53
jonathanmawtristan: looking at all the test failures as a result of making it mandatory to have an accompanying .yaml file with every element, it seems the "stack" element has been happily existing without a .yaml12:56
jonathanmawgiven that stacks haven't been hugely undocumented as a result, I'm inclined to rethink my position13:02
jonathanmawso I'll leave my changes to make them mandatory alone for now.13:03
jjardon[m]hi, for the documentation at https://buildstream.gitlab.io/buildstream/install.html#installing; is there a git repo somewhere to send a improvement/fix?13:03
jjardon[m]ah, I think I found it: https://gitlab.com/BuildStream/buildstream/blob/master/doc/source/install.rst13:05
gitlab-br-botpush on buildstream@jjardon/arch (by Javier Jardón): 1 commit (last: doc/source/install.rst: Add instructions for Arch systems) https://gitlab.com/BuildStream/buildstream/commit/3bf6c9d027efb8c8f1074041d52570e7212a598a13:21
gitlab-br-botbuildstream: merge request (jjardon/arch->master: doc/source/install.rst: Add instructions for Arch systems) #111 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/11113:21
gitlab-br-botbuildstream: merge request (jjardon/arch->master: doc/source/install.rst: Add instructions for Arch systems) #111 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/11113:22
gitlab-br-botpush on buildstream@jjardon/arch (by Javier Jardón): 20 commits (last: tests/testutils/runcli.py: Provide the last raised exception in the result) https://gitlab.com/BuildStream/buildstream/commit/c986ab45d9325dbe5dd242291e40d157f238eea913:22
gitlab-br-botbuildstream: merge request (jjardon/arch->master: doc/source/install.rst: Add instructions for Arch systems) #111 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/11113:22
tristanjjardon[m], looks good, you sure that is python3 right ?13:49
tristanand you dont just happen to have it installed anyway ?13:49
jjardon[m]tristan: yup, in Arch python = python313:51
tristanjjardon[m], set to merge anyway :)13:52
tristanjjardon[m], I think for the GNOME wiki page we can link back to our docs as much as possible, so that's good to have another distro, fedora instructions would be nice too13:53
tristanI'll try to cook up that wiki page if I can...13:53
tristanseems might be a good thing just to get the rest of the release-team to actually try it out13:54
tristanand move on from there13:54
jjardon[m]tristan: yes, the link is already there, see the install section at https://wiki.gnome.org/jjardon/BuildSystemComponentBuildstream#Setting_up_BuildStream13:55
tristanSweet13:55
jjardon[m]tristan: can you remind me where the jhbuild conversions are?13:56
gitlab-br-botpush on buildstream@master (by Tristan Van Berkom): 1 commit (last: doc/source/install.rst: Add instructions for Arch systems) https://gitlab.com/BuildStream/buildstream/commit/96af5cdb25fa0272957e297a7585962f824c97a714:01
gitlab-br-botbuildstream: merge request (jjardon/arch->master: doc/source/install.rst: Add instructions for Arch systems) #111 changed state ("merged"): https://gitlab.com/BuildStream/buildstream/merge_requests/11114:01
gitlab-br-botbuildstream: Javier Jardón deleted branch jjardon/arch14:01
gitlab-br-botpush on buildstream@74-prevent-artifacts-from-containing-files-in-buildstream-build (by Tristan Maat): 6 commits (last: exceptions.py: Added USER_ASSERTION load error) https://gitlab.com/BuildStream/buildstream/commit/bf679177ffd3041ad72600a87086bee19807753c14:07
gitlab-br-botbuildstream: merge request (74-prevent-artifacts-from-containing-files-in-buildstream-build->master: Add warnings when staging to /buildstream/build) #93 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/9314:07
jjardon[m]tristan: thanks! how the updated docs reach https://buildstream.gitlab.io/buildstream/install.html ?14:18
jonathanmawfound the cause of my missing .yaml files, I was missing include_package_data in setup.py14:36
gitlab-br-botpush on buildstream@74-prevent-artifacts-from-containing-files-in-buildstream-build (by Tristan Maat): 1 commit (last: Add warnings when staging to /buildstream/build) https://gitlab.com/BuildStream/buildstream/commit/5992fcf93bff0ca5ec5177482c35d4b80a5b289e14:37
tlaterjonathanmaw: Yes, that's an important one14:37
* tlater checks buildstream documentation on plugins14:37
gitlab-br-botbuildstream: merge request (74-prevent-artifacts-from-containing-files-in-buildstream-build->master: Add warnings when staging to /buildstream/build) #93 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/9314:37
jonathanmawtlater: it's theren14:37
jonathanmawthough it wasn't in the setup.py file that your repo had14:38
jonathanmawhence my confusion14:38
jonathanmawall sorted now14:38
gitlab-br-botbuildstream: merge request (102-run-ci-as-non-root-user->master: WIP: Resolve "Run CI as non-root user") #104 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/10414:55
gitlab-br-botpush on buildstream@102-run-ci-as-non-root-user (by Tristan Maat): 20 commits (last: _frontend/main.py: Added -o/--option main CLI params) https://gitlab.com/BuildStream/buildstream/commit/9dbeffa291f3eb3a951ae785f7b42b211f70847014:55
gitlab-br-botpush on buildstream@non-sandbox-builds (by Tristan Maat): 7 commits (last: Ensure that artifact file permissions are set in the right order) https://gitlab.com/BuildStream/buildstream/commit/a968bab76201856a67c876be25745fee912c136b14:59
gitlab-br-botbuildstream: merge request (non-sandbox-builds->master: Add %{script} format to `buildstream show`) #102 changed state ("opened"): https://gitlab.com/BuildStream/buildstream/merge_requests/10214:59
jjardon[m]hi, is it not possible to build several elements with the same command line?15:00
jjardon[m]something like15:00
jjardon[m]bst build --track core/adwaita-icon-theme.bst core/dconf.bst core/glib-networking.bst core/gvfs.bst core/libcanberra.bst15:00
jjardon[m]currently bst errors with "Error: Got unexpected extra arguments (core/dconf.bst core/glib-networking.bst core/gvfs.bst core/libcanberra.bst)"15:00
*** bochecha has quit IRC15:03
gitlab-br-botbuildstream: issue #115 ("Failure when trying to compile core/adwaita-icon-theme.bst from https://gnome7.codethink.co.uk/gnome-modulesets.git") changed state ("opened") https://gitlab.com/BuildStream/buildstream/issues/11515:14
ssam2jjardon[m], not possible at the moment i think15:22
ssam2jjardon[m], you could create a stack element that includes all of them...15:22
jjardon[m]ssam2: yep, thanks15:23
*** givascu has joined #buildstream15:30
*** givascu has quit IRC16:01
*** tiagogomes has quit IRC16:20
*** jonathanmaw has quit IRC16:35
*** ssam2 has quit IRC16:57
*** tlater has quit IRC17:01
*** jude has quit IRC17:07
*** jude has joined #buildstream18:34
*** jude has quit IRC20:11
*** jude has joined #buildstream20:22
*** jude has quit IRC20:28
*** jude has joined #buildstream22:21
*** jude has quit IRC22:52
*** jude has joined #buildstream23:08
*** jude has quit IRC23:12

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