/srv/irclogs.ubuntu.com/2018/04/04/#snappy.txt

stgraberhmm, there's something very wrong with auto-connected interfaces here03:36
stgraber"snap install lxd" on a completely clean system (no core snap yet) leads to none of our interfaces being connected03:36
stgraberremoving the snap and reinstalling it then gets things connected properly03:36
stgraberhttps://forum.snapcraft.io/t/auto-connected-interfaces-missing-on-initial-snap-install/485003:47
stgraberthis is obviously rather critical03:48
stgraberconfirmed to affect all snaps on initial install (when no core snap is present)04:15
mborzeckimorning04:56
stgrabermborzecki: good morning, looks like you're the first snap person around today, you may want to take a look at https://forum.snapcraft.io/t/auto-connected-interfaces-missing-on-initial-snap-install/485004:58
mborzeckistgraber: looking05:01
mborzeckistgraber: working locally with latest snapd, even if i purge everything and start with clean state, i'm trying cloud image now05:16
stgrabermborzecki: 16.04 cloud image should be affected, that's effectively what MAAS uses05:17
stgrabermborzecki: it may or may not be related to re-exec, so latest snapd on your system may get you a different result, not sure05:18
mborzeckistgraber: yeah, something is off: https://paste.ubuntu.com/p/6P4JpMhgPf/05:20
mborzeckithat's on cloud image05:21
stgraberyup, matches what I'm seeing here and what our users have been reporting05:21
mborzeckiand that's my host: https://paste.ubuntu.com/p/hDzWMgY2zb/05:23
mborzeckistgraber: left a note, i think the approach needs to be discussed with mvo/pstolowski/pedronis05:48
mborzeckistgraber: refreshing the core snap first should workaround the problem05:48
mborzeckimvo: speaking of mvo :P05:49
mborzeckimvo: morning05:49
mvomborzecki: goooood morning05:50
mvomborzecki: what did I miss :)05:50
mvo?05:50
mborzeckimvo: stgraber reported a problem with auto-connect https://forum.snapcraft.io/t/auto-connected-interfaces-missing-on-initial-snap-install/485005:51
mborzeckimvo: i looked around and my observation is that we're missing the 'auto-connect' task because the task list is created using the old 'snapd'05:51
mvomborzecki: yeah, I was just reading the forum05:53
mvomborzecki: I think your analysis makes sense, that is most likely the issue05:53
mborzeckimvo: i looked in state.json and there's no auto-connect when old snapd creates the task list05:54
mvomborzecki: yeah, this makes sense. so its the race when you don't have a core snap and it restarts itself05:54
mborzeckimvo:  do you think we could somehow patch it when core updates?05:55
mvomborzecki: yeah, I think we need to add compat code into the "old" task (setup-profiles)05:57
mvomborzecki: I mean, something like (in setup-profiles): scan the task list and if the task is missing either inject it or run it05:58
mborzeckimvo: otoh, maybe we should rewrite the whole pending task list if core is updated in the process05:58
mvomborzecki: we will need pawel here05:58
mvomborzecki: yeah, its a bit of a generic problem05:59
mupPR snapd#4972 opened: cmd/snap-mgmt: remove timers, udev rules, dbus policy files <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/4972>06:01
mvomborzecki: I followed up in the forum, lets discuss with pawel once he is here06:20
mborzeckimvo: ok06:20
zygagood morning06:30
* zyga catches up with IRC06:31
zygastgraber: ack,06:31
zygaoh, good analysis indeed mborzecki06:32
zygaI would love if we could formalize the reexec protocol limitations somewhere06:32
mborzeckizyga: hey, morning06:32
zygaso we don't run into this willy nilly again06:32
zygamvo: do you consider this a release blocker?06:32
Caelumzyga: I think we've satisfied everyone's requirements as far as my internet check PR goes06:41
Caelumzyga: also, could you please change leap version in: https://github.com/canonical-docs/snappy-docs/pull/38006:41
mupPR canonical-docs/snappy-docs#380: Use address --refresh on openSUSE <Created by zyga> <https://github.com/canonical-docs/snappy-docs/pull/380>06:41
Caelumfrom 42.2 to 42.306:42
CaelumI would have submitted my own, but then it would conflict with yours06:42
zygaCaelum: yes, I will do that now06:42
Caelumthank you06:42
zygaCaelum: I prepared an update that enables apparmor but I need to send a mail to suse security team and discuss some topics06:43
zygait's pretty complex how all those things interact06:43
Caelumnice06:43
zygathe goal is to land an apparmor-enabled version into the system:snappy and start the discussion with the security team on how to add snapd to factory proper06:43
Caelumthat would be awesome06:44
mvozyga: good morning! yes, I think this is a blocker06:44
mvozyga: I wonder if we need to re-think re-exec, maybe something like: if there is a new core, always *only* referesh that then re-exec and do the rest06:45
zygamvo: yes, I think this makes a lot of sense06:45
zygamvo: or introduce a formal protocol where snapd "new" can re-interpret partially finished tasks06:46
zygamvo: but whatever we do needs to work all the  way back06:46
zygaor we would always have to adjust old versions06:46
zygaor provide updates/backports06:46
zygaI think doing this on the "new" side would be conceptually harder but easier to deploy06:47
zygawe could also do both sides so in the future it is easier in general06:47
zygaCaelum: PR updated06:47
zygamvo: in this case, do we have enough information to synthesize new tasks on snapd startup?06:49
zygamvo: cook old snapd state, start overlord, look at state;06:49
Caelumzyga: awesome thank you!06:49
zygamvo: the new state should include the desired set of tasks06:49
mvozyga: I think so, in this case I think we can just insert a auto-connect task06:49
zygaCaelum: I'll poke people to merge it soon06:49
zygaCaelum: thank *you* :-)06:49
zygayes, that's my thinking06:50
mvozyga: and then we need to discuss a more general approach06:50
zygait should be simple enough for this one-off case06:50
mvozyga: its definitely making things very complicated (re-exec)06:50
mvozyga: yeah06:50
zygabut yes, definitely a topic for discussion06:50
zygamvo: it's so much simpler to test and evaluate in distros where we don't support it06:50
zygamvo: so I agree totally06:50
mvozyga: I want to wait for pawel but hopefully its easy, we have code for task injecton already06:50
zygamvo: alternative, make shallow snapd06:50
zygamvo: that doesn't do stuff06:51
zygajust reexecs06:51
zygasounds good, I'll get back to fstab06:51
mvozyga: yeah, but even with the shallow one we will need to deal with ugprades06:51
mvozyga: i.e. when to re-exec on upgrades06:51
mvozyga: but yeah, a much bigger topic that does not fit well into irc :)06:52
zygashallow one would not contain any logic apart from "fetch core in super generic way, re-exec"06:52
mvozyga: sure, that would fix step 0. but what if we have full snapd and refresh to full snapd+1 with new tasks06:52
zygaohh06:53
zygayes06:53
pstolowskimorning07:12
kalikianamoin moin07:15
kalikianao/ pstolowski07:15
zygahey pawel07:17
zygawe have some important work for you07:17
mvopstolowski: thanks for your reply in the forum!07:17
pstolowskizyga: the auto-connect issue?07:18
zygaindeed07:19
zygamvo: https://github.com/snapcore/snapd/pull/497307:19
mupPR #4973: osutil: fix fstab parser to allow for # in field values <Created by zyga> <https://github.com/snapcore/snapd/pull/4973>07:19
zygaI'll make a backport after this lands07:19
mupPR snapd#4973 opened: osutil: fix fstab parser to allow for # in field values <Created by zyga> <https://github.com/snapcore/snapd/pull/4973>07:19
mvozyga: ta07:20
zygamborzecki: https://github.com/snapcore/snapd/pull/4938 updated07:24
mupPR #4938: release-tools: add repack-debian-tarball.sh <Created by zyga> <https://github.com/snapcore/snapd/pull/4938>07:24
mvo4969 needs a second review07:29
mborzeckizyga: yeah, i find `find .. -exec` utterly confusing syntax wise and replace it with `| xargs` where possible (also xargs has the nice -P switch which i abuse when possible)07:32
zygamborzecki: but find ... -exec works for any number of files; xargs will hit the kernel argument size limit eventually07:37
zygapstolowski: 4968 + 1 but add a test please07:40
pstolowskizyga: will do, thanks07:42
=== pbek_ is now known as pbek
zygamvo is https://github.com/snapcore/snapd/pull/4951 a 2.32 backport candidate07:43
mupPR #4951: interfaces/desktop-legacy: allow access to gnome-shell screenshot/screencast <Created by jdstrand> <https://github.com/snapcore/snapd/pull/4951>07:43
zygait needs gustao review07:44
mvozyga: it is, but blocked right now07:44
pedronisit seems we need a new tests that is not about upgrades but about starting installing from stable deb07:46
mvopedronis: indeed07:48
mupPR snapd#4974 opened: ifacestate: injectTasks helper <Created by stolowski> <https://github.com/snapcore/snapd/pull/4974>07:57
pstolowskimvo zyga pedronis can you please take a look at ^ ? it's a helper that I initially meant to propose with interface hooks, but it's going to be useful now for auto-connect fix07:58
zygaack07:59
* zyga sees a curious error:07:59
Chipacamoin moin07:59
zygahttps://www.irccloud.com/pastebin/pVrMuty3/07:59
zygaChipaca: hey07:59
Chipacapstolowski: did you see zyga's comment (somewhere, on the forum maybe?) about making sure core is installed before doing anything further? wouldn't this solve the autoconnect thing?08:00
pedronisChipaca: this is about core08:00
pedronisChipaca: it's installed first, is just that the next install is not setup properly08:02
Chipacapedronis: because the tasks are created by the old snapd?08:02
pedronisyes08:02
pedronisthe other issue is a bit different08:03
Chipacak08:03
pedronisis about trying to run hooks while core is not active08:03
pedronisthat needs to wait in some form08:03
=== fnordahl_ is now known as fnordahl
pedronisChipaca: to be clear, I should probably write this on the forum, but first doesn't mean a lot in our world,  we either need to setup dependecies or wait08:04
pedronisyou can always start an install and a different change at the same time08:05
zygamvo: https://github.com/snapcore/snapd/pull/4973 updated08:05
mupPR #4973: osutil: fix fstab parser to allow for # in field values <Created by zyga> <https://github.com/snapcore/snapd/pull/4973>08:05
mvozyga: ta!08:05
zygaChipaca: https://github.com/snapcore/snapd/pull/4938 needs your re-review08:05
mupPR #4938: release-tools: add repack-debian-tarball.sh <Created by zyga> <https://github.com/snapcore/snapd/pull/4938>08:05
zygaoh08:06
Chipacazyga: no it doesn't08:06
zygayou just did08:06
Chipaca=)08:06
zygathanks :)08:06
Chipacadespite you telling me your comment was *fine* when it wasn't :-)08:06
=== tinwood_ is now known as tinwood
zygasorry ^_^08:06
zygaI changed this a few times locally and I forgot what it was then08:06
Chipaca'twas fine, just confusing (but you got it sorted in the end)08:07
zygawith that merged we will just have 6 more scripts from mvo's stash to port ;)08:07
pedronispstolowski: are you looking also into writing the spread?   start with current stable deb,  and install a snap that needs autoconnections  , probably needs the fakestore to use the latest code for snapd08:07
mvozyga: *cough*08:08
mvozyga: I'm looking at this as well now08:08
zygawell, ok, 908:08
zygamvo: I have a small README file to add there next08:11
mborzeckiwow, it's really sprint this time, +16 in the shade and sunny08:12
mvozyga: thanks, added a small comment08:12
zygamborzecki: it's bound to be 22 next monday08:12
zygaI cannot wait for coding sessions in the park :)08:13
Chipacazyga: mvo: you both make good points about cpuinfo08:14
Chipacazyga: mvo: note however I am doing what apport does, there08:14
mborzeckihah, can't wait to start bicycling again08:14
Chipacazyga: mvo: and what it does is fine, i think: if it doesn't look like the x86 ones, it ships the whole file08:15
Chipaca(and the non-x86 ones i've seen so far are saner in this sense)08:15
mvoChipaca: yeah, I think its fine. also x86 will be the 99%08:15
mvo(for now at least)08:15
Chipacamvo: non-x86 is where a lot more bugs happen though :-) proportionally08:16
zygamvo: did you see intel shares drop 10%08:18
zygamvo: when apple announced macs will move to arm in 202008:18
zygawell, not arm specifically but probably08:19
zyga(some people think it might be riscV as well since it is free)08:19
zygaand the core design is custom anyway, just instruction set was used08:19
zygapstolowski: can we close https://github.com/snapcore/snapd/pull/496508:21
mupPR #4965: ifacestate: injectTasks helper <Blocked> <Created by stolowski> <https://github.com/snapcore/snapd/pull/4965>08:21
pstolowskizyga: yes, done08:22
mupPR snapd#4965 closed: ifacestate: injectTasks helper <Blocked> <Created by stolowski> <Closed by stolowski> <https://github.com/snapcore/snapd/pull/4965>08:23
mborzeckizyga: pushed an update to #497208:23
mupPR #4972: cmd/snap-mgmt: remove timers, udev rules, dbus policy files <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/4972>08:23
Chipacasiigh08:24
Chipacais it the 90s again08:24
Chipacaexcept there's no NeXT08:24
mvomborzecki: thanks, looking08:24
Chipacaapple going off and doing its own CPUs, not doing anything really new, fans still being fans08:25
zygamborzecki: ack08:25
zygathank you :)08:25
mborzeckimvo: that's 2.32.3 right?08:25
zygamborzecki: did you shellcheck everything new?08:25
zygaChipaca: it's the 90s but we have linux08:25
Chipacazyga: i had linux in the 90s08:26
mvomborzecki: yes08:26
zygabut linux now sucks less ;-)08:26
mborzeckizyga: yeah, it will complain about -exec and recommend -execdir (but that's expected)08:26
Chipacazyga: i've been on linux since 1994, and i switched because it sucked less08:26
mvomborzecki, zyga hm, if shellcheck does not like, whats the advantage over find|xargs?08:27
zygamborzecki: interesting, I didn't know about execdir08:27
zygacan we just use execdir then08:27
zygait looks very sane08:27
mborzeckiforce push?08:27
zygamvo: xargs has size limits08:27
mborzecki(trying to keep the commit count low)08:27
pedronisthere's -n08:27
pedronisthough08:27
zygaand you can use + form to make fewer calls to rm even :)08:27
mvomborzecki: we can squash it on merge but I'm fine with force push too08:28
mborzeckiheh, -n, + bikeshedding :P08:28
mvoyeah, this feels like we are deep in bikesheed land :)08:28
zygait's shell ;)08:29
zygait's the perfect candidate08:29
Chipacazyga: what's that about size limits?08:29
mupPR snapd#4975 opened: osutil: fix fstab parser to allow for # in field values (2.32) <Created by zyga> <https://github.com/snapcore/snapd/pull/4975>08:30
zygaChipaca: xargs wasn't smart and could run into issues with the size of cmdline08:31
zygathat's why I traditionally don't like using it08:31
BjornT_mvo: hi! do you know why core18 wasn't pushed to the store, even though it was built successfully for amd64? does it wait for all architectures to build?08:32
zygahttps://www.irccloud.com/pastebin/srWqXthX/08:32
zygaChipaca: ^08:32
mborzeckizyga: Chipaca: iirc xargs will call the command a number of times if it hits a limit, but i'm not sure if that applies to all versions in the wild08:33
mborzecki(or anything else than gnu)08:33
mvoBjornT_: let me check08:33
Chipacazyga: ah08:33
mvoBjornT_: I manually published it now, but let me try to figure out why it wasn't done so automatically08:34
Chipacamborzecki: that's intrinsic to xargs, yes, but see zyga's pastebin08:35
zygamvo: can we override gustavo's -1 since the issue is fixed now08:35
zygahttps://github.com/snapcore/snapd/pull/4930/files08:35
mupPR #4930: skip test that requires internet when not present <Created by rkitover> <https://github.com/snapcore/snapd/pull/4930>08:35
mborzeckiChipaca: ack08:35
Chipacahow do I use adt-buildvm-ubuntu-cloud to get a bionic image for spread?08:35
Chipacain xenial08:35
zyga(this is from man xargs)08:36
Chipaca(it looks for a .disk1.img that's not there)08:36
mvozyga: looking08:36
mvoChipaca: adt-buildvm-ubuntu-cloud -r bionic does not work?08:36
BjornT_mvo: thanks! i did confirm that the built core18 snap worked together with maas and snapcraft 2.40, btw08:37
Chipacamvo: it tries “Downloading https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64-disk1.img” and then crashes with a 40408:37
Chipaca404 -> traceback, because python08:37
mborzeckiChipaca: iirc cloudimg' don't have .disk1.img08:37
Chipacabut 404 nontheless :-)08:37
Chipacanonetheless*08:37
mvoChipaca: oh, indeed, iirc you need to do: "sudo apt install -t xenail-backports apport"08:37
mvoChipaca: to get the non-ancient version of apport08:37
mvoChipaca: eh, adt08:37
Chipaca_apport_? for cloud images?08:37
mvoChipaca: silly me08:37
Chipacaah :-)08:37
mvoChipaca: autopkgtest08:37
mvoChipaca: but let me quickly double check08:38
mvoChipaca: yes, please try that08:38
mvo(the version of *autopkgtest* from xenial-backports)08:38
ChipacaE: The value 'xenail-backports' is invalid for APT::Default-Release as such a release is not available in the sources08:38
mvoChipaca: without my typo :(08:38
* Chipaca fixes the typo and tries again08:38
* Chipaca is copy-pasting commands that start with 'sudo'08:38
Chipacamvo: I _trusted_ you! /o\08:39
mvoChipaca: sorry for letting you down!08:39
ChipacaI'm used to it by now :-p08:39
Chipacaanyway, that worked, thanks!08:39
* mvo weeps a bit in the corner08:39
mvoChipaca: happy that it worked, this should give you an image08:39
Chipacayep yep, it's doing its thing08:40
mborzeckidamn, forgot to start the pomodoro timer08:40
mvomborzecki: for what specifically?08:42
mborzeckimvo: work :P08:42
mborzeckimvo: there's a nice gnome shell extension http://gnomepomodoro.org/08:43
mvomborzecki: do you use a physical one or software? if software, which one08:43
mvomborzecki: heh - you answered already08:43
timphello08:43
timpI think snap or apparmor broke my lxd install. Is this the correct place to look for help?08:44
zygahey timp08:44
zygayes, what happeend?08:44
zygahappened08:44
timpzyga: thanks :)08:44
mborzeckimvo: forces breaks on you, reminds me to do some stretching, squats etc08:44
timpyesterday, my lxd worked fine. Today it does not. (I did an apt upgrade yesterday, that may be related. No snap refresh though)08:44
timp$ lxc list08:44
Chipacamborzecki: zyga: not sure why I'm looking at this, but freebsd's find also has -execdir (but its xargs doesn't have --show-limits)08:44
timpcat: /proc/self/attr/current: Permission denied08:44
timp/snap/lxd/6492/commands/lxc: 6: exec: aa-exec: Permission denied08:44
zygatimp: snaps refresh automatically08:44
timpdmesg shows this:08:44
timp[ 1140.618728] audit: type=1400 audit(1522829695.691:122): apparmor="DENIED" operation="open" profile="snap.lxd.lxc" name="/proc/8365/attr/current" pid=8365 comm="cat" requested_mask="r" denied_mask="r" fsuid=1000 ouid=100008:44
timp[ 1140.619047] audit: type=1400 audit(1522829695.691:123): apparmor="DENIED" operation="exec" profile="snap.lxd.lxc" name="/usr/sbin/aa-exec" pid=8352 comm="lxc" requested_mask="x" denied_mask="x" fsuid=1000 ouid=008:45
zygatimp: can you check if "snap changes" has anything about lxd?08:45
timpyes, it did:08:45
timp93   Done    2018-04-04T07:44:00Z  2018-04-04T07:45:55Z  Auto-refresh snaps "lxd", "aws-cli", "core"08:45
zygatimp: and can you paste "snap interfaces | grep lxd"08:45
zygatimp: ok08:45
timp:lxd-support               lxd08:45
timp:network                   lxd,nextcloud-client,simplenote,telegram-sergiusens08:45
timp:system-observe            lxd08:45
timplxd:lxd08:45
zygahmm all looks good here08:46
zygalet me look deeper08:46
timpthanks08:47
pedronisisn't there a discussion about in the forum08:47
timpI can 'cat /proc/self/attr/current', so that permission denied is weird. I don't know how AppArmor works though.08:47
zygaoh, perhaps08:47
pedronisis this relevant:  curl https://assertions.staging.ubuntu.com/v1/assertions/account-key?account-id=canonical08:48
Chipacamborzecki: what version of systemd do you have over there? (on arch i mean :-) )08:48
pedronissorry08:48
pedronisis this relevant:  https://forum.snapcraft.io/t/2-0-lxd-snap-fails-on-sytems-with-partial-apparmor-support/470708:48
mborzeckiChipaca: 23808:48
zygaahh08:48
zygatimp: can you paste "snap version"08:48
timpsnap    2.32.108:49
timpsnapd   2.32.108:49
timpseries  1608:49
timpubuntu  16.0408:49
timpkernel  4.13.0-37-generic08:49
timpI'm on xenial08:49
zygatimp: thank you08:50
zygaso this is not a partial apparmor support issue08:50
zygaok, I'll look at what I was meant to before08:50
timpwhat do you mean with partial apparmor support issue?08:50
mborzeckizyga: mvo: force pushed to 497208:50
zygatimp: debian and ubuntu have different set of supported apparmor features because ubuntu still carries a patch with non-upstreamed extensions08:50
zygatimp: can you please pastebin /var/lib/snapd/apparmor/profiles/snap.lxd.lxc08:51
* zyga -> brb 08:52
timpzyga: sure, http://paste.ubuntu.com/p/hrrQFkXYSx/08:53
timphttps://forum.snapcraft.io/t/snapped-lxd-has-stopped-working-aa-exec-doesnt-exist-in-the-snap/2356 seems similar, but there's no solution there08:54
timphmm, this is unfortunate. I was doing all my work in containers so now I'm blocked.08:55
timpso,08:57
timp$ snap revert lxd08:57
timplxd reverted to 3.0.008:57
timptim@tim-XPS-13-9350:~$ lxc list08:57
timpthat fixes it for now.08:57
timplooks like the lxd update broke stuff08:57
ackktimp, you might want to ask on #lxc-dev as well08:57
zygare08:58
zygatimp: looking08:58
zygatimp: it looks like the profile is wrong08:59
zygait doesn't contain contributions from lxd-support08:59
timphmm, 'snap refresh' tells me that there are no updates for lxd, even though I just did snap revert lxd09:00
zygacan you snap disconnect lxd:lxd-support09:00
zygaand then re-connect it09:00
zygaand see if the profile is different09:00
zyga(copy the current profile out)09:00
timpnote that after 'snap revert lxd', it is working again. And I cannot reproduce the problem any more.09:01
zygaright because you are on a different revision09:01
zygayou can look at the same file again09:01
zygaand the header will say @{SNAP_REVISION} = ...09:01
timpsnap.lxd.lxc?09:01
zygayes09:01
zygain the pastebin it was 649209:02
timpthis is with the working version: http://paste.ubuntu.com/p/vgJcv7dPRm/09:02
timphmm, also 6492?09:02
zygaright, this one is correct09:03
zygathe previous one looked like basic, unconnected (no interfaces) application09:03
timpah, so what I did is 'snap revert lxd'. And then 'snap refresh lxd'. Now I again have 6492, and it still works.09:03
zygapstolowski: ^ maybe some other bug?09:03
zygait looks like a bug in snapd, more than a bug in lxd IMO09:04
zygahmm hmm09:04
zygacan you add this to a forum thread or a bug report09:04
zygaI don't want to lose it here09:04
timpon LP?09:04
zygayes, on snapd09:04
timpok09:04
pedronisthis a much more tested path than the   snap install lxd (without anything)09:04
pedronisthough09:05
zygatimp: please include: snap version; snap changes; snap interfaces (from what you did, not from what is is now when it works)09:06
zygaand the two profiles you made09:06
zyga(the pastebins)09:06
zygaI think it shows that we didn't really include the lxd-support snippets at all09:06
zygapstolowski: the bug on the forum feels related now09:07
zygathe reporter there doens't have lxd-support09:07
BjornT_mvo: didn't you publish the latest one? the one you published is still on glibc 2.26.09:07
BjornT_mvo: this is the one i used when i confirmed it worked with maas: https://code.launchpad.net/~mvo/+snap/core18/+build/182036/+files/core18_very-unstable_amd64.snap09:07
* zyga afk again09:08
timpzyga, pedronis: thanks for the help. I reported the bug here: https://bugs.launchpad.net/snapd/+bug/176111509:11
mupBug #1761115: After lxd snap upgrade, it lxc stopped working <snapd:New> <https://launchpad.net/bugs/1761115>09:11
zygatimp: thank you09:11
mvoBjornT_: indeed, it was an older one09:11
mvoBjornT_: pushed a new one to edge,09:13
mvoBjornT_: and I think wgrant helped me fix the auto-upload issue, so hopefully this will be fixed now (testing this right now)09:14
ackkmvo, hi, do you know why I'm getting this error when trying to switch to the channel? https://pastebin.canonical.com/p/KywXTYgC6y/09:15
BjornT_mvo: nice, thanks09:16
mvoackk: this looks like snapd crashed or something, what do you see in "journalctl -u snapd"? anything that indicates a panic?09:20
ackkmvo, no panics, but repeated errors like:09:21
ackkJan 08 15:11:47 maas systemd[1]: snapd.service: Failed to set invocation ID on control group /system.slice/snapd.service, ignoring: Operation not permitted09:21
ackkJan 08 15:11:47 maas systemd[1]: snapd.service: Failed to reset devices.list: Operation not permitted09:21
ackkmvo, fwiw I can install/remove snaps09:21
ackkit's just this operation that seems to fail09:21
ackkmvo, removing the base and reinstalling from the store works09:21
mvoackk: ok, I will try to reproduce this, the EOF looks suspicious09:22
ackkmvo, btw it seems snapd doesn't check if you have snaps that depend on a base you remove?09:23
ackkI just removed core18 and maas which depends on it was installed09:23
Chipacaackk: mvo: yeah that EOF usually means snapd went away mid-request (typically because of a crash)09:24
ackkChipaca, but snapd seems to work fine for everythingelse09:24
Chipacaackk: systemd'll restart it unless it does it too often09:24
Chipacaand yes, snapd does not do proper dependency management (yet)09:25
ackkChipaca, weird, I thought I saw an error when trying to remove a snap before09:25
Chipacaackk: it'll block core, gadget and kernel removes09:25
ackkoh I see09:26
pedroniswe don't have that check for bases in use09:26
Chipacabasically things you can't come back from :)09:26
Chipacapedronis: nor for default providers09:26
pedronisafaik09:26
pedroniswell default providers are a bit of different issue09:26
Chipacawe probably should at least warn / prompt09:26
pedronisthey are optional09:26
Chipacapedronis: about as optional as bases09:27
pedronisnot that we know what thât means09:27
pedronisChipaca: well,09:27
Chipacapedronis: try running gnome-calculator without gnome-16.04-whatevs09:27
pedronisit dpends09:27
pedronisChipaca: they are installed as if they were optional09:27
Chipacayes09:27
Chipacaand we don't have, afaik, a way of expressing optionalness09:27
Chipacaoptionality09:27
Chipacaoptionionness09:28
pedroniswhich mostly means we don't make a fuss09:28
pedronisif they don't install09:28
pedronisthe snap uses them might09:28
pstolowskizyga: ack. i'm working on auto-connect PR atm, I can look at this in a bit09:29
zygaok09:29
pedronispstolowski: are you looking into the spread test for that?   afaict is likely a very untested area atm09:30
zygapstolowski, mvo: https://forum.snapcraft.io/t/auto-connected-interfaces-missing-on-initial-snap-install/4850/1609:32
zygait's not just that we didn't connect09:32
zygawe didn't even _load_ interfaces somehow09:32
zygathis is very very nasty09:32
pstolowskipedronis: not sure how to spread-test this particular case yet (other than by removing autoconnect task with jq, but that's not a good test). for regular auto-connect with current snapd we do have spread test(s)09:32
pedronispstolowski: we need to start from the deb in the archive09:33
pstolowskipedronis: we can, but that's a moving piece no?09:34
pedronispstolowski: it is09:34
pedronisbut not different than what we do in the current upgrade test09:34
pstolowskilet me see09:35
pedronisas I wrote probably a bit annoying because it will need the fakestore09:35
pedronisbecause we hardcode  how we get core09:35
* Chipaca -> break09:42
pstolowskipedronis: i think in the existing tests we install whatever version of snapd we have in distro (or whatever we build locally); now we would need an old version that doesn't have the feature09:43
pstolowskizyga: yes, this looks rather bad..09:44
pedronispstolowski: xenial has 2.2909:45
pstolowskipedronis: ah, indeed, and it will never get updated, you're right09:46
pedroniswell, it will09:46
pstolowskihmm09:47
pedronisbut is good enough for testing the current problem09:47
pedronisas it's happening09:47
pstolowskiok, fair enough09:48
mvoBjornT_, ackk, wgrant auto-upload of core18 works now, thanks for reporting and helping with the fix09:48
pstolowskiwould be great to have a test that's stays valid for longer time09:48
ackkmvo, great, thank you!09:52
zygaChipaca: https://github.com/snapcore/snapd/pull/4973 needs a 2nd review for the release09:57
mupPR #4973: osutil: fix fstab parser to allow for # in field values <Created by zyga> <https://github.com/snapcore/snapd/pull/4973>09:57
zygaChipaca: fstab, wanna take it?09:57
pedronispstolowski: well,  we have unit tests too09:58
zygamvo: can I remove the snappy.upstream part when we merge the other script that makes the input tarball09:59
zygathat branch is green and it doesn't hurt much09:59
pedronispstolowski: also hopefully at some point soon we will get epochs  and testing jumping so much between revision will be a bit less needed10:00
mvozyga: ok, fwiw, I am working on git-buildpackage right onw10:00
zygaThanks!10:01
mupPR snapd#4938 closed: release-tools: add repack-debian-tarball.sh <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4938>10:01
mupPR snapd#4972 closed: cmd/snap-mgmt: remove timers, udev rules, dbus policy files <Created by bboozzoo> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4972>10:02
zygamborzecki: can you please provide a backport for this branch for 2.32 ^10:02
Chipacazyga: looking10:04
mupPR snapd#4976 opened: cmd/snap-mgmt: remove timers, udev rules, dbus policy files (2.32) <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/4976>10:08
zygamborzecki: wrong target branch10:08
mborzeckizyga: should be fixed now10:09
mupPR snapd#4977 opened: debian: add gbp.conf script to build snapd via `gbp buildpackage` <Created by mvo5> <https://github.com/snapcore/snapd/pull/4977>10:16
=== Beret- is now known as Beret
pedronismvo: what's the status of your review of #4900,  got half through it yesterday and then new emergencies today?10:18
mupPR #4900: many: use the new install/refresh API by switching snapstate to use store.SnapAction <Critical> <Squash-merge> <Created by pedronis> <https://github.com/snapcore/snapd/pull/4900>10:18
mvopedronis: yes, continuing now10:24
zygais the store having a slow ceph day again?10:29
=== oSoMoN_ is now known as oSoMoN
pedronisnot that I know of,  a little bit of load with the release yesterday10:42
zygamvo: can I merge the backport https://github.com/snapcore/snapd/pull/497510:48
mupPR #4975: osutil: fix fstab parser to allow for # in field values (2.32) <Created by zyga> <https://github.com/snapcore/snapd/pull/4975>10:48
mupPR snapd#4973 closed: osutil: fix fstab parser to allow for # in field values <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4973>10:48
zygathe master branch had 2 +1s and I just merged it10:48
zygapedronis: can you please do a 2nd review on release-critical https://github.com/snapcore/snapd/pull/4969 fix from mvo10:48
mupPR #4969: interfaces: make system-key more robust against invalid fstab entries <Squash-merge> <Created by mvo5> <https://github.com/snapcore/snapd/pull/4969>10:48
zygajdstrand: hey, can you please enqueue https://github.com/snapcore/snapd/pull/4545 for re-review10:50
mupPR #4545: interfaces/x11: allow X11 slot implementations <Created by gerboland> <https://github.com/snapcore/snapd/pull/4545>10:50
* zyga needs to plan an errand today :/10:52
zygaare we doing the standup earlier? (now?)10:52
zygamvo: when is the standup today10:52
pedronis2pm we agreed10:53
zygaah, that's good then10:53
zygaI can do the errand after that10:53
zygathanks10:53
cachiomvo, hey11:24
mvohey cachio11:25
cachiowhat time are we making the standup today?11:25
mvocachio: in 35min11:25
mvocachio: hope that works for you11:25
mvocachio: if not its ok to skip11:25
cachiomvo it doesn't work today11:26
cachiomvo, I have to go to my son's school11:26
cachioare we making all wednesday at this time?11:27
cachioevery wednesday?11:27
mborzeckizyga: mvo: pushed updates to #494211:27
mupPR #4942: cmd/snap: user session application autostart v3 <Created by bboozzoo> <https://github.com/snapcore/snapd/pull/4942>11:27
zygathanks11:27
mvomborzecki: ta11:27
mborzeckistandup is @ 2pm?11:27
mvocachio: no problem, we need to discuss tomorrow/next week what time to pick then11:28
zygayes11:28
mborzeckiack11:28
mvocachio: we also need a time that works for gustavo11:28
mvocachio: and for you obviously11:28
cachiomvo, it works for me but not today11:29
cachiobut I'll block the calendar11:29
mupPR snapd#4930 closed: skip test that requires internet when not present <Created by rkitover> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/4930>11:30
mvocachio: ok, thank you11:30
cachiomvo, is it gonna by just on wednesdays? or every day?11:31
mvocachio: only (some) wednesdays11:32
cachiomvo,11:32
cachiook11:32
cachiomvo, when is comming the new sru?11:33
zygapstolowski: https://github.com/snapcore/snapd/pull/4968 is broken on tests FYI11:39
mupPR #4968: RFC: ifacemgr: remove stale connections on startup <Created by stolowski> <https://github.com/snapcore/snapd/pull/4968>11:39
mupPR snapd#4975 closed: osutil: fix fstab parser to allow for # in field values (2.32) <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4975>11:40
pstolowskizyga: yep i know, i had to park this for a while due to autoconnect11:40
zygaack11:40
zygathanks11:40
pstolowskizyga: i have fixes and will also add new test11:41
jdstrandzyga (cc timp): that was the exact issue I saw yesterday. apparmor denial on attr/current and aa-exec. no interfaces listed for lxd with snap interfaces. I had to stop/start snapd to get them back then do 'sudo apparmor_parser -r /var/lib/snapd/apparmor/profiles/snap.lxd.*11:45
zygajdstrand: thank you for confirming that, I wonder what could be the cause11:45
zygajdstrand: wich core channel were you on then?11:45
zygaI was suspecting some window when snapd restarts while there's an unmounted lxd snap11:45
zygajdstrand: it feels like the place when we read snap.Info is flaky in that the error is non-fatal11:46
zygaand we carry on knowing *nothing* about that snap11:46
jdstrandzyga (cc timp): oh I forgot. I did: sudo systemctl stop snapd ; sudo systemctl start snapd # now interfaces show up) ; sudo snap disconnect lxd:lxd-support ; sudo snap connect lxd:lxd-support # now the interfacec works11:51
* cachio afk11:51
zyga yeah, that's that11:51
jdstrandie, I tried apparmor_parser -r /var/lib/snapd/apparmor/profiles/snap.lxd.* before the disconnect/connect and realized it didn't have the policy in place11:52
jdstrandzyga: I'm on beta still11:52
jdstrand16-2.32.211:52
zygayep11:53
zygathat all hints to missing snap info11:53
zygaand missing interfaces11:53
jdstrandzyga: it may not be related, but lxd-support is one of the few interfaces with an installation constraint11:55
zygaoh, what is that constraint?11:57
zygaare you referring to the policy?11:57
jdstrandzyga: base declaration11:58
jdstrandzyga: allow-installation: false11:59
zygaright11:59
jdstrandzyga: so a snap from the store must have a snap declaration to install the snap (--dangerous installs do not)12:00
jdstrandI dono't know if it is related12:00
jdstranddon't12:00
zygajdstrand: can you look at journalctl snapd.service12:00
zygathere's a log if we drop an interface12:00
zygaif it was that we'd have a trace12:00
jdstrandbut it is the only snap I know that has this12:00
zygathat'd be a nice hit to what the issue is12:01
zygait may be that we did read it but then skipped it12:02
jdstrandzyga: I experienced the problem yeserday. That put's us at something happening between 18:00 on Apr 2 through 10:25 Apr 3. I've pasted since Mar27 snapd start up through today here: https://paste.ubuntu.com/p/ySSrxXRgyK/12:05
jdstrandputs*12:05
zygathank you12:05
zygaI'll review it after standup12:06
jdstrandzyga: there is some weird stuff in there12:06
zygawoah12:06
zygaApr 03 10:25:29 localhost snapd[27535]: 2018/04/03 10:25:29.156759 helpers.go:214: cannot connect plug "lxd-support" from snap "lxd", no such plug12:06
jdstrandMar 27 12:44:27 localhost snapd[2848]: 2018/03/27 12:44:27.304321 stateengine.go:101: state ensure error: cannot refresh snap-declaration for "lxd": Get https://api.snapcraft.io/api/v1/snaps/assertions/snap-declaration/16/J60k4JY0HppjwOjW8dZdYc8obXKxujRu?max-format=2: dial tcp: lookup api.snapcraft.io on 127.0.0.53:53: server misbehaving12:06
zygapstolowski: ^ we cannot merge your fix for stale connections before we get to the bottom of this12:06
zygaor we'll mess up real state12:06
zygathank you12:06
jdstrandzyga: note that the snap declaration wasn't pulled down days before12:06
jdstrandI don't know if later fetches worked out ok12:07
jdstrandat 10:25 on Apr 3, that is when I stopped/started lxd manually12:08
jdstrandactually, maybe that was 11:3712:08
* jdstrand checks irc backscroll12:09
jdstrandah, it was 11:3712:09
jdstrandthe thing at 10:25 was not me. 2708  Done    2018-04-03T15:24:34Z  2018-04-03T15:26:04Z  Auto-refresh snaps "chromium", "lxd", "core"12:10
jdstrandthat is in UTC and corresponds to the 10:25 restart12:11
zygajdstrand: did you see any snaps listed as broken at that time?12:15
zygajdstrand: we are discussing this issue now and we understand how it happens mechanically (we should be albe to reproduce that) but we have no idea (yet) why it happens12:16
jdstrandzyga: no12:19
jdstrandhttps://forum.snapcraft.io/t/snapped-lxd-has-stopped-working-aa-exec-doesnt-exist-in-the-snap/2356/2712:20
jdstrandI lined up all the times12:20
jdstrandit looks like at 10:24 *both* core and lxd were updated12:20
jdstrandrefreshed*12:20
zygayes, its' something we suspect12:20
jdstrandthen at 11:33 I noticed things went awry12:21
zygaif snapd starts when snap (or snaps) are unmounted we would hit this12:21
zygait was just lxd for you, right?12:21
jdstrandand 11:37 I stopped/started manually and 11:39 diconnected/connected12:21
zyga(only a subset of the refreshed snaps could be affected)12:21
jdstrandzyga: it was what I noticed. it seems chromium could've been affected (it was refreshed at the same time)12:21
zygabut wasn't?12:22
jdstrandI don't use it regularly12:22
* jdstrand uses firefox12:22
jdstrandso I don't know12:22
zygawe need to look at ordering and at things like ensuring that when systemd says "it's mounted" it really really is12:22
zygathank you12:22
jdstrandI can say the firefox snap wasn't misbehaving12:22
popeyI have a core system which booted yesterday but today hangs12:26
popeyhttps://usercontent.irccloud-cdn.com/file/d1gWsl07/IMG_20180404_132619.jpg12:27
popeyWhere should I file this? (can I revert back to previous core [given I can't boot it]) ?12:27
* kalikiana lunch12:32
popeymvo: ^ do you know where I should file this?12:33
jdstrandzyga: fyi, I added a few more comments12:33
mborzeckizyga: snap switch && snap refresh ?12:35
mvopopey: what happens if you power-cycle it? it always hangs at this point?12:35
zygajdstrand: we have a way to loop through this code to hit the issue ifff it is a timing bug12:35
popeymvo: hangs at the same point12:35
zygamborzecki: yes, on a pair of core + lxd12:35
mvopopey: the forum is a good place for a report - also here, because OMG and we want to know about it12:35
mvopopey: what is strange is that there is only kernel message, nothing from userspace AFAICT12:35
mvopopey: which indicates a kernel problem, can you get to the grub prompt?12:35
mvopopey: also even if its a kernel problem the rollback magic should have saved us/you :(12:36
mvopopey: so …12:36
popeyoh man, 4th boot now it's moving12:36
mvopopey: *cough*12:36
mvopopey: magic! :) :/ :(12:36
popey:S12:36
zygalogger.Noticef("cannot retrieve info for snap %q: %s", snapName, err)12:36
zygajdstrand: can you grep in your full journal for any hint of that12:36
mvopopey: moving in what direction? successful boot? or just hangs differently?12:36
popeyits successfully booted now12:36
popey<shrug emoji>12:37
zygamvo: if we had support for hardware watchdog we would be able to recover such issues automatically (what popey ran into)12:37
popeyit totally hung 3 times, but this time it went through, no idea why.12:37
zygajdstrand: I also totally missed this12:38
zygaMar 27 12:44:27 localhost snapd[2848]: 2018/03/27 12:44:27.303347 autorefresh.go:327: Cannot prepare auto-refresh change: cannot refresh snap-declaration for "lxd": Get https://api.snapcraft.io/api/v1/snaps/assertions/snap-declaration/16/J60k4JY0HppjwOjW8dZdYc8obXKxujRu?max-format=2: dial tcp: lookup api.snapcraft.io on 127.0.0.53:53: server misbehaving12:38
zygaif there's no assertion, we should not even attempt to continue refreshing12:38
mvozyga: ohhhh12:38
mvozyga: that is an interessting hint12:38
zygaApr 03 10:25:29 localhost snapd[27535]: 2018/04/03 10:25:29.156224 helpers.go:214: cannot connect plug "gsettings" from snap "chromium", no such plug12:38
zygabut it seems the issue did affect both chromium and lxd12:39
zygaso unclear if this is just the assertion refresh12:39
zygaApr 03 10:25:29 localhost snapd[27535]: 2018/04/03 10:25:29.156232 helpers.go:214: cannot connect plug "home" from snap "chromium", no such plug12:39
zygafor instance home is not gated12:39
zygaso not having an assertion would not change anything12:39
zygaI will try to reproduce this manually now12:42
zygamvo: I just confirmed that logger.Noticef does *not* work12:43
zygaprobably because at that stage, logger is just not setup yet12:43
zygaChipaca: ^12:43
Chipacazyga: ?12:44
zygamvo: I stopped snapd, stopped a mount unit of a random sanp, started snapd12:44
zygawhat was logged was12:44
zygakwi 04 14:43:28 fyke snapd[32408]: 2018/04/04 14:43:28.481566 helpers.go:106: invalid snap version: cannot be empty12:44
Chipacazyga: logger is set up in snapd/main.go's init()12:44
zygaha12:45
Chipacazyga: so I call shenanigans :-)12:45
Chipacain fact it's the first line of that init :-)12:45
Chipacaof course, that init runs after all other inits, because of the deps tree12:45
Chipacabut that's still pretty honking early :-)12:45
zygagrepping for that message on my system I see a case of snapd starting and not having snaps mounted12:45
zygaChipaca: I will patch it to just print12:46
zygabut I suspect something is wrong there12:46
popeyjdstrand: when you get a mo. can I have an exception for https://dashboard.snapcraft.io/snaps/emoj/revisions/19/ ?12:47
popey(it doesn't need a desktop file, but needs x11 interface)12:47
pedronismvo: I applied feedback or answered in 490012:53
zygaah12:54
zygamvo: we say "cannot read snap %q: ..." and assign that to info.Broken12:54
mvopedronis: thanks, I'm on the remaining bits now12:54
zygawe don't return an error12:54
zygaslightly funny to see this: https://github.com/snapcore/snapd/pull/4900#discussion_r17910866413:04
mupPR #4900: many: use the new install/refresh API by switching snapstate to use store.SnapAction <Critical> <Squash-merge> <Created by pedronis> <https://github.com/snapcore/snapd/pull/4900>13:04
mborzeckiApr 04 13:04:33 ubuntu snapd[1037]: 2018/04/04 13:04:33.934552 store.go:1459: DEBUG: Hashsum error on download: sha3-384 mismatch for "core": got 86d2a911e843c48c8f49c459b5b7259a5ca786ad4e05b1f98a353082aee6dc79c0cc08ca9c09a3c603675a3acead29d9 but expected 7b354270492a85a54b44ad78c000e6a61ca38a49d5ab57d79a2e9d5eca20db9af89a1186b7b14d78ae232ec2f482437213:06
mborzeckithat's unexpected13:06
pedroniszyga: maybe it should be moved lower?  I'm open to input,  in a meeting now though13:06
zygapedronis: I was just adding similar logging13:06
mborzeckioff to pick up the kids13:08
mupIssue snapcraft#2048 opened: Thank you <Created by jsamr> <https://github.com/snapcore/snapcraft/issue/2048>13:09
pstolowskipedronis, mvo : does this sound sensible/doable for autoconnect spread test: 1.snapd installed from distro deb; 2.snap download core; 3.unsquashfs core, inject new snapd, squash back; 4.snap download lxd; 5. point fake store at both modified core & lxd (plus do assertion magic which i'm not yet clear about); 6. snap install lxd?13:11
mvopstolowski: in a meeting right now (and so is pedronis) sounds sane13:14
mupPR snapd#4978 opened: overlord,interfaces: be more vocal about broken snaps and read errors <Created by zyga> <https://github.com/snapcore/snapd/pull/4978>13:14
zygamvo: extra logging I'd like to add to this release: https://github.com/snapcore/snapd/pull/497813:15
mupPR #4978: overlord,interfaces: be more vocal about broken snaps and read errors <Created by zyga> <https://github.com/snapcore/snapd/pull/4978>13:15
zygaalso refuse adding broken snaps to repo13:15
zygapstolowski: ^13:16
zygaI think you are the only one to review now :)13:16
pedronispstolowski: we already build that core  that way at some point13:16
pstolowskipedronis: i know, I just need to prevent it from getting mounted immediately (it's update_core_snap_for_classic_reexec)13:18
* zyga -> walk13:19
pstolowskizyga: looks sane, quick questions: why "[stderr]"? where does Stderr go? just journal?13:23
kalikianare13:24
zygaYes13:24
zygaTo error part of it13:24
zygaThe [stderr] is to see if we are doing something wrong with o logger13:29
mupBug #1761187 opened: ~/.snap/ not available for root on some systems <Snappy:New> <https://launchpad.net/bugs/1761187>13:30
jdstrandzyga: journalctl|grep 'cannot retrieve info for snap' returns nothing13:39
zygaAck13:39
zygaI will setup a loop13:40
zygaJust afk now13:40
mupBug #1761187 changed: ~/.snap/ not available for root on some systems <Snappy:New> <https://launchpad.net/bugs/1761187>13:42
Chipacamup: you just said that13:43
mupChipaca: I apologize. I'm a program with a limited vocabulary.13:43
pstolowskilol13:47
cachiolol13:48
pstolowskimup: Chipaca is making fun of you!13:49
muppstolowski: I really wish I understood what you're trying to do.13:49
cachio:)13:49
pstolowskiyeah me too13:50
pedronisChipaca: can you look #497814:08
mupPR #4978: overlord,interfaces: be more vocal about broken snaps and read errors <Created by zyga> <https://github.com/snapcore/snapd/pull/4978>14:08
pedroniszyga: I think that code is logging too much,  CurrentInfo will call readInfoAnyway14:09
zygaI can trim some, yeah14:12
mvomborzecki: 4976 fails, I guess you know about this already(?)14:15
mvozyga: any new data on the issue?14:17
zygamvo: re, I was afk (kids/lunch/dog)14:18
zygamvo: I did some digging and it seems we don't even return an error14:18
zygamvo: we return snap info with Broken field set14:18
zygamvo: I provided a patch that adds verbosity and barrages broken snaps from entering the repository14:18
mvozyga: ok, I see the PR14:19
mvozyga: thank you!14:19
zygamvo: I haven't setup a loop that would reproduce the refresh cycle issue yet14:19
pedronispstolowski: I think we can start with lxd,  lxd is a bit strange in the sense that is both our typical case, but a bit fragile on its own14:19
zygamvo: I will setup the loop soon, if I hit a case when it reproduces we will have some confirmation14:19
mvozyga: ta14:19
zygamvo: while that runs I will review tasks we do on refresh to look for issues14:19
mvozyga: why the logger.Noticef() and the fmt.Fprintf() ? is the notice not sufficient?14:20
pstolowskipedronis: ok, that's what i'm basing my spread test on14:20
zygamvo: maybe, I think so but  wanted to double check14:20
zygamvo: I will drop the fmt.Fprintf calls if logger works14:20
zygabetter safe than sorry14:20
pedroniszyga: we don't read snaps that early, if there's some logging there should be the rest14:27
jdstrandpopey: ok14:27
popeyjdstrand: thanks14:28
Chipacagrah, grah, grah, everything is terrible14:36
Chipacapedronis: looking14:36
mvoChipaca: also 4969 if you have spare cycles for reviews14:37
Chipacamvo: I do14:38
Chipacafor #1761193 I'm tempted to use 'cat' to read the auth.json file... :-/14:39
mupBug #1761193: ~/.snap/ not available for root on some systems <snapd:New> <https://launchpad.net/bugs/1761193>14:39
=== Eleventh_Doctor is now known as Pharaoh_Atem
Chipacaas in ‘if running under sudo, do 'su -c "cat the/file" $SUDO_USER'’14:39
Chipacathe alternative is to leave goroutines stuck, which might not be so terrible14:40
Chipacaas this is in client, they're short-lived14:40
zygaFYI this test always fails on my laptop14:44
zyga... value *errors.errorString = &errors.errorString{s:"cannot obtain bus name 'io.snapcraft.Launcher'"} ("cannot obtain bus name 'io.snapcraft.Launcher'")14:44
zygaFAIL: cmd_userd_test.go:62: userdSuite.TestUserd14:44
zygapedronis, mvo: updated https://github.com/snapcore/snapd/pull/4978/files14:45
mupPR #4978: overlord,interfaces: be more vocal about broken snaps and read errors <Created by zyga> <https://github.com/snapcore/snapd/pull/4978>14:45
zyga(force pushed for cherry pick)14:46
zygadropped fprintfs14:46
zygaand one log14:46
mvota!14:46
zygaat the very least we will (maybe) get better logs next time14:47
zygamvo: is .3 scheduled for today?14:48
mvozyga: depends on when we get the fixes, but yes, would love to do it today14:49
mvozyga: the "exec: aa-exec: Permission denied" is also a bit alarming14:49
didrockskyrofa: hey! I hope you are well :) I'm really puzzled about bug #1761127 and can't even find a workaround14:51
mupBug #1761127: On Travis (not a real vte), releasing to a branch name during snapcraft push prints a stacktrace <Snapcraft:New> <https://launchpad.net/bugs/1761127>14:51
diddledanis the libGL problem on Bionic (possibly related to nVidia binary drivers) with snaps being worked upon? : libGL error: No matching fbConfigs or visuals found14:52
diddledanI think it's because of the move to a unified loader? *looks for the right deb* .. `libglvnd0`14:53
zygamvo: that is because aa-exec is not allowed by default template14:54
zygamvo: when lxd does't have the lxd-support interface at all this would happen14:55
pstolowskimvo, zyga the spread test is painful, i'm learning through experimentation and trial-and-error14:55
zygadiddledan: can you try beta? it should be fixed there14:55
pedronispstolowski: can I help somehow?14:55
zygamvo: the fedora issue should be gone now14:55
mvozyga: right, I can reproduce this here on 17.10 by purging snapd and then installing it14:55
mvozyga: and then snap install lxd14:56
zygamvo: oh? can you be more specifc14:56
zygaah14:56
mvopstolowski: yeah, its hard14:56
zygabut isn't that the auto-connect issue14:56
zygaor are you saying that you can reproduce by pruging, installing lxd and then see lxd without any interface at all14:56
zyga(as said by snap interfaces)14:56
pedronispstolowski: we have other tests using the fakestore but probably not exactly how you need it14:56
diddledanzyga: ok, the beta fixes a game I've packaged (used for quick test) but the solus-runtime-based steam still fails14:57
* diddledan wonders where ikey got to14:57
pstolowskipedronis: yes, and there are differences, so not easy to tell what's crucial and what not; if you can spot what might be missing still https://pastebin.ubuntu.com/p/6Jd6rRZJGk/ then this could save me some iterations14:57
zygadiddledan: that is probably something for ikey and jdstrand14:57
mvozyga: I did "apt purge snapd; apt install snapd/artful-updates; snap install lxd; lxc": /snap/lxd/6492/commands/lxc: 6: exec: aa-exec: Permission denied14:58
mvozyga: lxd-support is not connected14:58
zygamvo: does it exist?14:58
pedronispstolowski: mvo: I fear we have a big issue14:58
pedroniswith the tests14:58
mvozyga: it does14:58
zygaif it exists, that's the bug that is well understood now that I believe pawel is fixing14:58
zygaok14:58
mvopedronis: what exactly?14:58
* diddledan pokenprods jdstrand :-p14:58
zygain our case the bug is that the plug is gone, as evidenced on the forum...14:58
mvozyga: ok, if its the same bug its all good14:58
pedronispstolowski: mvo: we want to use the deb but also the fakestore, but by definition that's not possible14:58
mupPR snapd#4979 opened: overlord,interfaces: be more vocal about broken snaps and read errors (2.32) <Created by zyga> <https://github.com/snapcore/snapd/pull/4979>14:59
mvopedronis: uhhh, indeed14:59
pstolowskipedronis: oh why14:59
pedronispstolowski: mvo: the official deb will never trust the fakestore14:59
pedronis(that's a feature)14:59
pedronisbut is annoying here14:59
zygamvo: I sent a backport of the logging PR14:59
=== phoenix_firebrd is now known as phoenix_firebrd_
zygaand will try to reproduce this in a loop15:00
mvopedronis: yeah, oh well15:00
mvozyga: ta!15:00
mvopstolowski: can you push what you have? without the spread test?15:00
mvopstolowski, pedronis I think we understand the issue, so getting this into edge might be good as a first pass.15:01
pedronismvo: pstolowski: at most we can write a daily test that uses the the deb and the snap in edge15:02
pedronisthere's still value to that15:02
pedronisbut cannot use what's on masrer15:03
pstolowskimvo: i can, let me just finish unit test15:03
mvopstolowski: sure15:03
mupPR snapd#4974 closed: ifacestate: injectTasks helper <Created by stolowski> <Merged by stolowski> <https://github.com/snapcore/snapd/pull/4974>15:04
mvopstolowski: once that has landed we can test locally by modifying release/2.29 to install the edge core by default and running it locally. then we do "snap install lxd" (with no core yet) and we get the (fixed) core from edge and the re-exec should work15:04
mvopstolowski: its not great but as pedronis said we have no way currently to test this for real15:04
kyrofaHey there didrocks! I'll take a look this morning, see if we can figure it out15:04
pstolowskimvo: sounds good15:05
didrockskyrofa: thanks! As it only happens on Travis, it's a little bit painful it seems. FTR, I tried with snapcraft release as well and as a simple edge/test in https://travis-ci.org/ubuntu/communitheme-snap-helpers/builds/362179292, but same issue. Same command with local "docker run" works perfectly15:06
pedronispstolowski: sorry for making you chase impossible tests15:06
didrocks(but basically, our Travis instruction don't work on non branch releases)15:06
pedronismvo: to write a daily we would need at least to have an envvar to change which channel we get core if it's not there15:07
pstolowskipedronis: np15:07
kyrofadidrocks, looks like you're successfully pushing, but then the store is giving us some error that we don't know how to parse15:07
kyrofadidrocks, how did you install snapcraft?15:08
mupPR snapd#4980 opened: Revert "spread.yaml: switch Fedora 27 tests to manual (#4962)" <Created by zyga> <https://github.com/snapcore/snapd/pull/4980>15:08
kyrofaOh, the docker image15:08
didrockskyrofa: docker run snapcore/snapcraft15:08
didrocksyep15:08
didrockskyrofa: so, push is working, but release to a branchname don't15:08
didrocksrelease to "edge" works15:09
didrocks"edge/test" doesn't15:09
kyrofadidrocks, but it works locally?15:09
kyrofaHow weird15:09
didrocks(but works locally, with a docker image)15:09
didrocksyeah :/15:09
didrocksI think it's a vte vs non real vte thing…15:09
kyrofadidrocks, how are you authenticating?15:09
didrockskyrofa: encrypted file creds, decrypted on build15:09
didrocksas told, replacing "edge/test" by "edge" only works, so, cred issues are out15:10
kyrofadidrocks, i.e. using export-login?15:10
kyrofaOr your own real creds?15:10
didrockssnapcraft enable-ci travis created an encrypted file and pushed env var to travis15:10
kyrofadidrocks, ah, then it is a creds issue15:10
didrocksoh?15:10
didrockswhy edge would work when edge/test doesn't?15:11
kyrofadidrocks, enable-ci travis creates credentials that can only push to edge15:11
didrocksahhhhhh15:11
kyrofadidrocks, you want export-login15:11
zygaCaelum: the instructions are merged now15:11
didrockskyrofa: let me look on instructions for this15:11
kyrofadidrocks, use snapcraft export-login15:11
kyrofadidrocks, you can tune your creds how you like15:11
didrockskyrofa: I think there is still the "it should tell you without printing a stacktrace" bug ;)15:11
kyrofadidrocks, oh totally, that we can fix15:12
kyrofadidrocks, snapcraft doesn't know what the creds can and can't do, so we rely on the store to tell us. But we get all sorts of different error formats from them :P15:12
didrocksfun ;)15:12
didrockskyrofa: ok, I think I need to export that in a file, then, encrypt it before pushing15:13
didrocksshouldn't --channels=edge including --channels=edge/* ?15:13
didrocksinclude*15:13
kyrofadidrocks, to the length of my knowledge, the store ACLs don't support wildcards15:13
kyrofacprov may know better15:13
didrocksso, basically, I need to give unrestricted access with my creds15:14
didrocksto create branch-on-the-go15:14
kyrofadidrocks, you can at least limit it to the specific snap15:14
didrocks(basically, based on the PR name)15:14
didrocksyeah15:14
kyrofadidrocks, also limit it only to uploads15:14
didrocksis the list of acls somewhere?15:14
didrocks(the help only mention acls option)15:15
kyrofadidrocks, https://dashboard.snapcraft.io/docs/api/macaroon.html#post--dev-api-acl-15:15
didrocksawesome!15:15
kyrofaI've been meaning to get those into snapcraft itself15:15
kyrofacprov very helpfully documented them fo rus15:15
didrockskyrofa: thanks a lot, I would never have figured out this restriction with this stacktrace! ;)15:15
didrocksat least, I'm unblocked now15:15
kyrofadidrocks, my pleasure! Should be easy to reproduce, I'll triage the bug and we'll get it fixed, thanks for the thorough report as always :)15:16
didrockskyrofa: yw :-)15:16
kyrofadidrocks, by the way, are you building snaps per PR or something?15:19
kyrofaHow do you plan on dealing with forks?15:20
kyrofadidrocks, by the way, if you don't want to encrypt, you can `travis env set SNAP_TOKEN "$(cat my-exported-login)"` and then use `echo "$SNAP_TOKEN" | snapcraft login --with -`15:22
didrockskyrofa: yes, that's my plan. Basically, only PR made by core contributors will be built/testable this way15:23
kyrofaGotcha15:23
zygaanother bug getting in the way https://www.irccloud.com/pastebin/Q6aoFA0A/15:23
didrocksI'm still ensure the build script can at least build on push for people to test15:23
didrockskyrofa: excellent! I'll use this :)15:23
zygabug.sh https://www.irccloud.com/pastebin/bzEWq7pw/15:23
zyganot a happy day15:24
kyrofadidrocks, you might also like this: https://github.com/travis-ci/dpl/pull/80015:25
mupPR travis-ci/dpl#800: Add snap provider <Created by kyrofa> <https://github.com/travis-ci/dpl/pull/800>15:25
mvozyga: uhhh15:25
zygaI think we must add some code that waits for core restart with rest of setup15:25
didrockskyrofa: oh, sounds that will enable me to reduce a lot what I'm doing right now15:26
zygapedronis: ^ not sure what you would suggest for this, I'm looking at the snapd restart code now15:26
zygamvo: FYI, I ran bug.sh exactly once :/15:27
=== phoenix_firebrd_ is now known as phoenix_firebrd
zygamvo: holly cow15:34
zygareproduced the bigger bug15:34
zyga2nd run :|15:34
zygaI have lxd without lxd-support now15:34
zygalxd-support bug trivially reproduced  https://www.irccloud.com/pastebin/rootNBq3/15:35
zygadetails of the change refreshing core and lxd together15:36
zygahttps://www.irccloud.com/pastebin/AxjIVck6/15:36
zyganote that spawn and ready times are more interesting than task order15:37
=== phoenix_firebrd is now known as phoenix_firebrd_
pedroniszyga: there's no easy way to achieve that15:39
pedroniszyga: also there are no errors there?15:41
pedronishow does we get no interfaces15:42
pedronisand no errors15:42
zygano, no errors15:42
zygabecause the snap.Info is returned15:42
zygajust has Broken field set15:42
zyga:/15:42
pedronisbut that doesn't relate to core15:42
zygawe never return error if meta/snap.yaml cannot be found15:42
zygapedronis: perhaps, I don't know yet15:42
zygaI ran it together to force a restart15:42
zygathis was done on my bionic laptop15:43
mvozyga: yeah, I also have the lxd without lxd-support issue, its trivial to reproduce for me as well. but isn't that what pstolowski is fixing right now?15:44
zygamvo: no15:45
zygamvo: this is from stable core15:45
zygamvo: and again, _threre is no plug_15:45
zygathis is not a connect issue15:45
zygathis issue is that we have nothing to connect to15:45
pedronisdo we think mount has happened but not?15:46
pedronislike we don't wait on mount enough15:46
mvozyga: is https://www.irccloud.com/pastebin/raw/rootNBq3 the pastebin? if so, there is ":lxd-support                        -" in the snap intefaces? or am I confused?15:47
zygahttps://www.irccloud.com/pastebin/F2qfHSP1/15:47
zygathis is key15:47
zygathere's no plug at all15:47
zygathere must be a plug on the lxd snap15:47
zygathe slot you pasted is the implicit slot on core15:48
zygawhich is there even if we cannot read core's snap.yaml15:48
pstolowskizyga: and you think this happens because we're not waiting for core install?15:48
zygano, I don't know why yet15:48
pedroniswhat's the task task that does mount again15:48
mvozyga: aha, thanks! that was what I was missing15:49
zygamore clear evidence of this bug (shorter) https://www.irccloud.com/pastebin/tmigy3Hi/15:49
zygapedronis: it is mount-snap15:49
pedroniszyga: there's no Mount at all in your changes15:49
pedronisafaict15:49
zygawhaaaa15:50
zygais it another bug where old core vs new core taks are different?15:50
pedroniswe didn't change it in a while15:51
zyga??? https://www.irccloud.com/pastebin/XaWi8TtG/15:51
pedronisbut maybe we aren't setting up tasks correctly anymore15:51
zygawhy is that conditional?15:51
pedronisthat I don't know15:51
pedronisbut in you case the condition should be false15:51
pedronisor so I hope15:51
pedronisbut I don't see Mount in your pastebin15:52
zyga    // check if we already have the revision locally (alters tasks)15:52
zyga    revisionIsLocal := snapst.LastIndex(targetRevision) >= 015:52
mvozyga: 2016 - thats a long time ago15:52
zyga"locally" is confusing here15:52
zygait looks like switch specific artefact15:52
pedronisyes, it means it already there on disk15:52
zygaso perhaps red herring somehow15:52
zygabecause they are both mounted15:52
mvozyga: yeah, it will already be mounted15:53
mupPR snapd#4981 opened: ifacestate: inject autoconnect <Created by stolowski> <https://github.com/snapcore/snapd/pull/4981>15:53
zygabut good hunch15:53
pedronisbut if they are mounted15:53
pedronishow can we have no plugs?15:53
pstolowskimvo: the PR: https://github.com/snapcore/snapd/pull/498115:53
mupPR #4981: ifacestate: inject autoconnect <Created by stolowski> <https://github.com/snapcore/snapd/pull/4981>15:53
zygapart of journal after affected snapd restart https://www.irccloud.com/pastebin/Rp3GCuu2/15:54
zygawe add snaps first, reload connections next15:55
zygawhatever could cause this is beyond me now15:55
zygathough this code doesn't log the fancy broken snaps15:55
zygaso ... maybe we can merge that PR and rebuild core15:55
zygafor a low-tech reproducer15:55
mvozyga: yeah, I think that will definitely help15:57
mupPR snapd#4978 closed: overlord,interfaces: be more vocal about broken snaps and read errors <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4978>15:57
mupPR snapd#4979 closed: overlord,interfaces: be more vocal about broken snaps and read errors (2.32) <Created by zyga> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4979>15:57
zygamvo: what do we need now?15:57
mvoChipaca: 4845 is probably interessting for you15:57
zygamvo: ppa build trigger + core build trigger?15:57
pedronispstolowski: I don't understand that code,  a change can be about many snaps15:57
mvoChipaca: (mark asked about when we get version info for c-n-f :)15:57
pstolowskizyga: i've just got state.json from the user who reported this originally.. nothing suspicions there and since we're able to reproduce we won't learn anything new from it I guess15:57
pedronispstolowski: we need to add an autoconnect for each snap, not just for the first15:57
mvozyga: yeah, let me do this15:57
mvozyga: vendor-sync first15:57
zygapstolowski: yeah, I think it's all too easy to reproduce15:57
zygamvo: thank you15:58
pstolowskipedronis: you're right...15:58
zygamvo: I can work on this overnight but I need to break now, I'm on the phone all the time so if you have ideas I can come over15:58
zygaI just need to manage kids for a while15:58
mvozyga: sure15:58
mvozyga: thanks for all your help15:58
mvozyga: I merge this now and once the new edge is ready I can re-run your script.15:59
pedronispstolowski: I left a comment in the PR16:00
zygamvo: please backport https://github.com/snapcore/snapd/pull/496916:00
mupPR #4969: interfaces: make system-key more robust against invalid fstab entries <Squash-merge> <Created by mvo5> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4969>16:00
zygaohhh shit16:01
zygaforgot to squash16:01
mupPR snapd#4969 closed: interfaces: make system-key more robust against invalid fstab entries <Squash-merge> <Created by mvo5> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4969>16:01
Chipacamvo: +116:01
zygamvo: sorry, I didn't mean to :(16:01
mupPR snapd#4976 closed: cmd/snap-mgmt: remove timers, udev rules, dbus policy files (2.32) <Created by bboozzoo> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4976>16:02
pedronisalso there's  strange branch on the main repo:  revert-4969-system-key-robustness16:02
zygaI think that was me clicking on the revert trying to undo16:03
zygawe can remove it16:03
mvozyga: no worries, I can cherry-pick one-by-one, its not that terrible16:05
mvozyga: go and take care of the kids :)16:05
zygayeah, I'm going now16:05
zygattyl16:05
mupPR snapd#4982 opened: interfaces: make system-key more robust against invalid fstab entries (2.32) <Created by mvo5> <https://github.com/snapcore/snapd/pull/4982>16:07
mupPR snapd#4983 opened: osutil/sys, client: add sys.RunAsUidGid, use it for auth.json <Created by chipaca> <https://github.com/snapcore/snapd/pull/4983>16:11
Chipacamvo: ^ your old friend 'drop privileges'16:11
Chipacap.s. when are we moving to 1.10 :-)16:12
zygaJust observation from a phone: it cannot be a mount issue as I had both snaps mounted16:12
zygaSo something else rejected the lxd snap (validation perhaps)16:13
Chipacahuh, launchpad giving me 'address unreachable'16:13
Chipacaand it's back16:14
=== phoenix_firebrd_ is now known as phoenix_firebrd
pedronisunless we have grown something that unmounts things16:40
pstolowskipedronis: addressed your feedback + made a small addition to injectTasks helper, not strictly a bug, but I think it's good if extraTasks wait for main task - only affected tests at the moment that had very few tasks and no one waited for mainTask16:46
cmarshi, where should i open a snapd bug?16:51
Chipacacmars: if it's snapd, https://bugs.launchpad.net/snapd/+filebug16:53
Chipacacmars: if it might be snapd, but it might be something else, https://bugs.launchpad.net/snappy/+filebug16:53
Chipacaand then we assign it as appropriate16:53
cmarsChipaca: thanks!16:53
Chipacacmars: what did you break _now_? :-p16:53
cmarsChipaca: asking for a friend :)16:54
Chipaca:-)16:54
* kalikiana wrapping up for the day16:56
Chipacaholy potato, that's a lovely stacktrace17:09
pstolowskizyga: i've run your bug.sh and got https://pastebin.ubuntu.com/p/SJTK4qP5Dc/17:09
zygathat's another bug17:10
zygaI also got it17:10
zygarun it again17:10
pstolowskiah, ok17:10
mvozyga, pstolowski fwiw, i triggered the new core build, we should have more debug info soon (~15-30min)17:13
zygathat's very good, thank you17:13
pstolowskity17:13
pedronispstolowski: I noticed something weird,    at the beginning of doSetupProfiles we do addImplicSlot but I don't see that in doAutoconnect17:28
pedronisdo we need that or not17:30
=== grumble is now known as Guest10721
=== rumble is now known as grumble
pedronispstolowski: wasn't the idea at some point that we wanted to move that somewhere else17:31
mupPR snapd#4982 closed: interfaces: make system-key more robust against invalid fstab entries (2.32) <Created by mvo5> <Merged by zyga> <https://github.com/snapcore/snapd/pull/4982>17:35
mupPR snapd#4983 closed: osutil/sys, client: add sys.RunAsUidGid, use it for auth.json <Created by chipaca> <Closed by chipaca> <https://github.com/snapcore/snapd/pull/4983>17:35
zygamvo: so, weird - new core, no error logged, still same bug17:35
zygaplus, for chipaca, I got this error: kwi 04 19:35:14 t470 snapd[23332]: 2018/04/04 19:35:14.803094 stateengine.go:101: state ensure error: cannot decode new commands catalog: got unexpected HTTP status code 403 via GET to "https://api.snapcraft.io/api/v1/snaps/names?confinement=strict%2Cclassic"17:35
Chipacazyga: that's probably fine17:36
Chipacai mean, i don't know why the store is 403'ing that endpoint, but it's not fatal17:37
pedronisEnsure errors should block further ensure step17:37
pedronisshould not17:37
zygaah, error is when I go back to stable17:37
zygaso expecte d:/17:37
* Chipaca had a panic attack for 7 seconds there17:37
zygalet's try the other way around now17:37
pedronisChipaca: yes, that 403 is a bit weird17:38
zygaso17:38
zygastable -> edge17:38
zygaconfirmed new core is there17:38
zygabut no messages17:38
zygaWTF17:39
zygamaybe it isn't broken?17:39
zygaI'll enable debugging17:39
pedronismvo: 4900 is green, also I removed the strange logging given that zyga's PR added it at a lower level17:42
mupBug #1761253 opened: Installing a network-bind snap along with core fails results in incorrect permissions <Snappy:New> <https://launchpad.net/bugs/1761253>17:49
=== sarnold_ is now known as sarnold
* zyga adds debugging and repacks core17:52
zygamvo: I added some debugging and ... at the time snapd starts there's no lxd snap17:55
zygaI get it now17:55
zygapedronis: it's funny really17:55
zygapedronis: the bug is here17:55
pedronisit's disabled17:55
zyga    snaps, err := snapstate.ActiveInfos(m.state)17:55
zygawe skip inactive snaps17:56
pedronisthat's correct17:56
pedronisbut when we re-activate them17:56
pedroniswe don't do the right thing17:56
pedronisI suppose17:56
pedroniswell "correct"17:57
zygahmm17:57
pedronisdisable removes profiles17:57
pedronisbut doesn't remove from repo17:57
zygalog of the issue https://www.irccloud.com/pastebin/nxyEebVA/17:58
zygaso after snapd starts up, ignoring lxd, it proceeds with the 2nd half of lxd setup17:58
zygakwi 04 19:54:42 t470 snapd[7142]: 2018/04/04 19:54:42.808109 taskrunner.go:403: DEBUG: Running task 2249 on Do: Make snap "lxd" (6508) available to the system17:59
zygaI will review that code next17:59
pedroniswe setup profiles17:59
pedronisbefore ?17:59
pedronisbut the snap is not active17:59
mvopedronis: thank you!17:59
pedronisit's again an issue that active is conflating too many things18:00
pstolowskipedronis: addimplicitslots is only relevant for repo.AddSnap call below18:00
zygapedronis: where? I don't see it yet18:01
pedroniszyga: we setup-profiles already  so the snap has profiles but is not active18:01
mvozyga: nice catch! about the inactive ones18:01
pedronisso when we restart we don't load it18:01
zygapedronis: I think in this run lxd was security setup before the restart18:01
zygabecause I don't see any tasks for it18:01
pedronisin the repo18:01
zygabut it wasn't active yet18:01
pedronisso it has profiles but is not active18:01
zygaso it wasn't added18:01
pedronisbut we don't add it to the repo18:01
pedroniswhen is made active18:01
zygaand no plugs/slots18:02
zygaand thus no connections18:02
zygawe should add inactive snaps but don't build their profiles IMO18:02
zygapedronis: ^18:02
zygabecause if core hadn't restarted it would be still in the repo18:02
zygajust inactive18:02
zygawell, inactive in the state, in the repo there's no such notion18:03
zygawell, normally it's already there18:03
zygawe cannot blindly add it18:03
pedronisdoes remove remove the snaps from the repo?18:03
zygadisable removes profiles, enable adds them18:03
zygabut neither affects the repo18:03
pedronisbut that is profiles18:03
pedronisnot repo18:03
pedronisalso I'm talking about remove18:03
zygapedronis: AFAIR it does not, let me lookg18:03
zyga*look18:04
mvopstolowski, pedronis 4981 looks good to me know, WDYT?18:04
pedroniszyga: I wonder why are we seeing thins only now though, we should have had this form of problem since a long while18:05
zygamore paralellism, restart at the "unlucky" time18:06
pedronisthat part of parallelism was always there18:06
pedronisjust lxd and snapd sending out a new release close to each other?18:06
zygamaybe18:06
pedronisanyway afaict we AddSnap  when we setup profiles and at start18:08
pedronisso in theory   something should be added if it has profiles18:08
pedronissadly that != active18:08
zygapedronis: setup profiles adds the snap to the repo18:09
zygaand removes any old snap from the repo18:09
zygaremove profiles removes the snap from the repo18:09
pedroniswe have no memory of the setup profiles add though18:09
pedronisonly later the get active18:10
zygano becaues that's just in memory18:10
zygathat's not the state18:10
pedronisI know18:10
pedronisthat's our problem18:10
zygathe pre-restart remembered it18:10
zygayes18:10
zygaI agree,18:10
zygamvo: I think we know what's the issue now but ideas on how to address it are welcome18:10
zygapedronis: so what is that state that lxd is in18:11
zygait's not active yet18:11
pedronisis not active18:11
zygabut we setup profiles for it18:11
pedronisbut had profiles setup18:11
zygawhat do we call that state18:11
pedronisbut that's not a state tracked in state18:11
zygapending?18:11
zygaright, I'm trying to invent a new name18:11
pedroniswe don't track that18:11
zygabut all old snapds won't track that18:11
zygaso ...18:11
zygaa bit of a chicken and egg18:11
pedronisremoveProfiles18:11
pedronisalso remove from repo18:12
zygayes18:12
pedronisso active is almost right except when not18:12
zygasetup ensures we have the latest snap in the repo and generates profiles18:12
zygaremove ensures we don't know about it and removes profiles18:12
zygahaha, yes :)18:12
zygapedronis: one more super fun fact18:13
zygapedronis: has-profiles flag is not per revision18:13
pedroniscan we add the same snap again?18:13
pedroniswhat happens in that case18:13
zygaadd no, it would clash18:13
zygaremove and add yes18:13
zygawel18:13
zygawell adding a snap that's empty is a no-op18:13
zygawe only really track interfaces18:13
pedronisanyway it doesn't help18:14
pedronisbecause our problem is reloading connections18:14
zygapart of the logic remembers revisions (via snap info) so that's why we remove/add snap on setup-profiels18:14
zyga*profiles18:14
zygapedronis: I think my suggestion is still correct18:14
zygapedronis: load all snaps into repo18:14
zygapedronis: but setup security only for those that are active18:14
zygathis would fix this issue18:14
zyga(only on snapd startup, that is)18:15
zygathen we have the right state to reconnect18:15
zygaand to setup stuff later18:15
zygathough... if inactive, which is "latest"18:15
zygawhich revision to pick?18:15
pedronissounds like we need   ProfileRevision in SnapState18:16
pedroniswe have Current but that a guess18:16
pedronisif we are in the middle of other ops18:16
pedronisotoh is probably what we use anyway18:17
zygacan we add ProfileRevision in a way that will work on refreshes from snapd that have no idea about it18:17
pedroniswell we use it only if not Active18:17
pedronisby definition if Active    ProfileRevison == Current18:17
pstolowskizyga: if you add all snaps to repo and not just active, that will make their slots/plugs available to the system, no?18:18
zygapstolowski: we cannot add all, we need to add one of each18:18
zygapstolowski: which revision should we add?18:18
zygapstolowski: and besides, it's still a bit broke18:18
pedronisit will also create problem with autoconnect18:19
pstolowskizyga: ah, i see what you mean18:19
pedroniswe shouldn't atuoconnect to disabled snaps18:19
zygapstolowski: even if we add "all" then snap interfaces will tell you about snaps that are disabled18:19
zygapstolowski: that's not supposed to happen18:19
zygapstolowski: what we need to is to ensure that lxd can be installed the same way if core wasn't restarting18:19
zygatrack something we don't18:19
pstolowskizyga: yes, exactly18:19
pstolowski(about interfaces whose snaps disabled)18:20
zygakwi 04 20:21:35 t470 snapd[11725]: 2018/04/04 20:21:35.357788 snapstate.go:1696: DEBUG: skipping inactive snap lxd with snap state &{app [0xc420497400 0xc420497480 0xc420497500] false 6492 edge {false false false false false false false false false false false} map[lxc:0xc42031b380] false true 0}18:21
zygasome explicit debugging to confirm this18:22
zygakwi 04 20:26:08 t470 snapd[16117]: 2018/04/04 20:26:08.840805 snapstate.go:1696: DEBUG: skipping inactive snap lxd with snap state &snapstate.SnapState{SnapType:"app", Sequence:[]*snap.SideInfo{(*snap.SideInfo)(0xc4200c7180), (*snap.SideInfo)(0xc4200c7200), (*snap.SideInfo)(0xc4200c7280)}, Active:false, Current:snap.Revision{N:6492}, Channel:"edge", Flags:snapstate.Flags{DevMode:false, JailMode:false, Classic:false,18:26
zygaTryMode:false, Revert:false, RemoveSnapPath:false, IgnoreValidation:false, Required:false, SkipConfigure:false, Unaliased:false, Amend:false}, Aliases:map[string]*snapstate.AliasTarget{"lxc":(*snapstate.AliasTarget)(0xc420322360)}, AutoAliasesDisabled:false, AliasesPending:true, UserID:0}18:26
zygawith field names18:26
pedroniszyga: I see two possible fixes,   either we do something like ProfileRevision in snapstate use that and Active and Current to decide which snaps to add to the repo. or we teach doLinkSnap  to AddSnap if it's not there yet but then it would need to load the missing connections as well18:27
pedronisand it breaks the ifacestate/snapstate separation18:27
* zyga looks at doLinkSnap code18:27
pedronisit's already big and in the wrong package18:28
pedronisthe appeal is not needing more state18:28
pedroniszyga: there's no cheap way to look at disk and be sure if a snap has profiles and for which revision?18:29
pedronis(anyway that's not our usual approach)18:29
zygapedronis: no, we'd have to be "creative" but it's terrible18:29
jdstrandstgraber: I wonder if your issues are at all related to https://forum.snapcraft.io/t/snapped-lxd-has-stopped-working-aa-exec-permission-denied/2356/3418:29
zygajdstrand: btw: we understand that bug very well now18:29
zygait's unfortunate coincidence but easy to trigger18:29
zyganot a new bug in any way18:29
jdstrandzyga: you are saying that stgraber's issue is a different, new one?18:30
zygajdstrand: we understand issues with missing interfaces that cause lxd issue with aa-exec18:30
pedronisjdstrand: there are probably 3 different bugs18:30
zygapedronis: 3?18:31
jdstrandzyga: to be clear stgraber's was related to fresh install and seem to be hitting all of a sudden. mine was refresh.18:31
zygajdstrand: yes18:31
zygaah, that's another bug perhaps18:31
pedroniscounting this one as well:  https://forum.snapcraft.io/t/2-0-lxd-snap-fails-on-sytems-with-partial-apparmor-support/470718:31
zygadeb -> snap missing task #1st bug18:31
pedronisthat hits fresh installs18:32
zygacore, lxd refresh -> #2nd bug18:32
zygacore, lxd refresh (hook cannot talk to snapd) -> #3rd bug18:32
zygacore, lxd refresh (missing interfaces on lxd) -> #2nd bug18:32
zygathat's what we konw18:32
pedronisah, so 4  with something to do with aa-exec18:32
zygaah, the partial apparmor is another one18:32
zygaman, fun day :)18:33
zygapedronis: reading doLinkSnap now18:33
jdstrandzyga: this is the one I was referring to: https://forum.snapcraft.io/t/auto-connected-interfaces-missing-on-initial-snap-install/485018:33
pedroniswe havea PR to fix #118:33
zygajdstrand: that's #118:33
jdstrandok18:33
jdstrandI don't think we need to do anything about https://forum.snapcraft.io/t/2-0-lxd-snap-fails-on-sytems-with-partial-apparmor-support/4707 (I justify why in the topic)18:34
zygaI kind of feel this is something we need to think with a fresh mind18:34
jdstrandthat isn't really a snapd thing. the snap can workaround it while the kernel fix makes its way out there18:34
pedronisjdstrand: to be honest it seems we discovered #2 and #3 because there were snapd and lxd release close to each other18:34
zygajdstrand: since you are here: where's the non-abstract x11 socket normally?18:35
pedronisthey are both preexisting bugs18:35
zygayes, it's an old bug18:35
zygawith very unlucky timing18:35
jdstrandzyga: /tmp/.X11-unix/18:35
zygajdstrand: aha18:35
jdstrand/tmp/.X11-unix/X018:35
zygabummer18:35
jdstrandindeed18:35
zygawhy not /run?18:36
zygaman that's so sad :/18:36
jdstrandhysterical raisins18:36
zygaI wanted to refactor snap-update-ns to run pre pivot18:36
zygathen we could save that socket18:36
zygacan we bind mount the socket from hostfs?18:36
jdstrandsure18:36
zygawould that be okay-ish?18:36
jdstrandthat is the request18:36
zygaso x11/desktop/whatever interfaces could add a mount profile18:36
jdstrandx11 and unity7, yes18:37
jdstrandnote that x11 and unity7 are often declared together18:37
zygafor /run/snapd/hostfs/tmp/.X11-unix/ -> /tmp/.X11-unix/18:37
zygaaha, good point, we don't handle duplicates18:37
zygawell18:37
zygawe do18:37
zygabut not how we want it here18:37
zygajdstrand: I understand the issue now18:37
zygajdstrand: how can I disable the abstract socket for testing?18:38
zygajdstrand: to know I fixed it18:38
zygajdstrand: it seems simple (1 day work)18:38
jdstrandzyga: I think you mean /var/lib/snapd/hostfs/tmp/.X11-unix/, no?18:38
jdstrandzyga: otoh, idk. you might ask the desktop team18:38
zygaah, yes :)18:38
zygasorry, just tired now18:38
zygagreyback: do you know how to disable the x11 abstract socket on bionic, for testing?18:39
jdstrandpedronis: yes, with 2 and 3 I suspected it had to do with the fact the lxd and core were updated within the same refresh cycle, which is why it has been sporadic18:39
jdstrandthat will be a nice bug to have fixed18:40
jdstrandthe 3 that is will be nice together :)18:40
jdstrandmeh18:40
jdstrandall 3 fixed will be nice :)18:40
zygamvo: around?18:42
mvozyga: yes, was just reading backlog18:44
mvozyga: so the bug is that snapd restarts and we loose state about lxd we only had in memory?18:45
zygayes18:45
zygaI'm summarizing this in a new thread18:45
mvozyga: if so, would it make sense to force core refreshes before everything else ?18:45
pstolowskimvo: ok, I got +1 from pedronis on autoconnect fix, but travis failed on device-registration test.. restarted the tests18:45
mvopstolowski: thanks!18:46
zygamvo: yes but it's still ugly that we don't have the full state18:46
mvozyga: on disagreement, just thinking aloud what we can do short term18:46
mvozyga: s/on/no/18:46
mvozyga: sorry18:46
zygahttps://forum.snapcraft.io/t/summary-of-core-lxd-refresh-bugs-discovered-today/486918:46
zygamvo: I think it's a viable fix18:47
pedronismvo: it's a bit unclear what does that mean18:47
zygapedronis: if core is refreshed:18:47
pedronisforce core before anything else18:47
zygapedronis: abort other refreshes18:47
pedronisthat doesn't make sense18:47
zygapedronis: schedule refresh of all snaps after reboot18:47
zyga(restart)18:47
zygaso "snap refresh core lxd" becomes "snap refresh core && snap refresh lxd"18:48
zyga(internally)18:48
pedronisbut you can do snap refresh core18:48
pedronissnap refresh lxd18:48
zygayes18:48
zygaand lxd would say "changes in proress (core)"18:48
zygaI'm saying for short term18:48
zyga.4 fix18:48
zyganot forever18:48
zygathis would fix more than one bug18:49
pedronisit's not a trivial fix18:49
zyga(it would fix all of them actually)18:49
zygaif it's not trivial then that's not a good solution18:49
mvoso just to double check, the state we are loosing is generated when the tasks for the refresh(core,lxd) is generated? and then we restart and those bits are gone?18:49
zygabut I think it could be easire than a proper fix for each one18:49
mvoit would not help if we make all other tasks wait for core refresh tasks first?18:49
zygamvo: the state we lose is interface repo18:49
zygamvo: if snapd hadn't restarted it would be in correct condition18:49
zygamvo: not fully, (see the autoconnct task issue) but mostly18:50
pedronismy point is that splitting up autorefresh to behave that way18:50
mvois it because lxd maybe inactive at this point? because if so if we ensure that all refresh tasks wait for core things would be ok as well, no?18:50
pedronisis not that simple18:50
zygamvo: the low level issue is that when snapd starts and constructs the repo we don't know that we need to add some revision of lxd (inactive) to the repo18:50
dpb1zyga: have we considred a rollback of the core snap?  it's broken all initial installs.18:50
mvozyga: so that is because the lxd refresh is half-done at this point, right?18:51
zygadpb1: can you provide more data please?18:51
zygamvo: yes18:51
zygadpb1: to answer your question, we considered rollback of core and try not to break it18:51
zygadpb1: how is it breaking initial installs?18:51
pedronisI think is saying because of bug #118:52
mupBug #1: Microsoft has a majority market share <canonical> <iso-testing> <microsoft> <package-qa-testing> <Clubdistro:Confirmed> <Computer Science Ubuntu:Confirmed for compscibuntu-bugs> <LibreOffice:New> <dylan.NET.Reflection:Invalid> <dylan.NET:Invalid> <EasyPeasy Overview:Confirmed for ramvi>18:52
mup<Ichthux:Invalid by raphink> <JAK LINUX:Invalid> <LibreOffice:In Progress by bjoern-michaelsen> <Linux:New> <Linux Mint:Fix Released> <The Linux OS Project:In Progress> <Neobot:New> <Novabot:New> <OpenOffice:In Progress by lh-maviya> <ReactOS Core Operating System:Incomplete> <Tabuntu:Invalid by18:52
muptinarussell> <Tivion:Invalid by shakaran> <Tv-Player:Invalid> <Ubuntu Malaysia LoCo Team:In Progress by apogee> <Wine:Confirmed> <Ubuntu:Fix Released> <Arch Linux:New>18:52
mup<Baltix:Confirmed> <Debian:In Progress> <Fedora:Confirmed> <Fluxbuntu:Confirmed> <openSUSE:In Progress> <Tilix:New> <https://launchpad.net/bugs/1>18:52
pedroniswe should  rollback core18:52
pedronisto 31.x18:52
pedronisbecause all people trying snaps right now will it18:52
pedronishit it18:52
zygadpb1: ah18:52
zygadpb1: I understand your point now18:53
zygadpb1: yes, I think that's a viable solution18:53
zygamvo: ^18:53
zygajdstrand: ^18:53
mvocachio: can you test that a revert of core from 2.32.1 -> 2.31.2 works ok? and if so I think we need to move stable for core back to 2.31.218:53
zygaJamieBennett: ^18:53
mvozyga: ack, I think we need testing but once that is confirmed +118:53
zygamvo: yes18:53
zygathat's a very good outcome for 20:5318:53
mvozyga: also we need to ensure the store is prepared for this (same heads up as with a regular new stable)18:53
zygaand we need .3 with a few more fixes18:53
mvozyga: indeed18:54
zygaor even 2.31.x with some helper fix18:54
zygaif needed18:54
zygaand we could do a post mortem to learn from this18:54
JamieBennettzyga: mvo: as long as we are sure the rollback is safe and will indeed fix the issue, I'm +1 although I believe we have a fix for #1 very close?18:55
cwaynemvo: zyga: reverting core? Did we miss something?18:55
zygaJamieBennett: FYI: issues numbered: https://forum.snapcraft.io/t/summary-of-core-lxd-refresh-bugs-discovered-today/486918:55
zygacwayne: ^18:55
JamieBennettzyga: yes, saw that, thanks18:55
mvoJamieBennett: two out of three are almost done18:55
jdstrandzyga: you asked my opinion. I'm not sure if it was meant for me. if it was, what do you want my opinion on?18:55
JamieBennettmvo: so is it safer to rollback or push the fix?18:55
zygaJamieBennett: we don't have a fix yet18:56
mvoJamieBennett: I would (naturally) prefer the fix, but we have one open issue left and we don't know how widespread that is18:56
zygajdstrand: just FYI18:56
pedronismvo: zyga: the issue of waiting for core, is also  that is can happen in the other direction to,   snap  refresh lxd,  snap refresh core, it's unlikely but we would need to wait to deactivate core until there is no interesting pending task18:56
* jdstrand nods18:56
zygapedronis: yes, that's a good point18:57
zygapedronis: I would prefer a fix that tracks state correctly18:57
zygait feels conceptually easier to explain18:57
zygathan the waiting workaround18:57
pedronisbasically it's doable but it escalates quickly a bit into a tangle of cross checks18:57
zygaand also more correct technially18:57
zygayes18:58
zygaI will look at tracking this in the state, I can iterate locally without pushing anything18:58
zygabut I probably will bail soon, I need to think and rest18:58
mvozyga, pedronis can we have a quick HO to sync up on possible fixes? or is it too late?18:58
zyga(no need to rebuild core to test)18:58
zygamvo: sure18:59
zygain 2 min in standup18:59
dpb1stgraber: ^18:59
dpb1stgraber: would be good to test out side on that too18:59
pedronismvo: yes19:00
dpb1stgraber: *our side19:03
stgraberdpb1: not sure how to test that, there's no flag to "snap install lxd" that I can pass to tell it to install a particular version of the core snap19:05
zygawtf https://www.irccloud.com/pastebin/BIrJMfkH/19:06
stgraberzyga: ah yeah, we've seen that occasionally before, it's a weird one19:08
zygastgraber: we understand it now19:09
zygacachio: ping19:10
stgraberzyga: oh, that explenation makes sense, I always thought it was our weird mntns setup that was causing that, but the socket not being reachable because of the restart makes sense19:11
ackkstgraber, you can snap install core manually though19:12
jdstrandstgraber: you may have noticed me talking about lxd yesterday. that is one of the 3 issues being discussed above19:12
stgraberackk: not for this bug, no19:13
stgraberackk: this bug specifically happens when the core snap is auto-installed when you install your first snap19:13
stgraberackk: installing core seperately avoids the issue :)19:13
ackkoh :)19:13
stgraberjdstrand: ah, glad that the different issues have been tracked down and untangled now :)19:14
jdstrandstgraber: yes. 'lucky' you it is all happening with the lxd snap. the fixes will make things more robust for everyone :)19:15
stgraberyeah, "lucky"... timing is kinda crap though as we're doing the social media round for LXD 3.0 tomorrow :)19:16
stgraberfor now I updated our install instructions in that post to "snap install core && snap install lxd" with a link to the snapd issue on the forum, that should save us from most bug reports :)19:17
jdstrandnice19:17
cachiozyga,  hey19:21
pstolowskimvo: #4981 merged19:22
mupPR #4981: ifacestate: inject autoconnect <Critical> <Squash-merge> <Created by stolowski> <Merged by stolowski> <https://github.com/snapcore/snapd/pull/4981>19:22
mupPR snapd#4981 closed: ifacestate: inject autoconnect <Critical> <Squash-merge> <Created by stolowski> <Merged by stolowski> <https://github.com/snapcore/snapd/pull/4981>19:22
=== pstolowski is now known as pstolowski|afk
mupPR snapcraft#2046 closed: lxd: specify arch in lxc image list command <Created by kalikiana> <Merged by kyrofa> <https://github.com/snapcore/snapcraft/pull/2046>19:23
mvopstolowski|afk: thanks!19:27
mupPR snapd#4984 opened: ifacestate: inject autoconnect (#4981) <Critical> <Created by mvo5> <https://github.com/snapcore/snapd/pull/4984>19:28
zygaJamieBennett: I updated the thread with more details and links to PR that fix the issue19:31
zygacachio: did you see the question from mvo19:31
zygacachio: we need to test a rollback of core to 2.31.x19:31
zygaJamieBennett: I don't think we have a rollback decision yet but it is a tempting choice, mvo will discuss with you when he's back19:31
cachiozyga, sure, I'll do it now19:32
zygaJamieBennett: and regardless of the rollback we will do 2.32.4 with fixes for all three issues 2 and 319:32
zygaand maybe for issue 119:32
cachiozyga, any version in specific?19:32
zygacachio: latest 2.31.x so I think 2.31.219:32
JamieBennettAs above, I’m +1 if we are confident that it will not cause issues19:33
zygaJamieBennett: we discussed how to solve issue 2 just now and I'm working on it19:33
zygaJamieBennett: right, mvo said we would only rollback afte cachio gives +1 from test POV19:33
mvocachio: 4205-4210 is the previous 2.31.219:33
* JamieBennett nods19:33
zygaJamieBennett: issue .1 is still a bit more complex but we have some ideas19:33
zygahey mvo19:34
mvozyga: hey19:34
cachiomvo, from master, right?19:34
mvocachio: from current stable 4325..30 to 4205..1019:35
mvocachio: i.e. 2.32.1 back to 2.31.219:35
cachiomvo, ok19:35
mvozyga: the fix for "when old snapd starts the process (think: deb) and new one finishes the auto-connect task is missing" has landed in master now, I created a backport and create a new edge core with the fix so that this can be tested for real19:36
zygamvo: thank you19:36
pedronismvo: I think we understood the  snapctl socket issue19:38
pedronisit's related to the shudown logic on restart19:39
pedronisI don't know if there are other failure modes for running hooks while snapd is inactive though19:40
pedroniszyga: mvo: afaict  snap-confine dies if base current is not set?19:43
zygapedronis: yes but it only does so if it needs to construct a new namespace19:43
zygapedronis: if the snap is around (like lxd would) it has a namespace to enter19:43
pedronisok, so there's an issue, but again infrequent (possibly)19:44
zygalooking at the trace I attached it has one19:44
zygaDEBUG: sending information about the state of the mount namespace (keep)19:44
zygathis is critical19:44
zygait says that the namespace is in sync with what base snap we expect to use19:44
zygaso we reuse it19:45
pedroniswell that code does:19:46
pedronis        // Read the revision of the base snap by looking at the current symlink.19:47
pedronis        sc_must_snprintf(fname, sizeof fname, "%s/%s/current",19:47
pedronis                         SNAP_MOUNT_DIR, base_snap_name);19:47
pedronis        if (readlink(fname, base_snap_rev, sizeof base_snap_rev) < 0) {19:47
pedronisso I suppose it would die if current is not htere19:47
zygayes, that's true19:47
zygaif current is not there we die earlier19:48
zygabecause /dev and what not won't be there19:48
zygajust unmount current and see19:48
pedronisso we have a general problem about upgrading bases and their snaps at the same time19:48
pedronisso this one would need conflicts and wait to be solved19:55
cachiomvo, I ran it manually nad I did not see any issue, should I test it in any specific arch or system19:55
cachio?19:55
pedronismvo: zyga: I added a not about base current vs snap ops in that forum topic, it probably merits its own at some point but at least it will not get lost20:00
zygathanks20:00
cachiomvo, https://paste.ubuntu.com/p/5DWzM6Dytf/20:02
cachio2.32.1 -> 2.32.2 -> 2.32.1 worked fine here20:03
mvocachio: great, do you think you could verify on a core device as well? might be tricky to get 2.31.2 there but you can publish the core snap so "snap refresh --revision=4205 core" should work20:04
cachiomvo, sure, let me try it20:05
mvocachio: --revision=4206 if you are on amd64 - 4209 for pi2 :)20:05
cachiook, let me flash the image and I0'll try it20:06
zygapedronis: still there?20:08
zygaI wonder if it is right still (security revision)20:08
zygawriting the commit message for a WIP patch20:09
zygawhen we refresh r1 is setup20:09
zygabut we want r220:09
zygaand r2 is not active yet20:09
zygawe don't remove security of r1, just setup for r220:10
zygaso we want to store r220:10
zygaand reload r220:10
* zyga actually thinks it is fine again20:10
zygajust tired20:10
zygathank you f:)20:10
zygafor listening20:10
pedroniszyga: we need to store the revision of the thing we AddSnap20:12
zygapedronis: quick WIP patch https://github.com/zyga/snapd/commit/a98a927d1ae472f849ed47f6ad396cdf7d98c63620:13
zygauntested20:13
zygaI didn't move any code around to minimize the diff as it will have to use some private functions that need to become public first20:14
pedroniszyga: we have an issue20:15
pedroniszyga: when we install I don't think SnapState exists in snaps until we do link20:17
zygahmm hmm20:17
pedronisand storing it without all the info breaks invariants20:18
pedroniszyga: I fear,  we need a separate security-profiles-revision map20:19
zygahmm hmm20:20
zygawe setup profiles before we link20:20
pedronisyea, that's the issue20:20
zygawe have Candidate20:20
zygacan we use that?20:21
pedronis?20:21
pedronisthat is on the task20:21
pedronisno20:21
zygaah20:21
zygahmm20:22
zygabut don't we have a deeper issue the20:22
zygasetupAffectedSnaps has code like20:22
zygasnapstet.Get9st, affectedSnapName, ...)20:22
pedroniswe don't connect to things that are not installed20:22
zygaif I install a pair of snaps20:22
zygawould they auto-connect to each other?20:23
zygaor only after installation?20:23
zyga*after linking20:23
pedronisonly after installation20:23
zygaok20:23
zygayeah, I see your point20:23
pedronisunless they are default-providers20:23
zygaoh20:23
pedronisin which case we wait for some things20:23
zygawe install the provider first?20:23
zyga(fully)20:23
pedronisnot fully20:23
pedronisbut we don't do autoconnect20:24
zygabut link it?20:24
zygaaha20:24
zygawell20:24
zygaI see the problem20:24
mupIssue snapcraft#1672 closed: Add pre-pull/pull/post-pull <Created by sergiusens> <Closed by kyrofa> <https://github.com/snapcore/snapcraft/issue/1672>20:24
mupPR snapcraft#2045 closed: many: add override-pull scriptlet <Created by kyrofa> <Merged by kyrofa> <https://github.com/snapcore/snapcraft/pull/2045>20:24
zygathank you for the quick insight20:24
pedronisuntil they have done setup-prfoiles20:24
pedronisanyway, as I said, I think we need a separate map20:24
pedronisit's really an issue of snapstate has some state,  and ifacestate needs some different state20:25
zyganote that the error from that get is non-fatal20:25
zygaas we had "mysterious issues'20:25
zygaso maybe another layer of mud needs digging20:25
pedronisbut I see we find   autoconnect candidates based on the repo20:28
pedronisso there might be stuff there20:28
pedronisthat doesn't exist in snaps yet20:28
zygabut then we go and setup security and that may bite us20:30
zygasince we get the snaps from the state20:30
zygabecause we had that bug and gustavo wanted us to always look at the state20:30
zygamaybe that was not right20:30
zygaand maybe refreshing the repo explicitly like we do is enough20:30
zygabut all questions need thinking now20:30
pedroniswell there's a disagreement between snapstate and ifacestate/repo20:31
pedronisabout wha's active20:31
zygaactive is misleading20:31
zygabut yes20:31
zygathere's disagreement20:31
pedronissome of it is just the nature20:32
pedronisof splitting tasks between the two20:32
pedronissome of it could be reconciled20:32
pedroniszyga: anyway that Get skips if there's an error20:35
zygayes20:35
pedronisso whatever the issue is not explosive20:35
zygabut not sure if it should, I don't know when that may legally happen20:35
pedronisand has been there since long20:35
zygayes, we made it non-explosive20:35
pedroniszyga: I don't think we can tackle that one now20:35
zygatesting my WIP patch20:37
zygaI security-revision is stored, now running the script20:37
zygait didn't work20:38
zygasomewhere when we remove profiles20:38
zygawe reset the revision20:38
zygaand then restart must happen after that time20:38
zygakwi 04 22:38:00 t470 snapd[3451]: 2018/04/04 22:38:00.605460 snapstate.go:1714: DEBUG: skipping inactive snap lxd with snap state &snapstate.SnapState{SnapType:"app", Sequence:[]*snap.SideInfo{(*snap.SideInfo)(0xc4200b5100), (*snap.SideInfo)(0xc4200b5180), (*snap.SideInfo)(0xc4200b5200)}, Active:false, Current:snap.Revision{N:6492}, SecurityProfilesRevision:snap.Revision{N:0}, Channel:"edge", Flags:snapstate.Flags{DevMode:false,20:39
zygaJailMode:false, Classic:false, TryMode:false, Revert:false, RemoveSnapPath:false, IgnoreValidation:false, Required:false, SkipConfigure:false, Unaliased:false, Amend:false}, Aliases:map[string]*snapstate.AliasTarget{"lxc":(*snapstate.AliasTarget)(0xc4204f5120)}, AutoAliasesDisabled:false, AliasesPending:true, UserID:0}20:39
zygaSecurityProfilesRevision is zero20:39
pedronisbut then we will do setup-profiles20:39
pedronisis setup-profiles not doing enough?20:40
zyganot sure I understand20:41
pedronisthe theory was that we did setup-profiles but not link-snap20:41
pedronisbut here we didn't do setup-profiles20:41
pedronisotherwise profile revision would be set20:41
zygawe did, I refreshed lxd manually a few times and used jq to read the profile revision from the state20:42
zygaI probably don't understand the refresh logic well enough20:42
zygaand when we unlink the old snap we remove its profiles20:42
zygaand that resets the revision20:42
zygaand then if we restart we are in a bad state20:42
zyga(maybe)20:43
zygathat's just me guessing now20:43
pedronisbut that's always been like that20:43
pedronisalso afair we don't do that20:43
zygathis is interesting20:43
zygahttps://www.irccloud.com/pastebin/t1zwTx1t/20:43
zygawe setup profiles for lxd20:43
zyga(probably don't finish)20:44
zygathen core restarts20:44
pedronisonly  Remove  and Disable remove-profiles20:44
zygaso we never set it20:44
zygaah, maybe my patch is wrong then20:44
zygaI patched it so that doRemoveProfiles resets the revision to zero20:44
zygamaybe it's called in other places20:44
* zyga looks20:44
zygaactually, removeSnapSecurity20:45
zygawhich is only called from removeProfilesForSnap20:45
pedronisyou should do things close to where20:45
pedroniswe do AddSnap20:45
pedronisand RemoveSnap from repo20:46
zygayeah20:46
zygatweaking20:48
pedronisnot that I see other places calling removeSnapSecurity20:49
zygaquick diff20:50
zygahttps://github.com/snapcore/snapd/compare/master...zyga:fix/reload-repo-inactive-snaps?expand=120:50
zygaah20:50
zygawrong, didn't push20:50
zyganow it's correct20:51
zygawell, up-to-date20:51
cachiomvo, same in pi220:54
cachioit works fine20:54
Caelumzyga: fantastic, so now we can say we have a fully working snapd for opensuse :D20:56
pedroniszyga: it looks reasonable,  are we missing something obvious?20:57
zygaCaelum: we need to add snapd to factory and package gnome-software extensions20:57
zygapedronis: testing it now20:57
pedronis(apart that we cannot use SnapState but that's for install)20:57
zygayes20:57
zygafingers crossed20:57
Caelumzyga: of course there is always more stuff to do20:57
zygahmm hmm hmm20:58
zygapedronis: it still didn't store the rev20:58
zygaon refresh it gets reset to zero20:58
Caelumzyga: the web page didn't get rebuilt yet btw, but I guess that happens in some cron job20:58
zygamaybe the Get's I added just fail20:58
zygaCaelum: if it's not refreshed tomorrow I will poke people for a rebuild20:59
Caelumgreat20:59
Caelumshould I start playing with 42.1 in my branch to get ready for 42.2 ?20:59
pedroniszyga: you should probably log from the places you are setting/resetting it20:59
zygayes, patching now20:59
CaelumI mean 32.121:00
Caelumand you already released 32.2, that's the one you wanted to update to?21:00
zygaCaelum: 32 is a troubled child :)21:01
cachiomvo https://paste.ubuntu.com/p/fqBtRBsX33/21:01
zygaCaelum: we have some issues to work through21:01
zygaI think 2.32.4 will be good21:01
zygapedronis: nope21:07
zygawhatever is happening I'm losing the securityt profiles revision21:07
zygaI added logging21:08
zygais the state overwritten ever without loading?21:08
pedroniswe are setting it?21:08
zygaye21:08
zygayes, it's set21:08
pedronisand not resetting it?21:08
zygaalso seen in jq21:08
zygawe are not unsetting it21:09
zygaunless I made a silly bug in the code21:09
mvocachio: looks like no issues there21:09
zygaI get the state from the task21:09
zygathen get, update and set the snap state21:09
pedronisseen in jq?21:09
mupPR snapd#4984 closed: ifacestate: inject autoconnect (#4981) <Critical> <Created by mvo5> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/4984>21:10
pedronisseen in jq set?21:10
zygayes, I see both the revision (before running bug.sh) and unset in jq21:10
zygayes21:10
zygaI snap refresh --edge lxd; then same to --stalbe21:10
zygastable21:10
zygaand that sets it21:10
zyga(using my hacked edge core)21:10
zygathen refresh core, lxd to stable and back to edge21:10
zygaand it is gone21:10
pedroniswell, stable will write is stuff21:10
pedronisand lose that no?21:10
zygaoverwrite !21:10
zygaoh21:10
zygadrat21:10
zygaso yeah21:10
zygawe need a new map21:11
pedronis?21:11
zygabut this is also scary21:11
pedroniswe cannot fix the bug in stable21:11
zygayes yes, my point is that old snapd overwrites and discards this data21:11
zygaand it's not great21:11
pedroniswe need a map21:11
pedronisanyway21:11
zygait's one to have a field and not use it21:11
pedronisbut in general we cannot fix the bug for stable21:11
zygaand another to overwrite and remove a field21:11
zygasure, I just didn't expect stable to erase this21:12
zygabut yeah21:12
zygaok21:12
zygaI think I need to EOD now21:12
pedronisstable will still not do the right thing21:12
zygatoo tired and too much hectic stuff at home21:12
zygaI will use a new map tomorrow and test this21:12
zygaif this is fine I will write proper tests for everything21:12
zygahow shall we call it?21:12
zygarepostate?21:12
pedronisthe question whether, we will need more bits?21:13
pedronisI mean should be start from day 021:13
zyga8ball21:13
pedroniswith    name -> struct21:13
pedronisor only name -> revision21:13
zygaI'd go struct21:13
zygabut with the problem of destructive updates21:13
zygait's probably irrelevant21:13
zygabut I'd go with struct anyway21:14
zygaeasier to code and nicer21:14
zygarepostate[snapName].Revision21:14
pedronissecurity-profiles-state ?21:14
zygaifacestate? to tie this into the interface manager (iface-state)21:15
zyganot sure21:15
zygawe can rename it tomorrow :)21:15
zygamvo: I'm EODing21:16
zygalet's regroup tomorrow21:16
zygathank you for the insight tonight pedronis, it was invaluable21:17
mvozyga: yeah21:17
mvozyga: I think we need the revert21:17
zygayes21:17
zygalet's revert, my +1 goes there21:17
mvocachio: can you please run some more tests, ideally a "snap refresh --revision=4206 core" and some spread testing with such a setup? I think we need to revert tomorrow21:18
zyganot sure if you want to do it tonight21:18
zygaif we need to ack from store21:18
mvozyga, pstolowski|afk unless I did something wrong in my tests the inject-task is not fully working: https://paste.ubuntu.com/p/BxmxD3VFCD/21:18
mvozyga, pstolowski|afk "2018-04-04T23:11:59+02:00 INFO cannot auto-connect plug lxd:lxd-support to core:lxd-support: no state entry for key"21:19
mvozyga, pstolowski|afk lets talk more tomorrow21:20
zygano state entry for key :/21:20
zygaErrNoState21:20
zygasucks to be us today21:20
zygattyl21:20
pedronismvo: I think it's probably inserted in the wrong place :/21:21
pedronismvo: pstolowski|afk:  yes,  for a snap that is not core, it needs to come after link-snap21:23
pedronisnot after setup-profiles21:23
pedronissee doInstall code21:23
pstolowski|afkoh my21:26
pstolowski|afkmvo thanks for the test... it's a shame a spread test wasnt possible21:30
geekgonecrazyHey guys.. does anyone know if the nodejs part has been updated recently?21:53
geekgonecrazyI've used the nodejs part for a while, and suddenly its started giving me this error:21:54
geekgonecrazyFailed to run 'npm ls --global --json' for 'node': Exited with code 1. Verify that the part is using the correct parameters and try again.21:54
geekgonecrazyeven for builds that previously succeeded on launchpad21:54
=== Guest20669 is now known as devil_
kyrofageekgonecrazy, do you specify a node version?22:18
geekgonecrazykyrofa: yup, otherwise mass chaos in Rocket.Chat :D22:20
geekgonecrazyunfortunately very tied to node.js versions at times22:20
geekgonecrazytrying to locate the `npm ls --global --json` because I can't recall that ever being run when I do `npm install` locally22:21
geekgonecrazySo my assumption was it was in the nodejs part somewhere maybe?22:22
kyrofageekgonecrazy, when was your most recent successful build?22:24
geekgonecrazylast night.  Looking at the wiki page for the parts best I can tell last time it was updated was the 1st22:25
vidal72[m]zyga: to disable abstract socket add "-nolisten local" to X server arguments. Most display managers already add "-nolisten tcp"22:25
zygathanks22:25
kyrofaHuh, so it doesn't involve the snapcraft update from last week22:25
kyrofaI'm not familiar with the nodejs part22:26
kyrofaThat could be it22:26
kyrofaMaybe reach out to the maintainer?22:26
diddledanwell this is intriguing. I appear to have managed to get snapcraft into an infinite loop somewhere at "preparing to build desktop-gtk2" - it's sat there using 100% of a cpu core22:27
geekgonecrazykyrofa: any way via snapcraft command to see maintainer?  I might just manually install node.js as a less ideal workaround.22:27
kyrofageekgonecrazy, wait... I don't see a nodejs part :P22:28
kyrofadiddledan, go away, my day was good22:28
diddledan:-p22:28
* diddledan cuddles kyrofa 22:28
geekgonecrazykyrofa: I didn't see one via that page, but i'm some how using one :D22:28
kyrofageekgonecrazy, let me take a look at your yaml22:29
geekgonecrazykyrofa: don't judge too much :D https://github.com/RocketChat/Rocket.Chat/blob/develop/.snapcraft/snapcraft.yaml22:30
geekgonecrazyoh duh.. plugin not part22:31
diddledanoh ello. it finished22:33
diddledanwasn't an infinite loop then, just a veeeery slow install22:33
diddledanmaybe it's my ISP - they've been battling a DDoS the past few days22:34
popeyah yeah, desktop helpers can be a bit slow22:34
diddledanthis is on the building of the snap, rather than initial launch, popey , so I'm assuming my net connection was taking forever for snapcraft to fetch the needed bits to work out how to build22:35
popeyyes22:35
popeybuilding can be slow too22:35
diddledanaah22:35
diddledanok22:35
* zyga will start later tomorrow22:35
zygaI cannot even sleep now with all the snapd state in my head22:36
diddledanyou should share states with someone else ;-p22:39
diddledanshared state is so much more reliable, right? :-D22:39
geekgonecrazykyrofa: btw its non-working with node-engine: 8.9.4 (which used to work) It might be something on our side.. Maybe I need to force a newer version of npm to be installed with that older version of node22:39
Chipacazyga: hey22:40
=== mwhudson_ is now known as mwhudson
geekgonecrazykyrofa: looks like its: https://github.com/snapcore/snapcraft/blob/master/snapcraft/plugins/nodejs.py#L250 that for some reason with node.js 8.9.4 isn't working.  Not sure why now.  Is there any way to use the nodejs plugin and keep it from doing the npm install? :D22:47
diddledanomg!!!!!!! irccloud 0.6.0 lets you connect to slack channels!!! p.s. irccloud 0.6.0 works in a snap22:48
* diddledan pokenprod popey 22:49
diddledanPR incoming!22:49
naccdiddledan: iirc, slack is discontinuing the irc gateway22:49
naccpretty soon, at that22:49
popeydiddledan: srsly?22:49
popeyno more chmod nonsense?22:49
diddledannope, the new core fixes it by making it an EPERM rather than SIGKILL22:50
popeyOh yes, time for a daily hug for jdstrand22:50
jdstrand\o/22:50
* jdstrand hugs popey 22:50
diddledannacc: it works with a connector installed in slack. i.e. it does not use the IRC gateway22:51
popeywow funky22:51
naccdiddledan: oh interesting!22:51
diddledanyou need an admin of each slack workspace to enable the plugin tho22:52
naccdiddledan: ah22:52
popeylooking forward to the pr :)22:52
kyrofageekgonecrazy, sorry, phone call22:54
kyrofageekgonecrazy, yeah, that hasn't changed for quite some time22:54
diddledanwell fooey.. my irccloud desktop repo isn't linked23:04
diddledanpopey: https://github.com/snapcrafters/irccloud-desktop/pull/623:06
mupPR snapcrafters/irccloud-desktop#6: update to irccloud 0.6.0 <Created by diddledan> <https://github.com/snapcrafters/irccloud-desktop/pull/6>23:06
diddledanaah. the icon doesn't appear23:09
mupPR snapcraft#2049 opened: many: add override-stage scriptlet <Created by kyrofa> <https://github.com/snapcore/snapcraft/pull/2049>23:43
geekgonecrazykyrofa: thanks for taking a look.  Went ahead and just did the whole manual node.js install.  For what ever reason that step where it does npm ls --global --json in combination with one of our npm dependencies... just blows up23:56

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