Tobias Koch
05e71b3840
Do not include any snaps in ubuntu-cpc:minimized builds
6 years ago
Steve Langasek
7e4a2627ed
Use python3 vmdkstream exclusively; we should not fall back to python2.
6 years ago
Dimitri John Ledkov
a77ec4a9df
Add python3 vmdkstream support
6 years ago
Balint Reczey
8a78ab4021
Merge make-rprivate-before-umount
6 years ago
Balint Reczey
96cc185813
Merge feature/parallelization-snap-version-fixing
6 years ago
Didier Roche
1c435c03d2
Fix customized images with multiple brand/models
...
Some customized images are built from the same chroot, but need to
override brands and models.
6 years ago
Tobias Koch
654fcae467
Replace "snap download" with tool that uses snap store's coherence feature
...
This is important for parallel image builds to ensure all pre-seeded snaps
have the same versions across image variants.
6 years ago
Balint Reczey
33c5ad0b19
live-build/functions: Always use mount --make-private before umount
...
Util-linux 2.33 fixed mount --rbind --make-rslave which did not pass MS_REC
with MS_BIND and livecd-rootfs did only --bind --make-rslave effectively with
prior mount versions.
While mount --rbind --rslave are properly passed the flags to mount()
unmounting did not work cleanly with --make-rslave.
To clearly stop propagation of umount, --make-private is used instead of
--make-rslave and it is always set before umounts. Umount -R is replaced
with a simple umount since submounts are tore down in teardown_mountpoint()
earlier.
LP: #1813730
6 years ago
Jean-Baptiste Lallement
3dce125d72
Remove inidrd and vmlinuz from live layers after they've been moved to casper
6 years ago
Jean-Baptiste Lallement
f84d92d76f
Calculate total size of the image + typos
6 years ago
Jean-Baptiste Lallement
402cdd15be
Adds is_root_layer
...
Factored the code to detect if a layer is a root layer in function
is_root_layer and execute lb_chroot_archives only on root layers.
6 years ago
Jean-Baptiste Lallement
283871573d
Changed the naming scheme for multi layer images to dot format
6 years ago
Jean-Baptiste Lallement
e0d30dd2d3
Fixed substract -> subtract
6 years ago
Jean-Baptiste Lallement
43ec452fa0
Moved reusable functions to functions
...
Moved functions to reuse in lb_binary and lb_chroot to functions
6 years ago
Jean-Baptiste Lallement
3b21bd9a2e
Moved back config helper functions to config
...
Moved back config specific functions from functions to config
6 years ago
Jean-Baptiste Lallement
f3dadf1091
Support for positive and negative sublayers
...
Calculate positive and negative package lists for sublayers
6 years ago
Jean-Baptiste Lallement
1ab78e783b
Generate snap list from task
6 years ago
Jean-Baptiste Lallement
00e474e2ff
Make snap functions idempotent
...
_snap_preseed and snap_prepare_assertions can be called several times
with the same snap and will only provision it once.
6 years ago
Jean-Baptiste Lallement
ef72cf5fe8
Code refactoring:
...
* Moved *inheritance functions from config to functions
* Moved code to extract snap from seed to snap_from_seed function
6 years ago
Jean-Baptiste Lallement
3e34faaa70
Moved add_task and add_package to functions in order to be available in hooks
6 years ago
Steve Langasek
77c44167df
Delete no longer accurate comments
6 years ago
Cody Shepherd
c7e0c27607
[ Cody Shepherd ]
...
Fix snap-seed-parse to take filename argument instead of printing to
stdout
6 years ago
Dimitri John Ledkov
8868522e78
When calling snap-seed-parse append stdout to file, but redirect
...
stderr to stdout, thus unbreak autopkgtests.
6 years ago
Cody Shepherd
2819290352
Changed absoluted paths to relative; set changelog message to UNRELEASED
6 years ago
Cody Shepherd
5bee1ade70
Ensure pre-seeded snaps are now published in the image manifests.
6 years ago
Robert C Jennings
5bbb8e6b3f
Improve snap model assertion code for readability
6 years ago
Robert C Jennings
0e00214cc6
Ensure snap models have been added prior to snap preseeding
6 years ago
Robert C Jennings
8d603cc87f
Simplify snap model assertion customization
6 years ago
Robert C Jennings
97b0bbeed3
Add logging when snap assertions are not replaced
6 years ago
Robert C Jennings
52e5a2b25b
Allow hooks to replace generic snap assertion
...
The generic assertion will be put in place if there are preseeded snaps.
A hook that wants to add its own model should be able to overwrite
the generic assertion. This patch allows a hook to continue unchanged
calling snap_prepare_assertions with a custom brand/model. The patch
will replace the generic brand/model if a custom brand/model is specified.
Prior to this patch the generic brand/model would remain in place.
6 years ago
Mathieu Trudel-Lapierre
056e760c06
Don't divert grub-probe; otherwise we're missing the filesystem UUIDs that
...
the grub search command needs to find the right prefix/root. This is
different than the PARTUUID for booting initrd-less.
7 years ago
Daniel Watkins
42ef796b92
Remove necessarily true conditional
7 years ago
Daniel Watkins
fe76613e69
Require brand:model to be passed to snap_prepare_assertions
...
We only need the default in one place, so remove it from all but the top-level
function.
7 years ago
Daniel Watkins
38518507ec
Generalise other assertion paths
7 years ago
Daniel Watkins
265218c1cb
Don't include model assertion name in FS path (LP: #1764541 )
...
There can only be one model assertion, so we don't need to disambiguate them.
This also brings us in line with the behaviour of `snap prepare-image`, and
consistency is nice.
7 years ago
Daniel Watkins
a09c14c0ab
Fix missing local variables
7 years ago
Daniel Watkins
a844c6f8cd
Fix another unbound variable
7 years ago
Daniel Watkins
ed50ee0e0d
Fix use of unbound variable
7 years ago
Daniel Watkins
d908e89a52
Fix typo
7 years ago
Daniel Watkins
54649b40c3
Allow custom model assertions in snap_prepare_assertions
...
This also splits up the preparation in to two functions, so that images that
want to use a custom model assertion but don't have any snaps to preinstall
don't end up with the core snap installed.
7 years ago
Robert C Jennings
26f31fbd9c
live-build/functions: spelling fix
7 years ago
Robert C Jennings
5f12253791
live-build/functions: Help developers resolve snap download issues
7 years ago
Robert C Jennings
73dba1f31a
snap preseeding: capture Ubuntu snap seeding policy in code
...
When no channel is given for a pre-seeded snap, the channel
should be stable/ubuntu-XX.YY to match Ubuntu policy.
This patch adds the LB_DISTRIBUTION var to config/{binary,chroot}
to have a common way of determining the Ubuntu XX.YY version
number between hooks and auto/build.
7 years ago
Robert C Jennings
cbcb5d3ed8
live-build/functions: reduce scope of snap account variable
...
* Only shell out to set $account when we need to use it.
* Reduce scope of $account to make it local to the function
* Fix indenting within an 'if' block
7 years ago
Robert C Jennings
0dbaf4cc9d
live-build/functions: Drop spurious backslash
7 years ago
Robert C Jennings
936c3dbc79
live-build/functions: Update snap seed.yaml format to comply with yaml spec
7 years ago
Robert C Jennings
829716a6d7
live-build/functions: Change arithmetic to make the file 'sh' friendly
7 years ago
Robert C Jennings
e655aff7b1
live-build/functions: Migrate from generic snap account-id
7 years ago
Robert C Jennings
152adcaa04
live-build/functions: add snap preseeding support
7 years ago
Steve Langasek
8fddc6b469
Merge lp:~vorlon/livecd-rootfs/many-loops
7 years ago
Michael Hudson-Doyle
4407aaf1ae
it is config/common, not config/binary, grr
7 years ago
Michael Hudson-Doyle
27eaa9328a
source config/binary in 032-installer-squashfs.binary
7 years ago
Michael Hudson-Doyle
3e69d30c9e
remove some of the cargo culted scorpions
7 years ago
Michael Hudson-Doyle
4b66f89e56
move skip_lb_stage to config
7 years ago
Michael Hudson-Doyle
416ef912ed
make another possibly more generally useful function
7 years ago
Michael Hudson-Doyle
c85cae9bfe
respond to some review feedback
7 years ago
Balint Reczey
3631c1f778
Zero fill space in UEFI partitions, too
7 years ago
Steve Langasek
1976255e5c
divert /usr/bin/systemd-detect-virt as part of the grub diversions, so
...
that the grub kernel postinst hook is operational when we're building
in a container. LP: #1729034 .
7 years ago
Steve Langasek
dfaf247193
Properly handle loop device names when there are > 10 devices on the
...
system.
7 years ago
Dimitri John Ledkov
4b9e6e811f
Now that grub-related diversions have been factored out in 2.466
...
instead of having bogus root=stuff arg generated in grub.cfg, it is
actually empty. Therefore update the sed command to make the arg in
the root= token optional. This should resolve non-booting livecd cpc
images.
7 years ago
Steve Langasek
90e7ee57c3
and the filename was still wrong
7 years ago
Steve Langasek
bc221a8d67
fix a remaining wrong reference to /etc/default/grub.d/40-partuuid
7 years ago
Steve Langasek
a75cbf210b
Fix the force-partuuid handling to create the file under
...
/etc/default/grub.d/ with a .cfg extension as grub expects; it's unclear
how this ever worked without.
7 years ago
Steve Langasek
a5e27120c0
Factor out grub-related diversions and use them consistently, so we
...
don't end up with wrong os-probe output in our grub.cfg.
7 years ago
Balint Reczey
c5d01a6635
Force partuuid in /etc/default/grub.d/* instead of in /etc/default/grub
...
This prevents ucf questions upon installation of changed /etc/default/grub
7 years ago
Steve Langasek
3ed1f4fdd1
In a cloud environment, we can rely on the kernel being able to boot the
...
root filesystem directly, without an initramfs; enable this when
building minimized.
7 years ago
Balint Reczey
45201111a6
Mount using --make-rslave to ensure safe unmounts for rbind mounts
7 years ago
Steve Langasek
801aad2f77
* Improve teardown_mountpoint to recursively find all submounts and
...
unmount them, instead of working from a hard-coded list. This makes
the code resilient against other submounts being added later, including
downstream.
* Also nuke the sleep / udevadm settle calls in the process, which should
never be required and slow down the builds.
7 years ago
Steve Langasek
c9ef91e262
Restore the call to 'umount -R $mountpoint' from umount_partition,
...
accidentally dropped in previous upload.
7 years ago
Robert C Jennings
83b4f5338c
live-build/ubuntu-cpc/functions: Add teardown_mountpoint to reverse setup_mountpoint
...
* live-build/ubuntu-cpc/functions: Add a function, teardown_mountpoint,
to reverse the work done in setup_mountpoint. Lack of this function
has forced users of setup_mountpoint to implement this separately
and the implementations have diverged. (LP: #1716992 )
* live-build/ubuntu-cpc/functions: Remove umount_settle function.
The was only used where teardown_mountpoint was lacking.
7 years ago
Steve Langasek
a246300940
* live-build/functions: mount tmpfs on /var/cache/apt and var/lib/apt, so
...
we don't have to leave empty space in our derivative images for packages
that have been downloaded/installed/removed. This normally isn't
relevant for the installed system, since the root filesystem will
auto-expand in place on the target disk, but lets us ship smaller
images.
* live-build/functions: also call 'apt-get update' after mounting the
blank /var/lib/apt.
7 years ago
Colin Watson
6a42148b22
Mount and unmount /dev recursively, to cope with setups where there are
...
interesting bind-mounts under /dev (e.g. loop devices bind-mounted by
LXD).
7 years ago
Balint Reczey
4d72521491
Fix suppressing kpartx error
7 years ago
Balint Reczey
3b37842219
Use VMDKstream in a more future-proof way
8 years ago
Robert C Jennings
f05a8a238f
live-build/functions: Update path for VMDKstream.py
...
LP: #1706116
8 years ago
Balint Reczey
6c9cf10d72
Depend on pxz and vmdk-stream-converter instead of installing them at runtime
8 years ago
Balint Reczey
aa54a130c3
Depend on packages in main instead of installing them at runtime
8 years ago
Steve Langasek
f75be1c606
Resurrect Balint's fix from
...
lp:~rbalint/livecd-rootfs/livecd-rootfs-autopkgtest-fix to wrap kpartx
and trap spurious errors, since the problem is still being seen
intermittently on i386 despite us calling sync before kpartx.
8 years ago
Steve Langasek
ca79c05a23
Merge lp:~rbalint/livecd-rootfs/livecd-rootfs-autopkgtest-fix, w/ modifications
...
Only call sync, don't wrap kpartx and parse its output (doesn't appear to be
needed)
8 years ago
Balint Reczey
21efeb6795
Work around kpartx's nonzero exit due to "Device or resource busy" errors
...
which still permit kpartx to finally remove loop device (LP: #1684090 ).
Also sync before calling kpartx to let writing to loop devices finish.
8 years ago
Mathieu Trudel-Lapierre
22ec1d6f6f
Sanitize comments.
8 years ago
Mathieu Trudel-Lapierre
46bae4cebf
Fix up functions refactoring tfor a proper path to the file.
8 years ago