1623 Commits

Author SHA1 Message Date
Ivan Kapelyukhin
d5b6e93e14
perf(cpc): split disk-image-uefi out of disk-image series file
Due to how `disk-image` file is structured, it builds BIOS and UEFI
images at the same time. However, certain images (e.g., GCE images)
require only UEFI image to be built, BIOS image is being simply
discarded. This results in longer build times.

Splitting out `disk-image-uefi` would allow images to use it instead of
`disk-image` and thus avoid building unused BIOS images.

`disk-image` now depends on `disk-image-uefi` for backward
compatibility.

(cherry picked from commit b40ce74fd67bbaa7f9ec94463d8da759724f9fec)
2022-03-03 15:52:48 +01:00
Ivan Kapelyukhin
e7d06dede2
fix: unset initrdless_boot_fallback_triggered instead of setting it to 0
This fixes GCE shielded VM instances integrity monitoring failures on
focal and later. Our images are built with an empty /boot/grub/grubenv
file, however after the first boot `initrdless_boot_fallback_triggered`
is set to 0. This change in `grubenv` results in integrity monitoring
`lateBootReportEvent` error.

It seems that the only thing that's checking for this `grubenv` variable
is `grub-common.service`, and it is looking specifically for a `1`
value:

  if grub-editenv /boot/grub/grubenv list | grep -q
  initrdless_boot_fallback_triggered=1; then echo "grub:
  GRUB_FORCE_PARTUUID set, initrdless boot paniced, fallback triggered.";
  fi

Unsetting this variable instead of setting it to 0 would prevent issues
with integrity monitoring.
2022-02-14 21:21:51 +01:00
John Chittum
a093a293aa Add sleep to workaround e2fsck errors
LP: 1960537 illustrates an issue where the calls to e2fsck in the
umount_partition call are failing due to an open file handle. At this
time, we are unable to find a root cause, and it's causing many builds
to fail for CPC. Adding a sleep 30 as a workaround as the file handle
releases within  that timeframe. This does not address root cause.
2022-02-10 15:27:57 -08:00
Philip Roche
bfeba29863 Bump UEFI disk image size for armhf to 3.5 GB LP:#1953609
Current impish builds fail with:
```
cp: error writing 'mountpoint/var/lib/snapd/snaps/snapd_14067.snap': No space left on device
cp: cannot create directory 'mountpoint/var/lib/snapd/ssl': No space left on device
```

This is a cherrypick backport from ubuntu/master
2021-12-08 12:01:01 +00:00
Sebastien Bacher
808220c868 Enable universe sources on the desktop canary 2021-10-05 17:16:22 +02:00
Brian Murray
85fb768f4f Properly check ARCH when setting the intel-iot model. 2021-09-29 16:34:51 -07:00
John Chittum
9c3851d401
Mount cgroup2 type for snapd
LP: 1944004 described an issue where a libc transition caused snapd
seccomp profiles to reference a path that no longer existed, leading to
permission denied errors. The committed fix for snapd then raised an
issue where running `snapd debug seeding` would present a
preseed-system-key and seed-restart-system-key due to a mismatch
between the running kernel capabilities and the profiles being loaded by
snapd. By mounting a cgroup2 type to /sys/fs/cgroup, the capabilities
match for snapd as mounted in the chroot. This is done similarly to
live-build/functions:138-140 where apparmour and seccomp actions are
mounted after updating the buildd.
2021-09-28 16:08:55 -05:00
Michael Hudson-Doyle
f5bdeaf4fb Merge branch 'language-support-in-catalogs' into ubuntu/master 2021-09-27 11:09:39 +13:00
Michael Hudson-Doyle
391439d44c Record information about locale support (in particular, whether to install langpacks and which languages have pre-baked squashfses). 2021-09-27 11:06:01 +13:00
Dan Bungert
a96d56a110 desktop: install-sources.yaml type fsimage-layered 2021-09-24 15:25:40 -06:00
Steve Langasek
9e6b983728 Merge remote-tracking branch 'toabctl/keep-debian-native-package-changelogs' into ubuntu/master 2021-09-20 09:39:17 -07:00
Thomas Bechtold
2b2f67c7fb Keep changelogs in minimized builds for native deb pkgs
Debian changelog.Debian.* files are already keept for minimized
builds. But those changelogs are from non-native .deb packages (see
man dh_installchangelogs). Native .deb packages name their changelog
just changelog.* . So keep them in a minimized build, too.

LP: #1943114
2021-09-20 13:43:27 +02:00
Michael Hudson-Doyle
8f8fc220c7 Generate source catalogs for the desktop canary build. 2021-09-14 21:28:50 +12:00
Michael Hudson-Doyle
fe38bd02c1 Change the per language layers in the desktop canary build to have more regular names (and make their implementation better documented and hopefully more comprehensible). 2021-08-27 11:52:08 +12:00
Michael Hudson-Doyle
8106244b42 add a little debugging output 2021-08-20 14:14:35 +12:00
Michael Hudson-Doyle
17279822d5 Get source catalog translations from subiquity git, as brz is in universe. 2021-08-20 10:32:13 +12:00
Michael Hudson-Doyle
543c40b347 Merge branch 'source-catalog-2' into ubuntu/master 2021-08-18 11:10:01 +12:00
Michael Hudson-Doyle
021c8e063c better minimal ubuntu server description 2021-08-18 08:15:14 +12:00
Łukasz 'sil2100' Zemczak
2dc48a1687 Make the UBUNTU_STORE_ARCH adjustment more fool-proof 2021-08-17 12:02:39 +02:00
Łukasz 'sil2100' Zemczak
744585ed9a Merge branch 'ubuntu/master' of git+ssh://git.launchpad.net/~ethan.hsieh/livecd-rootfs/+git/livecd-rootfs into ubuntu/master 2021-08-17 11:58:39 +02:00
Michael Hudson-Doyle
cda8c920dd create source catalogs for live server install sources 2021-08-17 16:07:07 +12:00
Brian Murray
44384357ad add missing for intel-iot 2021-08-04 08:51:01 -07:00
Michael Hudson-Doyle
116a51a080 bootstrap the minimal variant for the minimal server layer 2021-08-03 16:36:02 +12:00
Michael Hudson-Doyle
b341c81ff3 do the mounting in an initrd script rather than systemd units 2021-08-03 16:36:02 +12:00
Michael Hudson-Doyle
5fda0bb2aa apply dpkg minimizations to minimal layer, and undo them for full layer 2021-08-03 16:36:02 +12:00
Michael Hudson-Doyle
5232f2f8cc fix /media/filesystem mount 2021-08-03 16:36:02 +12:00
Michael Hudson-Doyle
d11c71a686 add a minimal server layer under the full server layer 2021-08-03 16:36:00 +12:00
Łukasz 'sil2100' Zemczak
09cbdfa7e9 Revert /dev sharing improvements. 2021-08-02 22:11:41 +02:00
Michael Hudson-Doyle
75fe0241f3 lb_chroot_layered: fix quoting when searching for trusted.overlay.opaque 2021-07-30 11:56:07 +12:00
Łukasz 'sil2100' Zemczak
d198821c07 Fix sharing of the /dev tree to make sure we can safely umount the chroot when needed. This fixes local non-livefs-builder image builds. 2021-07-28 21:54:34 +02:00
Sebastien Bacher
5ba545f2b6 Tweaks to the canary packages
Install cloud-init on the live and target, remove ubiquity
2021-07-27 10:49:03 +02:00
Sebastien Bacher
cdbb5598ad Remove lupin-casper from the canary image
The description states it was for wubi which we aren't using anymore
2021-07-27 10:48:48 +02:00
Michael Hudson-Doyle
5e21dd89f6 Merge branch 'hyperv-manifest' into ubuntu/master 2021-07-27 09:27:41 +12:00
Brian Murray
dbab97caa9 switch amd64 to the arch variable 2021-07-26 11:45:00 -07:00
Brian Murray
c09110cfa8 add support for intel-iot models 2021-07-16 11:03:41 -07:00
Brian Murray
f2c1300f71 rename iotg iot so the names are consistent with the models 2021-07-16 10:14:00 -07:00
Jason C. McDonald
f75c3254b0 Generate manifest for HyperV desktop images
Manifests are necessary for candidate checking in the
CPC automated workflow for building and publishing
HyperV desktop images.
2021-07-14 06:26:16 -07:00
Ethan Hsieh
f4312118cc functions: download snap packages with correct architecture
Have to set UBUNTU_STORE_ARCH when the architecture of host machine is
different from target machine
2021-07-08 15:16:43 +08:00
Michael Hudson-Doyle
bb0bba1793 address review comments 2021-07-08 11:50:22 +12:00
Michael Hudson-Doyle
2928c3d9cd fix reduce_pass_size behaviour around deleted directories 2021-07-07 19:31:53 +12:00
Michael Hudson-Doyle
fc890b15e7 adjust hooks for move of live-server to layers 2021-07-07 19:31:53 +12:00
Michael Hudson-Doyle
e06046aaa0 move includes around for move of live-server to layers 2021-07-07 19:31:53 +12:00
Michael Hudson-Doyle
f563b310d3 update auto/config for move of live-server to layers 2021-07-07 19:31:53 +12:00
Brian Murray
7a180f8d29 Merge remote-tracking branch 'kajiya/lp-1895104-add-serial-port-to-ovf' into ubuntu/master 2021-07-02 13:34:06 -07:00
Michael Hudson-Doyle
18bf308be0 go back to only running 'lb chroot_archives' on root layers
but still run configure_universe after archive removal, not before
2021-07-01 11:16:11 +12:00
Michael Hudson-Doyle
c4402139a2 go back to only running lb_chroot_hacks on live layers
otherwise each and every layer above a layer with a kernel gets its own
initramfs, which is silly.

Copy/paste the cruft cleaning bit of lb_chroot_hacks to be run on
non-live layers.
2021-07-01 11:16:11 +12:00
Michael Hudson-Doyle
653b925646 attempt to fix obscure failure 2021-07-01 11:16:11 +12:00
Michael Hudson-Doyle
fb8af1fd80 add a way to prevent a layer (and descendants) from being made into a sqashfs
for the live server build, i want to make a layer to install the kernel
into but do not want the layer itself to be published.

the implementation is a bit clunky but it works.
2021-07-01 11:16:10 +12:00
Michael Hudson-Doyle
e4ca30e351 lb_binary_layered: use create_squashfs function to pick up some default excludes 2021-07-01 11:16:10 +12:00
Michael Hudson-Doyle
30cc2f1982 lb_chroot_layered: install archives on each layer
also only call configure_universe after packages are installed.
2021-07-01 11:16:10 +12:00