Ubuntu
aafa682254
Drop snap-tool
...
The cohort API used in the snap-tool has been dropped and
a replacement is needed. Until then the code will be unused.
6 years ago
Robert C Jennings
77ae8d704f
ubuntu-cpc: parallel builds
...
* 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.
* Inject a proxy into the build providing a snapshot view of the package repo.
When the REPO_SNAPSHOT_STAMP variable is set, the auto/build script will attempt
to launch a transparent HTTP proxy on port 8080, and insert an iptables rule to
redirect all outgoing HTTP requests to this proxy.
The proxy, contained in the `magic-proxy` Python script, examines each request
and silently overrides those pointing to InRelease files or files that are
listed in InRelease files. It will instead provide the contents of the requested
file as it was at REPO_SNAPSHOT_STAMP, by downloading the corresponding asset
"by hash".
* Use series files with dependency handling to generate hook symlinks dynamically
This patch currently only applies to the "ubuntu-cpc" project.
More and more logic has been going into the hook scripts to decide
under which conditions they should run or not. As we are moving
to parallelized builds of image sets, this will get even more
complicated. Base hooks will have to know which image sets they
belong to and modification of the dependency chain between scripts
will become more complicated and prone to errors, as the number of
image sets grows.
This patch introduces explicit ordering and dependency handling for
scripts through the use of `series` files and an explicit syntax
for dependency specification.
6 years ago
Balint Reczey
64985baafd
Build WSL rootfs tarball
...
LP: #1827930
6 years ago
Steve Langasek
4e77d07a6c
Also don't create the update-motd directory since we're not writing to it.
...
It will almost certainly be created at some point but we don't need to
create it here.
6 years ago
Steve Langasek
518b18db0f
Drop /etc/update-motd.d/51-cloudguest from cloud images; this is not consistent with current Ubuntu Advantage product language. Any future customizations to update-motd for cloud images should be done via a package instead.
6 years ago
Colin Watson
493035c7d2
Make sure buildd images have a /usr/sbin/policy-rc.d symlink
...
Installing policyrcd-script-zg2 doesn't quite do this because of the way
that live-build installs its own temporary version of policy-rc.d. The
only remotely sensible way I can see to deal with this is to create the
symlink manually.
6 years ago
Colin Watson
8414b699da
Drop code to handle buildd images for != xenial
6 years ago
Colin Watson
6c9fc6f3ec
Move buildd image building to binary hooks
6 years ago
Colin Watson
6e9d7f35ca
Add a LXD image to builds for the buildd subproject
6 years ago
Colin Watson
aec5f3666a
Add a buildd subproject
6 years ago
Balint Reczey
657500f59f
Add .keep files to preserve empty directories
6 years ago
Cody Shepherd
1f05fbea69
Backport adding snaps to image manifests (LP: #1805497 )
6 years ago
Steve Langasek
fef73e9a90
Merge lp:~rcj/livecd-rootfs/xenial-proposed
6 years ago
Cody Shepherd
1f990b1bf2
Fixing spelling error
6 years ago
Cody Shepherd
29324714c0
Improving modularity of moving around /etc/resolv.conf in order to make
...
some other fixes more future proof.
6 years ago
Łukasz 'sil2100' Zemczak
f64e3c9981
As Steve pointed out, the auto/build PREFIX change was a move, not an addition.
6 years ago
Robert C Jennings
91ba932fec
Disable checksum generation (LP: #1799773 )
6 years ago
Łukasz 'sil2100' Zemczak
49d1dce530
Merge trunk.
6 years ago
Łukasz 'sil2100' Zemczak
872d4f6e7f
For the pc model, the name changed so we need to special case it a bit.
6 years ago
Łukasz 'sil2100' Zemczak
3291e971de
The model assertions for 18 don't actually use series=18 because that would be too logical.
6 years ago
Daniel Watkins
64e90c0cca
ubuntu-cpc: Handle a pre-existing /lib/modules in 030-root-tarball.hook (LP: #1797170 ).
6 years ago
Łukasz 'sil2100' Zemczak
706685a5a2
Backport support for building core images with ubuntu-image.
6 years ago
Francis Ginther
aadb032e68
Update unminimize script text and install ubuntu-standard when unminimizing a minimal image (LP: #1778777 )
7 years ago
Francis Ginther
928a9e6c71
Fix install command for pollinate (add '-y') in minimal images
7 years ago
Francis Ginther
67d979da0d
Instead of not removing vim-common, explictily add back pollinate.
...
This is a more explicit version of what is needed and would require no
changes if pollinate is updated to drop the dependency on vim-common.
7 years ago
Francis Ginther
809028f239
Keep vim-common in the minimal images for pollinate
7 years ago
Robert C Jennings
d6c5d54dfa
Fix unbound variable in config/binary and zero UEFI partition
...
* Zero fill space in UEFI partitions, too
* Set LB_ISO_PREPARER to livecd-rootfs to avoid unbound variable in default string
7 years ago
Robert C Jennings
8e53c77a11
snap: Alternate fix for snap pre-seeding (LP: #1775710 )
...
* Backport: Refactor functions out of ubuntu-cpc and ubuntu-server hooks.
* Backport: Add dependency on distro-info for snap preseeding
7 years ago
Robert C Jennings
c7878bdc76
snaps: Fixes for snap pre-seeding (LP: #1775710 )
...
* Add dependency on distro-info for snap preseeding
* Move snap-related functions to avoid conflicts with ubuntu-cpc functions
7 years ago
Mathieu Trudel-Lapierre
f4424e223e
Backport snap preseeding functions from bionic. (LP: #1771177 )
7 years ago
Michael Hudson-Doyle
4fe56fe700
prefer tabs for indentation
7 years ago
Michael Hudson-Doyle
0c41250141
add a word
7 years ago
Michael Hudson-Doyle
18c8049a23
Set the default locale to C.UTF-8 in minimized cloud images.
...
(LP: #1759003 )
7 years ago
Christopher Glass
1198bb65d4
ubuntu-cpc: When performing a minimized build make sure the
...
/etc/cloud/build.info file says "minimal" (LP: #1759519 )
7 years ago
Daniel Watkins
4e83114045
ubuntu-cpc: When performing a minimized build, don't generate artifacts
...
that won't boot with the linux-kvm kernel (LP: #1757223 ).
7 years ago
Balint Reczey
8cc5fb43fa
Don't ask for password and GECOS while creating vagrant user
7 years ago
Christopher Glass
7854028092
Changed default user configuration in the vagrant image, in accordance
...
with the vagrant community's expectations (LP: #1569237 )
7 years ago
Balint Reczey
cbf0a7c417
Use default xz compression (-6) for raspi2 image
...
Xz with -0 generated ~35% bigger compressed image.
LP: #1732681
7 years ago
Balint Reczey
646a88b5ee
Use xz -T4 -0 instead of pxz
...
Test showed very little difference in file-size between -0 and -9 while
both compression and decompression need much less memory and compression
needs less CPU time for -0.
Supported xz versions before 5.2 also accept the -T4 option but ignore it.
Also depend on xz-utils instead of downloading pxz.
LP: #1701132
7 years ago
Balint Reczey
7cc9576845
Depend on packages instead of installing them at run time
7 years ago
Łukasz 'sil2100' Zemczak
03e8249758
For the IMAGEFORMAT=none parts to work for ubuntu-image classic builds, we need to make sure IMAGEFORMAT is preserved and not overwritten if defined. Backporting from trunk.
7 years ago
Christopher Glass
67dab61787
Backport "minimized round 2" changes from trunk to Xenial (LP: #1731492 )
7 years ago
Łukasz 'sil2100' Zemczak
5da7c23c81
Backport Gary's commit adding the IMAGEFORMAT=none to support generating a single rootfs.
7 years ago
Steve Langasek
6c56522961
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
cb73e2475e
Make sure to remove any initramfs that was generated in a minimized
...
image.
7 years ago
Steve Langasek
d5c4f11daa
* Use kvm kernel only on amd64.
...
* Make non-x86 minimized images consistent with x86 by not explicitly
installing the server task.
* Clean up dangling /boot/initrd.img symlink left behind on minimized
builds.
7 years ago
Dimitri John Ledkov
22a8f817ca
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
13c0c8ffd5
Unminimization information should only go to motd when we are actually minimized
7 years ago
Steve Langasek
b2fba90356
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
b66cc28507
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
Steve Langasek
60df0277fd
Skip installation of kernel headers for all minimal images
7 years ago
Steve Langasek
4a4bac20f6
Use kvm kernel flavor for minimized cloud image, not virtual
7 years ago
Steve Langasek
dfb4c593b1
include adjustments to the minimize/unminimize wording that were made in the merge commit on trunk
7 years ago
Balint Reczey
413a53d482
When SUBPROJECT environment variable is not set assume it to be ""
7 years ago
Balint Reczey
88d854ffb5
Use SUBPROJECT=minimized name instead of SUBPROJECT=minimize for consistency
7 years ago
Balint Reczey
b90b04a7b7
Warn users that unminimize may fail reinstalling packages
7 years ago
Balint Reczey
d33ab3825f
Mention unminimize script in motd
7 years ago
Steve Langasek
4d7509f570
Fix a reference to an undefined variable in a script that's set -u.
7 years ago
Balint Reczey
86ed851b5a
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
b32298ede1
minimization handling for UEFI disk images
7 years ago
Balint Reczey
1ca59f1c3a
Print the documentation files which could not be restored by unminimize
7 years ago
Balint Reczey
a40bd1d55b
Explain why unminimization script is a bit complicated
7 years ago
Balint Reczey
8244beb6d1
Verify only documentation that should have been restored after unminimization
7 years ago
Balint Reczey
93fc7c56f2
Use "dpkg --verify-format rpm" explicitly to be safe when the default changes
7 years ago
Balint Reczey
e5cbd2384a
Fix typo
7 years ago
Balint Reczey
98f27745b7
Drop initramfs-tools diversion
...
Kernels which are able to boot without initramfs now dropped dependency
on initramfs-tools thus initramfs-tools can be removed from the image
instead of having to divert it to avoid initramfs generation.
7 years ago
Balint Reczey
e9fc1d8c9f
Install ubuntu-minimal while unminimizing the system
7 years ago
Balint Reczey
5e1d0f0ee7
Add unminimize script for reverting minimization on running system
7 years ago
Balint Reczey
9dd178a0e5
Drop man pages and most of the documentation from minimized images
...
/usr/share/doc/*/copyright and changelog.Debian.gz files are still kept
7 years ago
Balint Reczey
c2d66c7d96
Source config/binary instead of /build/config/binary which may not exist
7 years ago
Steve Langasek
bd2a11774f
if we're using SUBPROJECT=minimize, and tzdata is not installed, remove
...
files that have been left behind. This is a workaround for a bug that should
be fixed in tzdata.
7 years ago
Steve Langasek
cd15b730f7
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
Steve Langasek
5a6f68a1a9
We probably still want sudo, even in a minimal image.
7 years ago
Steve Langasek
86108d69d9
Make the 999-cpc-fixes.chroot subproject-aware, so we don't try to locale-gen
7 years ago
Steve Langasek
95b06ff341
Export the subproject into config/chroot and config/binary, so that this
...
information is available to per-project hooks that need to be
subproject-aware (e.g., to skip steps when SUBPROJECT=minimize)
7 years ago
Steve Langasek
527a7b165e
Begin adding support for a project-independent 'minimize' subproject,
...
which (ironically) omits ubuntu-minimal in favor of using only the
minbase package set.
7 years ago
Steve Langasek
9c9e8c4e4f
Mount using --make-rslave to ensure safe unmounts for rbind mounts
7 years ago
Steve Langasek
f16611774f
* 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
Victor Tapia
13e9dc0089
live-build/ubuntu-cpc/hooks/061-open-iscsi.chroot: generate iSCSI
...
Initiator Name at first iscsid run for cloud images to ensure it is
unique (LP: #1444992 ).
7 years ago
Robert C Jennings
a623618e2c
Install udev before calls to udevadm
7 years ago
Robert C Jennings
0acda846dd
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
11a92795fe
live-build/ubuntu-cpc/functions: call apt-get update in the chroot
...
after mounting a blank /var/lib/apt, so that further operations work
as expected.
7 years ago
Steve Langasek
3fdf3933ed
Fix suppression of kpartx error. LP: #1684090 .
7 years ago
Steve Langasek
314a6b95a3
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). LP: #1716465 .
7 years ago
Steve Langasek
880d4f8b89
live-build/ubuntu-cpc/hooks/033-disk-image-uefi.binary: call apt-get
...
update *before* installing packages, not after.
7 years ago
Steve Langasek
95aabdf668
live-build/ubuntu-cpc/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.
7 years ago
Mathieu Trudel-Lapierre
a75544e0c3
Only set a default GRUB_PRELOAD_MODULES if not already defined; otherwise used the existing values.
7 years ago
Mathieu Trudel-Lapierre
f48670cec5
Clean up GRUB_MODULES_PRELOAD / grub_modules. Remove the modules already loaded in stock signed grub EFI binaries.
8 years ago
Adam Conrad
e3b44822d7
live-build/auto/config: Filter libgles1-mesa out of tasks, as it is not a
...
dependency of anything in updates anymore, fixing mate/myth (LP: #1704013 )
8 years ago
Balint Reczey
2569995de8
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
Balint Reczey
95c239f301
Use all config hooks from the proper place, not from /build/
8 years ago
Balint Reczey
e25936cc61
Source ubuntu-cpc functions from the right place
8 years ago
Robert C Jennings
2048477b0d
live-build/ubuntu-cpc/hooks/999-extras.binary: Exit on first failure.
...
(LP: #1687752 )
8 years ago
Mathieu Trudel-Lapierre
5081c333bb
Add `apt-get update` to ubuntu-cpc ppc64el builds so they use the new
...
sources.
8 years ago
Adam Conrad
2c9f9dd323
Fix security mirror sources.list entries for non-x86 architectures.
...
(LP: #1679252 )
8 years ago
Mathieu Trudel-Lapierre
d50b3ba529
ubuntu-cpc: Remove redundant copy of grub files. (LP: #1637290 )
8 years ago
Steve Langasek
e6793cfa3a
Merge lp:~rcj/livecd-rootfs/xenial-proposed/
8 years ago
Daniel Watkins
28e14a0b77
* Don't overwrite the default sources.list in cloud images.
...
* Replace sources.list generated using COMPONENTS with the sources.list from
an Ubuntu Server installation (i.e. with all components enabled, and all
deb-src lines commented). LP: #1513529 .
8 years ago
Daniel Watkins
ececc9789d
Add replace_grub_root_with_label function
...
When update-grub is run, it will detect the disks in the build system.
Currently, we sed the grub configuration in places where this happens;
replace_grub_root_with_label moves that seddery in to a single callable
location to avoid ending up with multiple versions of it.
(It's worth noting that we also do this in 999-cpc-fixes.chroot, but as our
functions file isn't available within the chroot we don't use it there.)
8 years ago
Christopher Glass
92a10c0df0
Fix the OVF's metadata to include Ubuntu specific identifiers and
...
descriptions instead of the generic Linux ones. (LP: #1656293 )
8 years ago