lp:~mvo/snapd/+git/snapd-mvo

Owned by Michael Vogt
Get this repository:
git clone https://git.launchpad.net/~mvo/snapd/+git/snapd-mvo

Import details

Import Status: Reviewed

This repository is an import of the Git repository at https://github.com/mvo5/snappy.

The next import is scheduled to run in 1 hour.

Last successful import was 4 hours ago.

Import started 4 hours ago on izar and finished 4 hours ago taking 50 seconds — see the log
Import started 10 hours ago on alnitak and finished 10 hours ago taking 50 seconds — see the log
Import started 16 hours ago on izar and finished 16 hours ago taking 50 seconds — see the log
Import started 22 hours ago on alnitak and finished 22 hours ago taking 50 seconds — see the log
Import started on 2019-04-21 on alnitak and finished on 2019-04-21 taking 50 seconds — see the log
Import started on 2019-04-20 on izar and finished on 2019-04-20 taking 50 seconds — see the log
Import started on 2019-04-20 on izar and finished on 2019-04-20 taking 50 seconds — see the log
Import started on 2019-04-20 on alnitak and finished on 2019-04-20 taking 40 seconds — see the log
Import started on 2019-04-20 on izar and finished on 2019-04-20 taking 50 seconds — see the log
Import started on 2019-04-19 on izar and finished on 2019-04-19 taking 50 seconds — see the log

Branches

Name Last Modified Last Commit
release-2.39.pre1 2019-04-18 16:27:25 UTC 2019-04-18
packaging: release 2.39~pre1

Author: Michael Vogt
Author Date: 2019-04-18 16:27:25 UTC

packaging: release 2.39~pre1

increase-timeout 2019-04-18 14:58:59 UTC 2019-04-18
tests: extend timeout of sbuild test

Author: Michael Vogt
Author Date: 2019-04-18 14:58:56 UTC

tests: extend timeout of sbuild test

We see failures of the sbuild test sometimes, this PR extends
the kill timeout from the default spread 15m to 30min.

remodel-switch-kernel-2 2019-04-18 12:50:12 UTC 2019-04-18
devicestate: add support to Remodel() to a different kernel

Author: Michael Vogt
Author Date: 2019-04-17 10:28:00 UTC

devicestate: add support to Remodel() to a different kernel

This PR allows to remodel to a different kernel. It will ensure
the kernel matches the new model assertion. It also changes
Remodel() to return a full state.Change() instead of the usual
[]*state.TaskSet(). The reason is that a Remodel() cannot be
composed with other changes and also because we need special
data (like the new model assertion) on the change.

command-from-snapd-2 2019-04-18 07:33:42 UTC 2019-04-18
cmdutil: move osutil.CommandFromCore to cmdutil.CommandFromSystemSnap

Author: Michael Vogt
Author Date: 2019-04-17 20:20:28 UTC

cmdutil: move osutil.CommandFromCore to cmdutil.CommandFromSystemSnap

The osutil.CommandFromCore is not in the rightplace and it also does
not take the snapd snap into account. This commit moves it to the
cmd/cmdutil package (cannot be in cmd because of an import cycle
with cmd/snapinfo.go).

It also tweaks the arguments slightly (no need to pass the
snapMountDir anymore).

core16-core-test-fix 2019-04-17 14:25:29 UTC 2019-04-17
tests: disable core16-provided-by-core on core18 for now

Author: Michael Vogt
Author Date: 2019-04-17 14:25:29 UTC

tests: disable core16-provided-by-core on core18 for now

remodel-v0-edge-with-err 2019-04-17 14:18:59 UTC 2019-04-17
state: simplify TestTaskSetEdge test

Author: Michael Vogt
Author Date: 2019-04-17 14:18:59 UTC

state: simplify TestTaskSetEdge test

required-means-required 2019-04-17 11:13:22 UTC 2019-04-17
tests: fix remodel test

Author: Michael Vogt
Author Date: 2019-04-17 09:33:24 UTC

tests: fix remodel test

remodel-switch-kernel 2019-04-17 10:28:04 UTC 2019-04-17
devicestate: allow installing a new kernel on Remodel()

Author: Michael Vogt
Author Date: 2019-04-17 10:28:00 UTC

devicestate: allow installing a new kernel on Remodel()

remodel-v0-do-update-edges 2019-04-17 07:44:00 UTC 2019-04-17
Merge remote-tracking branch 'upstream/master' into remodel-v0-do-update-edges

Author: Michael Vogt
Author Date: 2019-04-17 07:44:00 UTC

Merge remote-tracking branch 'upstream/master' into remodel-v0-do-update-edges

master 2019-04-17 07:43:18 UTC 2019-04-17
Merge pull request #6603 from mvo5/remodel-v0-do-update-no-rerefresh

Author: Michael Vogt
Author Date: 2019-04-17 07:43:18 UTC

Merge pull request #6603 from mvo5/remodel-v0-do-update-no-rerefresh

 snapstate: add new NoReRefresh flag and use in Remodel()

core-core16 2019-04-16 19:16:56 UTC 2019-04-16
tests: fix incorrect indent in core16-provided-by-core test

Author: Michael Vogt
Author Date: 2019-04-16 19:16:56 UTC

tests: fix incorrect indent in core16-provided-by-core test

remodel-v0-do-update-no-rerefresh 2019-04-16 15:55:24 UTC 2019-04-16
overlord: update doc strings based on review feedback

Author: Michael Vogt
Author Date: 2019-04-16 15:55:24 UTC

overlord: update doc strings based on review feedback

run-livepatch-harder 2019-04-16 13:04:16 UTC 2019-04-16
tests: run livepatch on 18.04 as well

Author: Michael Vogt
Author Date: 2019-04-16 13:03:34 UTC

tests: run livepatch on 18.04 as well

The canonical-livepatch package is available on 18.04
as well so we should test it there too.

unbreak-master-2 2019-04-16 10:44:23 UTC 2019-04-16
tests: set selinux-clean test to manual for now

Author: Michael Vogt
Author Date: 2019-04-16 07:25:00 UTC

tests: set selinux-clean test to manual for now

The selinux-clean test breaks in master and in the pending PRs
depending on the test order. To ensure other PRs can land this PR
disables it for now and when its debugged we can re-enable.

gcp-now-has-livepatch 2019-04-16 10:43:24 UTC 2019-04-16
tests: update canonical-livepatch now that -gcp kernels are supported

Author: Michael Vogt
Author Date: 2019-04-16 10:40:44 UTC

tests: update canonical-livepatch now that -gcp kernels are supported

The canonical-livepatch test is now failing because -gcp kernels
are not also available for live-patch.

set-selinux-clean-to-manual-for-now 2019-04-16 09:37:55 UTC 2019-04-16
Merge branch 'fix-static-checks' into set-selinux-clean-to-manual-for-now

Author: Michael Vogt
Author Date: 2019-04-16 09:37:55 UTC

Merge branch 'fix-static-checks' into set-selinux-clean-to-manual-for-now

fix-static-checks 2019-04-16 09:35:35 UTC 2019-04-16
tests: do not hardcode go1.10 in travis

Author: Michael Vogt
Author Date: 2019-04-16 08:48:45 UTC

tests: do not hardcode go1.10 in travis

In run-checks we add /usr/lib/go-1.10/bin to the PATH to ensure
that we use the right go version when building on Ubuntu systems
that use the golang-1.10 source package.

However this breaks in travis because we use go1.9 there to ensure
that RHEL (which has 1.9) works correctly. Recently travis added
go1.10 to their images so now the PATH setting actually picks up
go1.10 in the PATH but GOROOT is set to go-1.9 which causes
strange errors like `go tool asm: exit status 2`.

This PR fixes this by only setting the PATH outside of travis.

static-check-fix 2019-04-16 08:43:14 UTC 2019-04-16
travis: add some debug to run-checks

Author: Michael Vogt
Author Date: 2019-04-16 07:50:38 UTC

travis: add some debug to run-checks

disable-selinux-clean 2019-04-16 07:25:52 UTC 2019-04-16
tests: set selinux-clean test to manual for now

Author: Michael Vogt
Author Date: 2019-04-16 07:25:00 UTC

tests: set selinux-clean test to manual for now

The selinux-clean test breaks in master and in the pending PRs
depending on the test order. To ensure other PRs can land this PR
disables it for now and when its debugged we can re-enable.

autopkgtest-no-rebuild 2019-04-12 15:25:48 UTC 2019-04-12
Improve comments and move check to prepare-project

Author: Sergio Cazzolato
Author Date: 2019-04-12 15:25:48 UTC

Improve comments and move check to prepare-project

release-2.38.1 2019-04-11 16:39:24 UTC 2019-04-11
Merge remote-tracking branch 'upstream/master' into release-2.38.1

Author: Michael Vogt
Author Date: 2019-04-11 16:39:24 UTC

Merge remote-tracking branch 'upstream/master' into release-2.38.1

no-pie-on-armhf 2019-04-11 08:11:37 UTC 2019-04-11
packaging: rework disable of -buildmode=pie on 32bit systems

Author: Michael Vogt
Author Date: 2019-04-11 08:11:35 UTC

packaging: rework disable of -buildmode=pie on 32bit systems

Use the dpkg-architecture command to determine if the system
is 32bit and if so do *not* use -buildmode=pie. Also update
the test to look at 32/64 bit instead of using `uname -m`.

remodel-v0-download-install-ordering 2019-04-10 07:27:49 UTC 2019-04-10
state: fix typo

Author: Michael Vogt
Author Date: 2019-04-10 07:27:49 UTC

state: fix typo

user-gdb 2019-04-09 08:16:49 UTC 2019-04-09
tests: add spread test for snap run --gdb as user

Author: Michael Vogt
Author Date: 2019-04-09 08:03:35 UTC

tests: add spread test for snap run --gdb as user

no-pie 2019-04-09 06:20:19 UTC 2019-04-09
packaging: disable -buildmode=pie to fix memory issue on armhf

Author: Michael Vogt
Author Date: 2019-04-09 06:20:19 UTC

packaging: disable -buildmode=pie to fix memory issue on armhf

Building go binaries with -buildmode=pie causes issue on ARM
32bit boards. This was originally reported by a customer and
tracked in LP #1822738.

The issue is that the new GC in 1.7+ allocates a large chunk
of memory (>150Mb in our case) on ARM systems when using
buildmode=pie on the low-memory system where this was observed.

The following happens:
1. We build snap/snapd with -buildmode=pie
2. There is a bug in the malloc.go code in 1.10
3. Because the board this runs on has too little ram the kernel
   relocates it from a relatively low memory start address to a pretty
   high one. Because the GO memory system assumes it initially owns
   all the memory from the point where it start to the start it creates
   a huge GC bitmap memory region.
4. Because the pi2 does have enough ram the kernel does not relocate it
   so we cannot observe the error there.

Using -buildmode=pie is not super important on GO according to
one of the authors:
https://groups.google.com/forum/#!topic/golang-nuts/Jd9tlNc6jUE

refactor-sc-main-6 2019-04-05 09:51:34 UTC 2019-04-05
snap-confine: inv->rootfs_dir must not end with '/'

Author: Michael Vogt
Author Date: 2019-04-05 09:51:32 UTC

snap-confine: inv->rootfs_dir must not end with '/'

The rootfs_dir is also used with "readlink()" which will fail
for something like /snap/core/current/ - so we cannot have the
trailing "/".

create-user-on-core 2019-04-05 09:39:05 UTC 2019-04-05
tests: run create-user on core devices

Author: Michael Vogt
Author Date: 2019-04-04 16:41:00 UTC

tests: run create-user on core devices

The current "snap create-user" test runs on classic only. This
is bad for multiple reasons. The main use-case of this feature
are core devices and we are considering to drop support for this
on classic entirely.

So this PR changes the test to run on core16 now and once the
"shadow" package SRU pending in
https://launchpad.net/ubuntu/+source/shadow/1:4.5-1ubuntu2
is merged we can enable it on core18 too.

test-for-race-fix-8803 2019-04-04 16:52:52 UTC 2019-04-04
Update kill-timeout to 5m

Author: Sergio Cazzolato
Author Date: 2019-04-04 16:52:52 UTC

Update kill-timeout to 5m

This is to make it pass in slow boards

kernel-extract 2019-04-04 08:31:26 UTC 2019-04-04
Merge remote-tracking branch 'upstream/master' into kernel-extract

Author: Michael Vogt
Author Date: 2019-04-04 08:31:26 UTC

Merge remote-tracking branch 'upstream/master' into kernel-extract

shellcheck-mock-madness 2019-04-03 19:24:04 UTC 2019-04-03
testutil: fix MockCmd for shellcheck 0.5

Author: Michael Vogt
Author Date: 2019-04-03 19:19:36 UTC

testutil: fix MockCmd for shellcheck 0.5

With shellcheck 0.5 there is an error that
```
printf "\0"
```
should be use single quotes (SC1117). This PR fixes this.

silly-seeding 2019-04-03 19:11:58 UTC 2019-04-03
image: prefer local for snapd/core snaps

Author: Michael Vogt
Author Date: 2019-04-03 18:42:33 UTC

image: prefer local for snapd/core snaps

There is a bug in the current image code when using "snapd" with
--extra-snaps it will not use the local snapd snap but the store
one. This PR fixes this.

systemctl-writable-core18-lp1778936 2019-04-01 10:14:52 UTC 2019-04-01
Merge remote-tracking branch 'upstream/master' into systemctl-writable-core18...

Author: Michael Vogt
Author Date: 2019-04-01 10:14:52 UTC

Merge remote-tracking branch 'upstream/master' into systemctl-writable-core18-lp1778936

unblock-master-18.04 2019-04-01 09:12:49 UTC 2019-04-01
tests/lib/prepare-restore: further tweak snapd package purge

Author: Maciej Borzecki
Author Date: 2019-04-01 09:12:49 UTC

tests/lib/prepare-restore: further tweak snapd package purge

On some distros, attempting to purge a package that does not exist may fail.
Make sure we purge snapd only where we know it's preinstalled, but make sure
that there are no signs of snapd on other systems too.

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>

fontconfig-from-snapd-snap 2019-03-28 10:41:47 UTC 2019-03-28
snapcraft: build static fontconfig in the snapd snap

Author: Michael Vogt
Author Date: 2019-03-28 09:56:49 UTC

snapcraft: build static fontconfig in the snapd snap

Just like for the core snap we now build a static version of
fc-cache-v{6,7} for the snapd snap.

snap-confine-from-snapd-snap 2019-03-28 09:24:16 UTC 2019-03-28
Merge remote-tracking branch 'upstream/master' into snap-confine-from-snapd-snap

Author: Michael Vogt
Author Date: 2019-03-28 09:24:16 UTC

Merge remote-tracking branch 'upstream/master' into snap-confine-from-snapd-snap

release-2.38 2019-03-25 16:36:45 UTC 2019-03-25
Merge remote-tracking branch 'upstream/master' into release-2.38

Author: Michael Vogt
Author Date: 2019-03-25 16:36:45 UTC

Merge remote-tracking branch 'upstream/master' into release-2.38

dbus-snapd 2019-03-22 10:34:10 UTC 2019-03-22
interfaces: ensure setupDbusServiceForUserd prefers the snapd snap

Author: Michael Vogt
Author Date: 2019-03-22 10:34:08 UTC

interfaces: ensure setupDbusServiceForUserd prefers the snapd snap

When both the core and the snapd snap are installed we need to
prefer the snapd snap or the content of the userd service file
will flip-flop.

remodel-v0-with-api 2019-03-14 10:52:43 UTC 2019-03-14
cmd/snap: improve remodel long help

Author: John Lenton
Author Date: 2019-03-14 10:52:43 UTC

cmd/snap: improve remodel long help

autopkgtest-do-less 2019-03-13 09:26:22 UTC 2019-03-13
simplify further

Author: Michael Vogt
Author Date: 2019-03-13 09:26:22 UTC

simplify further

test-bad-service-refresh 2019-03-11 16:53:22 UTC 2019-03-11
tests: add undo test with hanging stop command

Author: Michael Vogt
Author Date: 2019-03-11 16:35:49 UTC

tests: add undo test with hanging stop command

While debugging a hanging change I noticed that we lack some tests
related to the undo handling of bad services. This PR adds two
new tests:
1. A snap where the new snap service is broken and the refresh breaks
   the old snap service as well
2. A snap where the stop command takes forever

remove-v0-enough-to-upgrade-uc16-uc18 2019-03-11 15:54:51 UTC 2019-03-11
WIP experiment to show UC16->UC18 upgrade

Author: Michael Vogt
Author Date: 2019-03-11 15:54:51 UTC

WIP experiment to show UC16->UC18 upgrade

remove-v0-download-install-ordering 2019-03-08 10:50:12 UTC 2019-03-08
many: make Remodel() download everything first before installing

Author: Michael Vogt
Author Date: 2019-03-07 17:09:19 UTC

many: make Remodel() download everything first before installing

For remodel we cannot assume that we have network access during
the operation. Some remodeling may switch to a different way of
managing the network or similar. This means we need to order the
wait chains in the remodel task so that all downloads and checks
for assertions happen first and the actual install operations
(that do not require network) happen after this.

This PR implements this by taking the TaskSet from Install() or
Update() and marking the "check-assertions" task with a new
TaskEdge marker. This way devicestate can split the taskset on
this marker and adjust the wait chains accordingly.

remove-v0-no-edges 2019-03-08 09:11:30 UTC 2019-03-08
remodel wiring without edges

Author: Michael Vogt
Author Date: 2019-03-07 17:27:11 UTC

remodel wiring without edges

remodel-v0-task-edges 2019-03-07 17:09:19 UTC 2019-03-07
implement download/install separation with taskedges

Author: Michael Vogt
Author Date: 2019-03-07 17:09:19 UTC

implement download/install separation with taskedges

remodel-v0-download-first 2019-03-07 12:08:12 UTC 2019-03-07
snapstate: start untangle Install() into download/install

Author: Michael Vogt
Author Date: 2019-03-07 11:32:13 UTC

snapstate: start untangle Install() into download/install

remodel-v0 2019-03-07 09:07:55 UTC 2019-03-07
Merge remote-tracking branch 'upstream/master' into remodel-v0

Author: Michael Vogt
Author Date: 2019-03-07 09:07:55 UTC

Merge remote-tracking branch 'upstream/master' into remodel-v0

kill-obsolte-license 2019-03-06 19:03:35 UTC 2019-03-06
Merge remote-tracking branch 'upstream/master' into kill-obsolte-license

Author: Michael Vogt
Author Date: 2019-03-06 19:03:35 UTC

Merge remote-tracking branch 'upstream/master' into kill-obsolte-license

ensure-snapd-transition 2019-03-06 19:01:50 UTC 2019-03-06
address review feedback

Author: Michael Vogt
Author Date: 2019-03-06 19:01:50 UTC

address review feedback

less-revs-on-classic 2019-03-06 10:47:58 UTC 2019-03-06
Merge remote-tracking branch 'upstream/master' into less-revs-on-classic

Author: Michael Vogt
Author Date: 2019-03-06 10:47:58 UTC

Merge remote-tracking branch 'upstream/master' into less-revs-on-classic

unbreak-master2 2019-03-06 09:08:49 UTC 2019-03-06
tests: check that apt works before using it

Author: Michael Vogt
Author Date: 2019-03-06 07:58:34 UTC

tests: check that apt works before using it

The lxd test is using apt unconditionally even on core devices.

Nowdays the apt wrapper on core devices will error when run so
the lxd test needs an update to ensure it only uses apt if apt
is actually usable.

The ubuntu-core-apt test also needs an update to check that
the exit code is correct.

fix-snapd-snap-restart-handling 2019-03-04 14:52:41 UTC 2019-03-04
snapstate: checking that "snapd" has a valid snapstate is enough

Author: Michael Vogt
Author Date: 2019-03-04 14:52:37 UTC

snapstate: checking that "snapd" has a valid snapstate is enough

When we check in snapdSnapInstalled() if snapd is available it's
enough if we can load the snapstate of the "snapd" snap without
error to know that its installed.

release-2.37.4 2019-02-27 20:10:37 UTC 2019-02-27
Merge remote-tracking branch 'upstream/master' into release-2.37.4

Author: Michael Vogt
Author Date: 2019-02-27 20:10:37 UTC

Merge remote-tracking branch 'upstream/master' into release-2.37.4

fix-disconnect-upgrade-from-215-2.37 2019-02-27 09:23:06 UTC 2019-02-27
overlord/ifacestate: fix migration of connections on upgrade from ubuntu-core...

Author: Paweł Stołowski
Author Date: 2019-02-27 09:08:48 UTC

overlord/ifacestate: fix migration of connections on upgrade from ubuntu-core (#6530)

The connections migration code for ubuntu-core -> core transition migrates connections stored in "conns" from ubuntu-core to core and reloads connections in the repo (via reloadConnections helper). It hower incorrectly calls reloadConnections for "ubuntu-core" snap under the assumption that reloadConnections takes care of full synchronization of conns -> repo and removes non-existing connections, which is not the case. So as a result we end up with correct "conns" but incorrect repo with for both "core" and "ubuntu-core" connection. This causes an error when we run "auto-disconnect" task on "ubuntu-core" removal - see https://paste.ubuntu.com/p/FcK6mx2SwZ/
The spread test updated with this PR uncovers the problem and reports the failure of migration without the fix (thanks Michael).

The fix explicitely removed connections of "ubuntu-core" from the repo as part of migration task, so that "conns" and "repo" are in sync.

fix-disconnect-upgrade-from-215 2019-02-27 09:19:45 UTC 2019-02-27
overlord/ifacestate: fix migration of connections on upgrade from ubuntu-core...

Author: Paweł Stołowski
Author Date: 2019-02-27 09:08:48 UTC

overlord/ifacestate: fix migration of connections on upgrade from ubuntu-core (#6530)

The connections migration code for ubuntu-core -> core transition migrates connections stored in "conns" from ubuntu-core to core and reloads connections in the repo (via reloadConnections helper). It hower incorrectly calls reloadConnections for "ubuntu-core" snap under the assumption that reloadConnections takes care of full synchronization of conns -> repo and removes non-existing connections, which is not the case. So as a result we end up with correct "conns" but incorrect repo with for both "core" and "ubuntu-core" connection. This causes an error when we run "auto-disconnect" task on "ubuntu-core" removal - see https://paste.ubuntu.com/p/FcK6mx2SwZ/
The spread test updated with this PR uncovers the problem and reports the failure of migration without the fix (thanks Michael).

The fix explicitely removed connections of "ubuntu-core" from the repo as part of migration task, so that "conns" and "repo" are in sync.

fix-snapweb-2.37 2019-02-25 08:12:18 UTC 2019-02-25
tests: remove snapweb from tests

Author: Michael Vogt
Author Date: 2019-02-23 17:44:27 UTC

tests: remove snapweb from tests

We use the snapweb snap in various tests. The package is now
unpublished from the store and thus the tests break. We really
don't want this package anymore.

fix-snapweb 2019-02-23 17:44:27 UTC 2019-02-23
tests: remove snapweb from tests

Author: Michael Vogt
Author Date: 2019-02-23 17:44:27 UTC

tests: remove snapweb from tests

We use the snapweb snap in various tests. The package is now
unpublished from the store and thus the tests break. We really
don't want this package anymore.

ims-interface 2019-02-21 07:58:16 UTC 2019-02-21
Merge remote-tracking branch 'upstream/master' into ims-interface

Author: Michael Vogt
Author Date: 2019-02-21 07:58:16 UTC

Merge remote-tracking branch 'upstream/master' into ims-interface

active-task-times 2019-02-20 10:13:56 UTC 2019-02-20
tests/main/snap-debug-timings: it's no longer change-timings

Author: John Lenton
Author Date: 2019-02-20 10:13:56 UTC

tests/main/snap-debug-timings: it's no longer change-timings

unbreak-disco 2019-02-19 12:40:15 UTC 2019-02-19
packaging: remove 0008-snap-squashsh-skip-TestBuildDate-on-Debian.patch

Author: Michael Vogt
Author Date: 2019-02-19 12:40:15 UTC

packaging: remove 0008-snap-squashsh-skip-TestBuildDate-on-Debian.patch

release-2.37.3 2019-02-19 09:10:46 UTC 2019-02-19
Merge remote-tracking branch 'upstream/master' into release-2.37.3

Author: Michael Vogt
Author Date: 2019-02-19 09:10:46 UTC

Merge remote-tracking branch 'upstream/master' into release-2.37.3

unbreak-trusty 2019-02-17 17:08:46 UTC 2019-02-17
tests: disable trusty-proposed for now

Author: Michael Vogt
Author Date: 2019-02-17 17:08:34 UTC

tests: disable trusty-proposed for now

We need to disable trusty-proposed because there is an inconsistency
in the trusty-proposed archive that leads to the following error:
$ sudo apt install inux-generic-lts-xenial
inux-generic-lts-xenial : Depends: linux-image-generic-lts-xenial (= 4.4.0.143.124) but 4.4.0.141.121 is to be installed

fix-upgrade-test 2019-02-15 17:58:29 UTC 2019-02-15
tests: fix upgrade-from-2.15 with kernel 4.15

Author: Michael Vogt
Author Date: 2019-02-15 15:09:19 UTC

tests: fix upgrade-from-2.15 with kernel 4.15

snapd version 2.15 will not work with kernels newer than
4.4 because later kernels require snap-exec to be mmapable.
This PR adds the missing rule manually.

debhelper-oh-please 2019-02-14 18:12:14 UTC 2019-02-14
Merge remote-tracking branch 'upstream/master' into debhelper-oh-please

Author: Michael Vogt
Author Date: 2019-02-14 18:12:14 UTC

Merge remote-tracking branch 'upstream/master' into debhelper-oh-please

disable-names 2019-02-14 17:09:15 UTC 2019-02-14
tests: stop catalog-update/apt-hooks test for now

Author: Michael Vogt
Author Date: 2019-02-14 15:25:45 UTC

tests: stop catalog-update/apt-hooks test for now

The store is unhappy currently and won't answer to requests for
names. So this test always fails. Once the store is happy again
we can re-enable this test.

active-task-time 2019-02-13 08:44:22 UTC 2019-02-13
many: collect time each task runs and display with `snap change <id>`

Author: Michael Vogt
Author Date: 2019-02-13 08:44:22 UTC

many: collect time each task runs and display with `snap change <id>`

This PR imports the changes from Maciej that measures how much time
each task taskes to run. This data is stored in the state and can
be displayed via `snap change <id>`. E.g.:
```
$ snap change 563
Status Spawn Ready Active Summary
Done today at 09:28 CET today at 09:29 CET 13ms Stop snap "test-snapd-tools" (6) services
Done today at 09:28 CET today at 09:29 CET 39ms Remove aliases for snap "test-snapd-tools"
Done today at 09:28 CET today at 09:29 CET 27ms Make snap "test-snapd-tools" (6) unavailable to the system
Done today at 09:28 CET today at 09:29 CET 10ms Remove security profiles of snap "test-snapd-tools"
```
This is a first (baby) step towards measuring where we spend time
in e.g. firstboot seeding and where we need to optimize.

Thanks to Maciej Borzecki and Zygmunt Krynicki which wrote most of
this code.

help_url2 2019-02-12 12:19:49 UTC 2019-02-12
tests/main/xdg-open-compat: fix the test to do as advertised

Author: Maciej Borzecki
Author Date: 2019-01-30 14:53:19 UTC

tests/main/xdg-open-compat: fix the test to do as advertised

The xdg-open-compat test has been broken since the core snap started shipping
xdg-open that actually talks to io.snaocraft.Launcher via `snapctl user-open`.
Because of this, the actual com.canonical.SafeLauncher interface was never
accessed, and the test ended up just redoing what xdg-open test does.

Attempt to fix the test by calling com.canonical.SafeLauncher diirectly via
dbus-send.

Also, snapd-xdg-open does not allow help: scheme, make sure that we account for
that in the test.

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>

improve-generator-test 2019-02-11 16:17:13 UTC 2019-02-11
tests: improve snaps-system-env test

Author: Michael Vogt
Author Date: 2019-02-11 16:11:32 UTC

tests: improve snaps-system-env test

In 18.04 we had a regression when we installed the snapd systemd
environment generator. Installing it caused LP: #1814355 and
the PATH for systemd services looked suddently like:
```
   /sbin:/usr/sbin:/bin:/usr/bin:/snap/bin
```
instead of the expected:
```
   /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
```

A better test that checked the *full* expected PATH instead of just
the addition of :/snap/bin would have caught this regression.

This PR adds the test for the full PATH now.

rm-aa-profile-snap-cofine-harder 2019-02-08 09:48:30 UTC 2019-02-08
debian: ensure leftover usr.lib.snapd.snap-confine is gone

Author: Michael Vogt
Author Date: 2019-02-08 09:41:22 UTC

debian: ensure leftover usr.lib.snapd.snap-confine is gone

In commit 0dce4704a5d (2017-03-28, snapd v2.23.6) we renamed
/etc/apparmor.d/usr.lib.snap-confine to usr.lib.snap-confine.real
to fix LP: #1673247 - however some people (upgrades?) still have
the old usr.lib.snap-confine file. This seems to be loaded instead
of the correct usr.lib.snap-confine.real profile. To fix this we
use the rather blunt approach to remove the file forcefully if
it is unchanged.

import-debian-salsa-zyga 2019-02-08 08:09:57 UTC 2019-02-08
releasing package snapd version 2.37.2-1

Author: Michael Hudson-Doyle
Author Date: 2019-02-07 08:36:00 UTC

releasing package snapd version 2.37.2-1

smoke-more 2019-02-07 15:38:56 UTC 2019-02-07
Merge remote-tracking branch 'upstream/master' into smoke-more

Author: Michael Vogt
Author Date: 2019-02-07 15:38:56 UTC

Merge remote-tracking branch 'upstream/master' into smoke-more

release-2.37.2 2019-02-06 09:28:07 UTC 2019-02-06
Merge remote-tracking branch 'upstream/master' into release-2.37.2

Author: Michael Vogt
Author Date: 2019-02-06 09:28:07 UTC

Merge remote-tracking branch 'upstream/master' into release-2.37.2

allow-non-classic-with-classic-2.37 2019-02-06 08:05:11 UTC 2019-02-06
cmd_snap_op: do not use esc.bold (not available yet in 2.37)

Author: Michael Vogt
Author Date: 2019-02-06 08:05:11 UTC

cmd_snap_op: do not use esc.bold (not available yet in 2.37)

fix-wal-e-harder 2019-02-05 11:54:40 UTC 2019-02-05
snap-confine: remove special handling of /var/lib/jenkins

Author: Michael Vogt
Author Date: 2019-02-04 16:14:50 UTC

snap-confine: remove special handling of /var/lib/jenkins

We added special handling of the jenkins user in dd3c2f4 in
snap-confine by optionally mounting /var/lib/jenkins into the
core snap. However this is only needed to make *confined* snaps
work for the jenkins user which *never* worked.

When trying to run a confined snap (like test-snapd-tools) as
the jenkins user with an older versions of snapd we get the
following message:
```
cannot create user data directory: /var/lib/jenkins/snap/test-snapd-tools/6: Read-only file system
```

So this PR reverts the special handling of jenkins in snap-confine
becuase:
a) its a very special case for something that did not work before
b) it breaks existing users, I got a (private) bugreport that
   people get:
   `cannot perform operation: mount --rbind /var/lib/jenkins`

Note that this does *not* affect classic snaps which keep working
with this change for the special users that have homes in /var/lib.

fix-wal-e-2.37 2019-02-05 07:55:53 UTC 2019-02-05
snap-confine: fix classic snaps for users with /var/lib/* homedirs (#6471)

Author: Michael Vogt
Author Date: 2019-02-05 07:51:52 UTC

snap-confine: fix classic snaps for users with /var/lib/* homedirs (#6471)

When we removed the quirks system in commit [1da9316](https://github.com/snapcore/snapd/commit/1da9316e717d119852b827becb5a17b33713d032) we removed the following apparmor rule as well:

```
     /var/lib/** rw,
```
The unintended side-effect of this change is that we broke snaps
for users with homedirs in /var/lib/ like "postgresql", "jenkins"
and potentially more. They now get the error:

```
cannot create user data directory: /var/lib/postgresql/snap/wal-e/13: Permission denied
```
We added a special case for jenkins which unfortunately is not
enough. This PR makes the snap-confine rule more general which
will unbreak all classic snaps that use /var/lib/* as their
homedir. This will fix the wal-e snap which is classic and needs
to run as the postgresql user to perform its tasks.

We probably still need a followup that deals with confined snaps
like jenkins in a more general manner like the current targeted
jenkins fix.

fix-wal-e 2019-02-04 17:23:33 UTC 2019-02-04
further review feedback

Author: Samuele Pedroni
Author Date: 2019-02-04 17:23:33 UTC

further review feedback

systemd-env-gen-lp1814355 2019-02-04 08:26:30 UTC 2019-02-04
tests/main/snap-system-env: account for /snap/bin missing from PATH in 18.04

Author: Maciej Borzecki
Author Date: 2019-02-04 08:06:45 UTC

tests/main/snap-system-env: account for /snap/bin missing from PATH in 18.04

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>

measures-cmd 2019-02-01 14:55:37 UTC 2019-02-01
measure: add missing lock *cough*

Author: Michael Vogt
Author Date: 2019-02-01 14:55:37 UTC

measure: add missing lock *cough*

snap-measures-cmd 2019-02-01 09:46:23 UTC 2019-02-01
many: add simple performance measure tool mostly for firstboot

Author: Michael Vogt
Author Date: 2019-01-17 08:31:24 UTC

many: add simple performance measure tool mostly for firstboot

This PR adds a very simplisit "measure" module to the tree that
can be used to take measurements of things that take time.

The API is minimal, the intended use (for now) is:
```
func foo() {
   m := measure.New("things happening in foo")
   defer m.Done()
   ...
}
```
The PR adds some measures into the firstboot code but we need to
experiment a bit too see where else we need to measure.

With that there is a new `snap debug measures` command that can
be used to get the most recent measurements.

locking-longer 2019-01-31 12:33:33 UTC 2019-01-31
locking.c: run indent

Author: Michael Vogt
Author Date: 2019-01-31 12:33:33 UTC

locking.c: run indent

locking-2 2019-01-31 12:29:49 UTC 2019-01-31
snap-confine: fix incorrect "sanity timeout 3s" message

Author: Michael Vogt
Author Date: 2019-01-31 12:17:03 UTC

snap-confine: fix incorrect "sanity timeout 3s" message

The code has a log message that says that the timeout is
initialized to 3 seconds. However the code actually uses
6 seconds. This "refactors" things so that timeout and
message stay in sync.

sigalarm 2019-01-31 12:07:32 UTC 2019-01-31
snap-confine: provide proper error message on sc_sanity_timeout

Author: Michael Vogt
Author Date: 2019-01-31 12:07:28 UTC

snap-confine: provide proper error message on sc_sanity_timeout

The code that communicates with the helper process does setup
a "sanity" timeout currently. If that timeout is reached then
snap-confine dies. Unfortunately the error message is misleading
and says "interrupted system call" which does not help finding
the underlying issue.

This PR changes the code so that the timeout is checked before
the read error is printed. This will lead to the slightly better:
```
error: sanity timeout expired
```
which is still not great but it helps to see that this is not
an error in the code but something with the interaction of
snap-confine and its helpers.

perf-count 2019-01-31 11:59:54 UTC 2019-01-31
many: add simple performance logging mostly for firstboot

Author: Michael Vogt
Author Date: 2019-01-17 08:31:24 UTC

many: add simple performance logging mostly for firstboot

trivial-err-drive-by 2019-01-31 08:51:22 UTC 2019-01-31
address review feedback

Author: Michael Vogt
Author Date: 2019-01-31 08:51:22 UTC

address review feedback

parallel-instances-fix-hooks-discovery-2.37 2019-01-31 08:48:38 UTC 2019-01-31
overlord/hookstate: shuffle the test code around

Author: Maciej Borzecki
Author Date: 2019-01-30 13:15:49 UTC

overlord/hookstate: shuffle the test code around

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>

tests-fix-logs-daemon-notify-2.37 2019-01-31 08:45:54 UTC 2019-01-31
Improve check with connected interface

Author: Sergio Cazzolato
Author Date: 2019-01-25 15:34:20 UTC

Improve check with connected interface

arm-illegal 2019-01-30 08:44:41 UTC 2019-01-30
tests: update smoke/sandbox test for armhf

Author: Michael Vogt
Author Date: 2019-01-30 08:44:37 UTC

tests: update smoke/sandbox test for armhf

While running the beta validation on the armhf I noticed that the
behaviour of illegal syscalls is different from the other arches
we have. Most arches just give ENOSYS in errno. However on armhf
the process is killed with SIGILL.

This PR updates the test to account for that.

release-2.37.1 2019-01-29 21:24:59 UTC 2019-01-29
Merge remote-tracking branch 'upstream/master' into release-2.37.1

Author: Michael Vogt
Author Date: 2019-01-29 21:24:59 UTC

Merge remote-tracking branch 'upstream/master' into release-2.37.1

feature/home-for-jenkins-just-fix 2019-01-29 13:54:54 UTC 2019-01-29
cmd/snap-confine: add special case for Jenkins

Author: Zygmunt Krynicki
Author Date: 2019-01-29 10:32:48 UTC

cmd/snap-confine: add special case for Jenkins

The 2.37 release has dropped the "quirk" system responsible for the
special layout of /var/lib. The /var/lib directory was a tmpfs, with
empty directories and bind mount re-creating the original contents of
/var/lib from the base snap. This feature made it possible to mkdir
/var/lib/lxd, which was *not* present in the core snap, and bind mount
it to /var/lib/lxd from the host.

This used to be a part of a backwards compatibility fix for the time
when LXD was installed as a classic package on the host. LXD has since
moved over to a snap and that directory lost any relevance, culminating
with the removal of the quirk system in the 2.37 development cycle.

The removal of the quirk system also removed permissions that
snap-confine used to have, that gave it wide access to /var/lib.
The Jenkins system is often packaged using classic packages. The classic
package adds a "jenkins" user and sets its home directory to
/var/lib/jenkins. A system using Jenkins CI that internally uses snap
commands would invoke snap applications from the context of that user.

This brings us to the problem: snapd doesn't fully support users with
their home directories outside of /home. Due to complexity of the mount
namespace handling and the apparmor based sandbox with path-based
permissions, adding support for arbitrary home directories is
challenging. It was also untested in the snapd CI system.

In 2.36 and earlier, using snaps from the Jenkins user and its home
directory of /var/lib/jenkins only worked by accident, because the quirk
system granted relevant permissions to snap-confine, enabling it to
create $SNAP_USER_DATA directories. With the release of 2.37 we started
observing users reporting that their Jenkins CI systems can no longer
use snap applications.

While support for arbitrary home directories is desirable, it it needs
much more code to enable properly. An isolated special-case for Jenkins
is manageable and allows us to buy more time to explore proper support
for more cases in subsequent releases.

Signed-off-by: Zygmunt Krynicki <me@zygoon.pl>

fix-x-builddeb-harder 2019-01-29 11:53:07 UTC 2019-01-29
snapcraft.yaml: fix XBuildDeb PATH for go-1.10

Author: Michael Vogt
Author Date: 2019-01-29 11:53:07 UTC

snapcraft.yaml: fix XBuildDeb PATH for go-1.10

With the change to golang-1.10 the go binary is no longer in the
PATH. Some tools (like get-deps.sh) need it though. This PR
ensures the PATH is set correctly early enough so that get-deps.sh
can find the "go" binary.

revert-quirks-removal-gh6123-master 2019-01-29 09:45:05 UTC 2019-01-29
Revert "cmd/snap-confine,snap-update-ns: discard quirks"

Author: Michael Vogt
Author Date: 2019-01-29 09:45:05 UTC

Revert "cmd/snap-confine,snap-update-ns: discard quirks"

This reverts commit 1da9316e717d119852b827becb5a17b33713d032.

revert-quirks-removal-gh6123 2019-01-29 09:40:02 UTC 2019-01-29
Revert "cmd/snap-confine,snap-update-ns: discard quirks"

Author: Michael Vogt
Author Date: 2019-01-29 09:40:02 UTC

Revert "cmd/snap-confine,snap-update-ns: discard quirks"

This reverts commit 1da9316e717d119852b827becb5a17b33713d032.

fix-debian-9-2.37 2019-01-29 06:20:15 UTC 2019-01-29
tests/lib/prepare-restore: make the Go workaround Debian 9 specific

Author: Maciej Borzecki
Author Date: 2019-01-28 15:41:46 UTC

tests/lib/prepare-restore: make the Go workaround Debian 9 specific

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>

reexec-from-snapd-fix 2019-01-29 06:05:08 UTC 2019-01-29
Merge remote-tracking branch 'upstream/master' into reexec-from-snapd-fix

Author: Michael Vogt
Author Date: 2019-01-29 06:05:08 UTC

Merge remote-tracking branch 'upstream/master' into reexec-from-snapd-fix

fix-debian-9 2019-01-28 15:41:46 UTC 2019-01-28
tests/lib/prepare-restore: make the Go workaround Debian 9 specific

Author: Maciej Borzecki
Author Date: 2019-01-28 15:41:46 UTC

tests/lib/prepare-restore: make the Go workaround Debian 9 specific

Signed-off-by: Maciej Borzecki <maciej.zenon.borzecki@canonical.com>

fix-snapcraft-build-in-lp 2019-01-25 13:43:49 UTC 2019-01-25
snapcraft.yaml: fix snapcraft building in launchpad

Author: Michael Vogt
Author Date: 2019-01-25 13:43:49 UTC

snapcraft.yaml: fix snapcraft building in launchpad

We recently switched to building with golang-1.10. When using this
package there is no "go" binary in the PATH so we must setup the
PATH correctly in our go build plugin.

tests-enable-debian-sid-2 2019-01-25 11:39:44 UTC 2019-01-25
tests: restart systemd-journald between tests to workaround memleak

Author: Michael Vogt
Author Date: 2019-01-25 07:50:23 UTC

tests: restart systemd-journald between tests to workaround memleak

no-pipefail-again 2019-01-24 16:38:17 UTC 2019-01-24
Merge remote-tracking branch 'upstream/master' into no-pipefail-again

Author: Michael Vogt
Author Date: 2019-01-24 16:38:17 UTC

Merge remote-tracking branch 'upstream/master' into no-pipefail-again

dbus-slot-spread-test 2019-01-23 19:43:21 UTC 2019-01-23
tests: only use dbus-send to the snap service on classic

Author: Michael Vogt
Author Date: 2019-01-23 19:43:21 UTC

tests: only use dbus-send to the snap service on classic

cmd-run-suite 2019-01-23 15:36:17 UTC 2019-01-23
snap: really run the RunSuite

Author: Michael Vogt
Author Date: 2019-01-23 15:35:50 UTC

snap: really run the RunSuite

import-debian-salsa-no-history-w-zyga 2019-01-23 08:24:54 UTC 2019-01-23
import work from salsa.debian.org/zyga-guest/snapd

Author: Michael Vogt
Author Date: 2019-01-23 08:24:54 UTC

import work from salsa.debian.org/zyga-guest/snapd

1100 of 1901 results
This repository contains Public information 
Everyone can see this information.

Subscribers