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
c2d66c7d96
Source config/binary instead of /build/config/binary which may not exist
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
86108d69d9
Make the 999-cpc-fixes.chroot subproject-aware, so we don't try to locale-gen
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.
7 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
Mathieu Trudel-Lapierre
d50b3ba529
ubuntu-cpc: Remove redundant copy of grub files. (LP: #1637290 )
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
Christopher Glass
4bc9def5d6
This branch fixes the manifest generation in OVA files (LP:1627931)
...
The .ova file extension was passed twice, resulting in file not found errors in
both the general case and the vagrant-specific file creation.
8 years ago
Steve Langasek
4079a1acce
live-build/ubuntu-cpc/hooks/042-vagrant.binary: fix unmount handling
...
so that the teardown is done properly /before/ we try to make an
image from our filesystem, since otherwise /etc/resolv.conf is broken.
LP: #1621393 .
8 years ago
Brian Murray
d51fef0426
* Fixes for vagrant box builder in ubuntu-cpc LP: #1565985
...
- Install virtualbox-guest-utils
- Don't disable default synced folder
- Don't set vm name
- Add cloud-init config to manage /etc/hosts LP: #1561250
8 years ago
Daniel Watkins
2c27aab38c
Re-enable systemd predictable interface naming in cloud images
9 years ago
Daniel Watkins
6340e292d6
Don't configure the eth0 interface by default
...
In xenial, eth0 won't exist (as we've moved to systemd's predictable interface
naming), and even were it to exist, cloud-init would handle configuring it on
boot.
9 years ago
Adam Conrad
dbcbcfaf7c
live-build/ubuntu-cpc/hooks/032-disk-image.binary: Install s390-tools
...
and sysconfig-hardware before we attempt to configure zipl.
9 years ago
Adam Conrad
ec84072284
Merge powerpc fixes from Daniel Watkins
9 years ago
Daniel Watkins
2909aba4b5
Enable building of powerpc cloud images.
9 years ago
Ben Howard
f3d90d962f
live-build/ubuntu-cpc/hooks/042-vagrant.binary: scope serial device for
...
Virtualbox only.
9 years ago
Dimitri John Ledkov
d570ecdcb8
Refactor ubuntu-cpc hooks to hard-code producing an 'ext4' rootfs, which
...
is used outside of the livecd-rootfs build process (specifically for EC2
publication).
9 years ago
Ben Howard
eff40b8e5d
live-build/ubuntu-cpc/hooks/042-vagrant.binary: add serial device for
...
Vagrant images (LP: #1546108 ).
9 years ago
Daniel Watkins
6f6fb2834b
Refactor ubuntu-cpc hooks to hard-code producing an 'ext4' rootfs, which
...
is used outside of the livecd-rootfs build process (specifically for EC2
publication).
9 years ago
Adam Conrad
8b77178bc5
live-build/ubuntu-cpc/hooks/999-cpc-fixes.chroot: Add fake_cloud_init
...
function to create a nocloud data source for cloud images that aren't
meant to be used on real clouds and use it by default on armhf+raspi2
9 years ago
Steve Langasek
a545002b7c
Mark boot partitions as type vfat
9 years ago
Steve Langasek
b1099d2a64
Import live-build/ubuntu-cpc/hooks/raspi2/mkknlimg from
...
https://github.com/raspberrypi/linux/blob/rpi-4.1.y/scripts/mkknlimg
and use it to install a bootable uboot.bin.
9 years ago
Steve Langasek
65f74a021d
Drop gratuitous call to dpkg
9 years ago
Steve Langasek
a92bf11406
Initial support for raspi2 subarch.
9 years ago
Steve Langasek
246d45c839
And one more
9 years ago
Steve Langasek
c62743e5f4
...but if we're going to avoid using umount_partition, we need to actually unmount all the mountpoints mounted by setup_mountpoint
9 years ago
Steve Langasek
93314b5882
and the parent directory isn't a mountpoint, so roll back a change that also causes the script to fail. This still warrants refactoring, but let's refactor it in a way that actually works.
9 years ago
Steve Langasek
c53b727a79
But don't try to use the function without declaring the function...
9 years ago
Steve Langasek
7339cb09b3
Remove some code duplication
9 years ago
Steve Langasek
0b279f731b
Refactor ubuntu-cpc hooks to always produce a 'plain' rootfs via
...
live-build and reuse this for the tarball, instead of lb_binary_rootfs
creating some artifact that we ignore / throw away.
9 years ago
Dimitri John Ledkov
375554f157
* Chroot to execute zipl, because it's nice.
...
* Use the right loop device to install zipl onto.
9 years ago
Dimitri John Ledkov
8f825a91c9
* Correct initrd.img symlink, kernel/hooks should actually produce the
...
right thing here, but meh.
* Chroot to execute zipl, fails to boot otherwise.
9 years ago
Steve Langasek
6bd644f252
Revert change that adds a *sixth* argument to create_empty_partition; this can't possibly be the cause of whatever problem was being seen
9 years ago
Ben Howard
28c10e02db
ubuntu-cpc: in hooks/030-root-tarball.binary create /lib/modules to fix
...
(LP: 1543204).
9 years ago
Dimitri John Ledkov
21b502d78c
Do not remove linux-base, when purging all the linux-*, in the tarball
...
build. Otherwise ubuntu-minimal is removed, and things get crazy.
9 years ago
Ben Howard
ba1b657624
ubuntu-cpc: fix hooks/032-disk-image.binary call to
...
create_empty_partition, which requires five args due to "-u"
9 years ago
Steve Langasek
90fc765551
set -u damage
9 years ago
Steve Langasek
e51a8f8aef
Make sure we still mount the kernel filesystems in the disk setup
...
We skip the previous unmount/remount behavior because that makes things
unwieldly when there are multiple partitions; but we still have setup to do,
so that /dev is available for grub, etc.
9 years ago
Steve Langasek
eb9b43defe
Don't forget to mark our root partition bootable
9 years ago
Steve Langasek
e9d31ea96a
Fix some thinkos in the loop device name handling
9 years ago
Steve Langasek
4594c28c1f
More set -u damage
9 years ago
Steve Langasek
83d2176957
chroot hooks are special, they don't get the environment because it gets scrubbed by rootcmd; so we have to call dpkg --print-architecture after all
9 years ago
Steve Langasek
b9f96f5682
set -u is a hateful thing
9 years ago
Steve Langasek
0be484d35e
Add support for actually mounting the boot partition and copying contents to it
9 years ago
Steve Langasek
24b9feb58a
further refactoring of partition handling
9 years ago
Steve Langasek
6fce3b879d
-> in a few overlooked places
9 years ago
Steve Langasek
99cdaafd61
Refactor ubuntu-cpc hooks to allow us to handle images where the root
...
partition should not be partition 1.
9 years ago
Steve Langasek
7ec8dd87ac
Fix architecture handling in hooks. We know we're always being invoked
...
from a launchpad-buildd-like setup, which passes ARCH and SUBARCH in the
environment, because auto/config and auto/build both rely on this. So
don't scatter dpkg --print-architecture calls throughout, especially
when many of these are not cross-build-aware.
9 years ago
Steve Langasek
cb58e88614
If a subarch is specified for a cloud image build, don't build rootfs
...
artifacts; these should come from the 'generic' build.
9 years ago
Steve Langasek
691a0ca08f
Add hooks to ubuntu-cpc to divert /bin/sync in the chroot and undivert it
...
at the end. This is a general-purpose change that should be applied to
all flavors and archs, but at the moment it's only needed on armhf+raspi2
to work around the raspberrypi2-firmware postinst calling sync, which is
actually warranted in the normal case.
9 years ago
Ben Howard
a5ee888d1b
ubuntu-cpc: add missing net.ifnames=0 for ppc64el disk images.
9 years ago
Steve Langasek
8e20e4b169
Refactor some non-idiomatic architecture handling in
...
live-build/ubuntu-cpc/hooks/999-cpc-fixes.chroot
9 years ago
Ben Howard
ca800e778b
* ubuntu-cpc:
...
- fixed loop setup due to change of kpartx output
- only use grub-install logic for Intel architectures
9 years ago
Dimitri John Ledkov
9e06b90ead
* ubuntu-cpc:
...
- exclude s390x from should_install_grub
9 years ago
Daniel Watkins
414cbec4dc
Specify a regex to run-parts so that cloud image extra scripts are found
...
and executed.
9 years ago
Daniel Watkins
e3d6d5dc9f
Set timeout options so ppc64el cloud images don't display a grub boot
...
menu (matching the behaviour of other cloud images).
9 years ago
Daniel Watkins
ece1f6ccab
Install grub in ppc64el cloud images so they are bootable (LP: #1538610 )
9 years ago
Ben Howard
8ff658da8d
Remove unneeded packages from the root.tar.{gz,xz} cloud image targets
...
(LP: #1534764 ).
9 years ago
Ben Howard
fdd9a3e716
Remove unneeded packages from the root.tar.{gz,xz} cloud image targets
...
(LP: #1534765 ).
9 years ago
Daniel Watkins
cf2e1f3cdc
Produce OVA files for i386 cloud builds
9 years ago
Daniel Watkins
c6440fdfe5
Enable building of s390x cloud images.
9 years ago
Ben Howard
421269a732
ubuntu-cpc: clean up qcow2 image builds
...
- use convert_to_qcow2 to create the qcow2
- remove assumption of disk1.img existing
9 years ago
Ben Howard
c6077abaab
ubuntu-cpc: create VMDK's for disk images if they exist. Remove
...
assumption that disk1.img will exist.
9 years ago
Ben Howard
5b08080057
ubuntu-cpc: only execute first level executables in the extra hooks
...
directory
9 years ago
Ben Howard
7853f8b318
ubuntu-cpc:
...
- added ability to create derivative images
- added function to convert images to qcow2
- cleaned up the loop clean up logic
- added function to umount and settle devices
9 years ago
Michael Vogt
c97c00d749
manually merge upload of 2.359
9 years ago
Ben Howard
2f1831ed07
Fix typo in ubuntu-cpc preventing non-intel builds.
9 years ago
Ben Howard
dd371c4a69
* added additional CPC build targets:
...
- added manifest generation for squashfs and root.tar.gz
- added VMDK generation
- added OVA generation from VMDK's
- added generic Vagrant image generation
9 years ago
Ben Howard
1855130ecc
Pre-merge commit
9 years ago
Ben Howard
48a08042ed
Fix
9 years ago
Ben Howard
2b818e8475
Restrict Vagrant size
9 years ago
Ben Howard
4a752e14c0
Use standard tools for resize
9 years ago
Ben Howard
9a87b066cf
Comment fixup
9 years ago
Ben Howard
e931fbeaa5
ubuntu-cpc: move vmdk creation code into common funtion to support Vagrant Box builds
9 years ago
Ben Howard
d301f2a532
ubuntu-cpc: add ability add arbitrary hooks for extending builds
9 years ago
Ben Howard
467619d1a1
ubuntu-cpc: generate Vagrant images
9 years ago
Ben Howard
e96df0c156
ubuntu-cpc: generate OVA images.
9 years ago
Ben Howard
92f63b3e6b
ubuntu-cpc: added OVF templates for generating OVA and Vagrant Images
9 years ago
Ben Howard
b31233589e
ubuntu-cpc: generate VMDK disks
9 years ago
Ben Howard
bc5dbaaca5
ubuntu-cpc: generate squashfs based on the rootfs tarball
9 years ago
Ben Howard
e4553137ac
ubuntu-cpc: generate manifest for root tarball
9 years ago
Ben Howard
a40cfd6180
ubuntu-cpc: Move apt-get to the top of uefi disk creation
9 years ago
Daniel Watkins
216762748b
Move building of all architecture-specific CPC artifacts in to
...
Launchpad.
9 years ago