[01:32] PR snapcraft#2426 opened: tests: use fixed version for idna in plainbox [05:16] Good afternoon, from UTC+8 [05:54] I noticed that `snapcraft init` adds a recipe that asserts `base: core18`, is that indicate that it is now recommended to use core18 as the base instead of core16? [06:22] morning [06:22] mborzecki: hey [06:23] mvo: can you take a look at https://github.com/snapcore/snapd/pull/6297 ? [06:23] PR #6297: data/selinux: fix syntax error in definition of snappy_admin interface [06:23] sure [06:23] mvo: we'll need to cherry pick that patch to 2.36 [06:24] mborzecki: ok - should we run sepolgen-ifgen as part of the tests? [06:25] mvo: yes, that's a good idea, i'll add it to the selinux PRs [06:25] mborzecki: I merged this one now [06:25] mvo: thanks [06:26] and cherry-picked, so all good [06:26] thank you! [06:26] mvo: great, thanks! [06:26] PR snapd#6297 closed: data/selinux: fix syntax error in definition of snappy_admin interface [06:27] and added a card :) [06:37] another trivial PR https://github.com/snapcore/snapd/pull/6298 [06:37] PR #6298: packaging/{fedora,opensuse}: own /var/lib/snapd/cookie [06:38] PR snapd#6298 opened: packaging/{fedora,opensuse}: own /var/lib/snapd/cookie [06:54] Good morning [06:54] zyga: hey [06:55] hey zyga [07:10] :-) [07:23] sorry, a bit sleepy still [07:23] I stayed up late and fixed my TV [07:24] mborzecki: trivial removal of dead code: https://github.com/snapcore/snapd/pull/6293 [07:24] PR #6293: cmd/snap-confine: remove unused sc_discard_preserved_mount_ns [07:25] looking [07:27] PR snapd#6295 closed: systemd: start snapd.autoimport.service in --no-block mode <⚠ Critical> [07:32] mvo: what's the state of the release? [07:33] ah [07:33] the gai_strerror thing [07:36] zyga: working on it [07:36] zyga: some bits have landed, but more bits needed [07:36] damn, ls -Zd has different output on centos and fedora [07:36] cannot allocate memory in dnf makecache? https://www.irccloud.com/pastebin/2TrCykuR/ [07:36] mborzecki: what's the difference? [07:37] zyga: centos drwxr-xr-x. niemeyer google-sudoers unconfined_u:object_r:home_root_t:s0 . [07:37] fedora unconfined_u:object_r:user_home_t:s0 . [07:42] sil2100: hey, good morning! one final core18 pr (hopefully the last) https://github.com/snapcore/core18/pull/103 [07:42] PR core18#103: static: add missing systemd symlinks [07:52] mvo: did you see the test failure there? [07:52] is that expected? [07:55] zyga: well, yes, I have not had time to look into it :( but tests are unhappy there [07:55] it doesn't seem related to the nature of the change in the pull request [07:56] zyga: exactly, looks like something innternal [07:56] zyga: so snapcraftctl iirc === pstolowski|afk is now known as pstolowski [08:03] hey [08:11] mvo: morning! Looking in a minute [08:12] sil2100: thank you [08:14] hello Pawel [08:28] PR snapd#6299 opened: travis: short cicruit failures in static and unit tests suites task [08:28] zyga: ^^ [08:29] looking [08:29] mvo: morning, sorry I'm a bit late, what's the status of things? [08:29] thank you! [08:29] mborzecki: yes yes yes :) [08:29] mvo: I saw some of the PR are landed now [08:32] pedronis: yeah, progress [08:32] pedronis: some things still pending though [08:35] heh, the code formatted with new gofmt is incorrectly formatted with the 1.6 one [08:36] mborzecki: yeah [08:36] I opened a PR to highlight that before [08:36] sucks :/ [08:36] i'm thinking, maybe we could go get gofmt (the tool) with 1.6 instead [08:37] mvo: are you waiting for me to look at #6243 ? [08:37] PR #6243: systemd: allow only a single daemon-reload at the same time [08:37] mborzecki: hmm? [08:38] zyga: go get github.com/golang/go/src/cmd/gofmt, this would pull the latest one [08:38] aha [08:38] I see [08:38] as long as people on older releases are happy to integrate this with their workflow, yeah [08:38] pedronis: its a bit of a target of opportunity - if you think its too much we can just leave it for later [08:38] pedronis: it seemed its now relatively clean and the win is relatively high [08:38] mvo: my main comment there, thinking a bit further, is that the description is misleading, we do daemon-reload in other places? [08:39] mvo: if to fix it we really need to serialize daemon-reload then that is not enough, no? [08:39] pedronis: let me see, I think you are right [08:39] so it would need more work, and doesn't feel a .3 thing [08:40] pedronis: hm, in the overlord we really only do the daemon reload there afaict - but yeah, lets push it out [08:40] let me double check [08:40] mvo: we do reloads in wrappers which is used indirectly by overload for example [08:40] sorry, overlord [08:41] pedronis: aha, its the only explicit place. indeed [08:41] also interfaces systemd backend does it [08:42] let me put this chat in the PR [08:43] pedronis: thank you, yeah - we need to investiagte, serializing all daemon reloads would be a bit painful but I'm not into the bug enough to know [08:44] mvo: done, thanks for marking as blocked, yea, needs more thinking I fear [08:47] mborzecki: so you were right and it seems on arch we end up with a snapd that uses the cgo resolver, I thought we had reasons for not wanting cgo at all, do you know if can stop arch using that? not an immediate thing [08:47] mvo: ^ [08:47] cross distribution work is fun [08:47] you get to see *all* the buys [08:47] bugs [08:50] mvo: so we are left with 6287 [08:51] pedronis: there is one more that I'm working on [08:52] pedronis: we have snapd.seeded.service now on core18 at startup. this has a "Requires=snapd.socket" which means that when "snapd.socket" gets stopped (even if its not active) snapd.seeded.service is also stopped [08:52] pedronis: during the seeding the code so far naively restarts things (including snapd.socket) now it needs to be smart and only restart when snapd.socket is actually active [08:54] mvo: I'm not following [08:54] pedronis: sorry, let me be less terse :) [08:54] what breaks? :) [08:54] pedronis: hm maybe there's a build tag we could use, other than that we can use GODEBUG= switch [08:55] mvo: approved if anything! [08:55] pedronis: we have the snapd.seeded.service. it has a "Requires=snapd.socket". this means in systemd terms that the when snapd.seeded starts snapd.socket is started by snapd. the converse is also true - systemctl stop snapd.socket will also stop snapd.seeded even if snapd.socket was not active before [08:56] pedronis: what breaks is that during the seeding boot snapd.seeded stops and that will (AIUI) make systemd start units with the after=snapd.seeded ordering [08:56] mvo: will you guys perform some validation testing on the core18 snap now? [08:56] pedronis: hm i think we could also do that in the code, set a preferred resolved on a dialer [08:56] pedronis: but at this point its too early, the seeding is not done yet, we just got our snapd.socket unit and that is started now (via a restart which is the problem) [08:56] sil2100: yeah, once all the pieces are in cachio will run tests [08:57] (still no merge-powers sadly) [08:57] sil2100: we also get tests from cert (cwayne team) [08:59] mvo: yeah, I know the automation from certification, but I also saw some tests coming from cachio last time [09:02] mvo: there is no snapd.socket in core18 itself? [09:02] we write it from snapd? [09:02] pedronis: correct [09:03] pedronis: correct [09:04] mvo: so we should know what to do, no? we are just being naive? [09:04] I'm still missing if there's a deep problem or a shallow one [09:04] (I suppose that's what systemd does to you) [09:05] pedronis: I think we could look at the way snapd stats up a little so that the relevant code is in our primary repository and so that core18 just consumes that [09:05] pedronis: we are just naive [09:05] pedronis: and to spend some more time on making things more robust and better tested [09:06] pedronis: but in general things feel okay [09:06] zyga: ? [09:06] it's already mostly the case [09:06] there is little code in core18 [09:06] about this [09:07] pedronis: yes but it in core18 repo, it will need to be in core20 repo and in other repos eventually, we could just have core18 and core16 eventually consume a deb that is built out of snapd source package [09:07] it's mostly the baggage of systemd unit keywords (they often do a bit more or less than one would exactly like) [09:07] zyga: sounds like a code org issue [09:07] not a what the code does issue [09:08] yes [09:08] I said we're mostly okay [09:08] anyway it seems very premature before we got our v0 working [09:13] PR snapd#6300 opened: travis: use more recent version of gofmt [09:19] PR snapd#6298 closed: packaging/{fedora,opensuse}: own /var/lib/snapd/cookie [09:19] PR snapd#6301 opened: wrappers: only restart service in core18 when they are active <⚠ Critical> [09:22] mborzecki: quick question for you - the systemd mount unit bug - we were wondering if the workaround must serialize all daemon-reloads. or if its enough to ensure that there is only a single mount unit started (and we wait until that start is finished) at the same time. i.e. however many daemon-reloads are ok as long as there is just a single mountunit starting. this question affects the nature of the workaround. if its just a single mountunit at [09:22] the same time the workaround I pushed is probably sufficient. if we need to serialize all dameon-reload things are more complicated. do you have more insight into this? [09:22] (uh, that was long, sorry!) [09:24] mvo: i don't have more insight, i think i'd play it safe and serialize reloads & mounts [09:24] pedronis: fwiw 6301 is up and has the bits I mentioned [09:24] mborzecki: ok, so when we do the mountunit generation / daemon-reload /start nothing no other daemon-reloads? [09:25] mborzecki: that will be interessting code-wise :) [09:25] PR snapd#6268 closed: overlord/ifacestate: helpers for serializing hotplug changes [09:25] mvo: yes, that'd the the super safe variant [09:25] mvo: otoh, your pr only serialized the mounts and seemed to work fine [09:26] mborzecki: yeah, this is why I was wondering [09:26] mvo: so we could start small, it's unlinkely we'd introduce a regression [09:26] mborzecki: if your script could be extended to springle random daemon-reloads but only a single mount at the same time and it is fine we might get away with the simpler version [09:27] mborzecki: fair point, feel free to report in the bug [09:27] mborzecki: eh, PR [09:27] mvo: i'll update the script and let you know [09:27] mborzecki: \o/ [09:27] mvo: so stopping something that is not running does something ? [09:27] that's probably the bit I don't understand [09:27] pedronis: yes, stops related stuff AFAIK [09:28] pedronis: coreect [09:33] mvo: I'm working on 6287 [09:33] btw [09:33] pedronis: ta [09:37] PR snapd#6300 closed: travis: use more recent version of gofmt [09:46] mvo: bad news, single mount & many reloads fails the same way [09:47] mborzecki: thanks, there was hope for a moment :) [09:48] mborzecki: its fine, makes things more complicated but at least we know now. thanks for checking [09:48] mvo: i've updated the script https://gist.github.com/bboozzoo/d4b142229b1915ef7cc0cf8593599ad9 in case yout want to double check the code [09:48] ok, so that PR is indeed not enough [09:48] mborzecki: my brain is too mushy today :) [09:48] pedronis: yeah, slightly sad [09:49] mborzecki: but thanks for adding it, will probably be helpful in the future [09:51] mborzecki: nice work [09:51] mvo: fwiw, it's harder to reproduce now [09:53] mvo: i think i'd start with a simpler fix [09:56] mborzecki: thanks, yeah, it won't hurt and make things a bit better. we just need to make sure to document that its not the full fix [09:56] mhm [10:02] pedronis: do you have some time for a HO today? [10:03] pstolowski: yes [10:04] pedronis: standup ho? [10:05] pstolowski: yea, but I need 5 mins [10:05] pedronis: ok [10:09] PR snapd#6301 closed: wrappers: only restart service in core18 when they are active <⚠ Critical> [10:11] PR snapd#6302 opened: wrapprs: address review feedback from #6301 [10:12] PR core18#103 closed: static: add missing systemd symlinks [10:12] pstolowski: now works [10:13] ok [10:30] mvo: I pushed changes/fixes to #6287 [10:30] PR snapd#6303 opened: cmd: add tests for lintArg and lintDesc [10:30] PR #6287: httputil: retry on temporary net errors [10:30] pstolowski: trivial PR with some unit tests for internal functions https://github.com/snapcore/snapd/pull/6303/files [10:30] PR #6303: cmd: add tests for lintArg and lintDesc [10:30] zyga: mborzecki: 6287 needs 2nd reviews btw [10:31] zyga: ok [10:31] morning peeps, sorry i'm late [10:31] Chipaca: hello [10:31] pedronis: mvo: btw. do we take any steps to use go resolver on ubuntu? [10:32] zyga: wrt 6303, what were the l10n issues? [10:37] pedronis: ack [10:37] Chipaca: https://bugs.launchpad.net/snapd/+bug/1806761 [10:37] Bug #1806761: Trash output for LANG=ru_RU.UTF-8 (probably all non-ASCII languages) [10:37] mborzecki: iirc we use CGO_ENABLED=0 during the build [10:38] Chipaca: I think someone misunderstood the translator comment [10:38] mborzecki: aha, no, wait - just for selected bits like snap-exec [10:38] and added s with the s at the end :) [10:39] Chipaca: so my idea is [10:39] zyga: brb, need to order a bigger palm on amazon, for the facepalm i need to do [10:39] Chipaca: if the format is "<.*>s", cut the s and not log anything [10:39] Chipaca: right? :D [10:39] Chipaca: and fix the translator suggestions to make sure we say "don't add the frelling s" [10:42] mvo: pedronis: looking at net/conf.go, i think go gets confused with 'mymachines' listed as one of the hosts sources on arch [10:42] mborzecki: aha, it inspects nsswitch.conf ? [10:42] mvo: yes [10:42] mborzecki: smart! [10:43] mvo: it's parsing both nsswitch.cofn and resolv.conf, whenever it finds an option/source that's unknown it'll default to libc resolver first [10:43] * mvo nods [10:44] zyga: argument %q's %q should begin with < and end with > [10:44] zyga: ? [10:44] mvo: there's libnss_mymachines.so.2 in my system, owned by libsystemd pacakge [10:45] mvo: on a system which uses resolved it'll probably default to libc resolver too [10:47] Chipaca: sounds good [10:47] Chipaca: are you still off today? [10:48] no [10:48] mborzecki: yes [10:48] Chipaca: ah, splendid [10:48] Chipaca: shall we land https://github.com/snapcore/snapd/pull/6303? [10:48] PR #6303: cmd: add tests for lintArg and lintDesc [10:48] but i didn't need to take the boys to school today so i turned off my 6am alarm … and then it was suddenly 10:15 [10:48] zyga: not without a second review, I'm still smarting from a few others we slipped in too quickly [10:51] mvo: some comments on https://github.com/snapcore/snapd/pull/6287 [10:51] PR #6287: httputil: retry on temporary net errors [10:55] zyga: thanks [10:58] Chipaca: maybe something simple to start with https://github.com/snapcore/snapd/pull/6299 ? [10:58] PR #6299: travis: short cicruit failures in static and unit tests suites task [11:03] mborzecki: can I suggest an alternative implementation? [11:03] Chipaca: sure, go ahead [11:03] mborzecki: start "script" with "set -e" :-) [11:03] Chipaca: hm does travis lump all the pieces into one large script? [11:03] mborzecki: apparently [11:06] Chipaca: When one of the build commands returns a non-zero exit code, the Travis CI build runs the subsequent commands as well, and accumulates the build result. taken from https://docs.travis-ci.com/user/job-lifecycle/#customizing-the-build-phase [11:06] mborzecki: https://github.com/travis-ci/travis-ci/issues/1066 [11:07] mborzecki: if it works, the advantage of having them in separate lines is we get separate timings for them [11:07] mborzecki: and I like having those timings [11:07] Chipaca: mhm [11:07] but damn travis [11:07] is this an instance of "old man yells at cloud"? [11:08] haha [11:11] Chipaca: ok, pushed set -e, we'll se if it fails for real [11:12] PR snapd#6304 opened: wrappers: use new systemd.IsActive in core18 early boot [11:16] mborzecki: mvo: I missed this, https://github.com/snapcore/snapd/pull/6277/files it's a bit of odd change for a .x release [11:16] Chipaca: seems to work [11:16] PR #6277: centos: enable SELinux support on CentOS 7 (2.36) [11:17] mborzecki: why the backport to 2.36 ? [11:18] pedronis: it's not really a functional change, neal could have enabled it any time without that PR [11:18] mborzecki: how is not functional? [11:19] it might break things, no? [11:19] he would have done it anyway, right? I mean, he would have distro-patched with this, yes? I think that was the rational, it would have been added anyway. but if its a right we can back it out [11:19] pedronis: the package that's in epel is already built this way [11:19] ok [11:20] sorry for picking on this, but feature changes in late .x releases are a bit wrong [11:20] to me [11:20] pedronis: its a bit of a rathole - 6304 needs to go in too, systemd.Status() in our code is too picky to be usable at early boot [11:20] pedronis: no worries, your comment is correct [11:20] Chipaca: https://github.com/snapcore/snapd/pull/6305 [11:20] PR #6305: cmd: automatically fix localized