Commit Graph
23 Commits
Author SHA1 Message Date
Jeremy Cline 56a4d1ed1a Cloud: Adjust aarch64 images to use the correct serial console
The serial device name on Arm is ttyAMA, not ttyS. This splits the
configuration for Cloud images based on the architecture and adjusts the
kernel command line.

Note that prior to this change, aarch64 would still output kernel logs
to the ttyAMA0 console (on Azure, at least) due to the ACPI SPCR table.
On aarch64 the console in this table, if it's present, is _always_
configured as the kernel's default console. However, systemd logs would
not be sent to the serial console because it seems it was honoring the
kernel command line configuration which had ttyS0 as the default.

Also see: https://pagure.io/cloud-sig/issue/394
Also see: https://bugzilla.redhat.com/show_bug.cgi?id=1661288

Signed-off-by: Jeremy Cline <jeremycline@linux.microsoft.com>
2025-05-29 16:17:06 -04:00
Janne Grunau 66b87054e8 grub2: Enable bls for all non-live images
This became necessary with 10.0.13 / after merging
https://github.com/OSInside/kiwi/pull/2535 but doesn't seem to
noticeable effects besides miisin "GRUB_ENABLE_BLSCFG=true" in
/etc/default/grub.
2025-04-29 22:36:27 +02:00
David Abdurachmanov b5d377d912 Initial riscv64 support
Most of the changes are self-explanatory and just follow what's
already happening for existing architectures.

Two things are worth pointing out:

  * we need to use shim-unsigned instead of shim-signed because
    riscv64 is not fully integrated into Fedora yet and so we
    can't do Secure Boot signing for the time being;

  * we use ext4 as bootfilesystem since in most cases the
    underlying firmware is going to be U-Boot, which needs to be
    able to load the board's DTB from /boot and doesn't support
    XFS.

Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
2025-02-07 15:06:22 +01:00
Jeremy Cline 5fe8b10e98 Azure: include azure-vm-utils package in the image
This package is intended to be the place for Azure utilities along with
the various udev rules that currently live in the WALinuxAgent package.

At the moment it just contains the `azure-nvme-id` binary and udev rules
for providing symlinks in /dev/disk/azure/ for local, data, and
OS disks.
2024-09-25 08:52:25 -07:00
Dan Horák dcc4f3c6f9 cloud: updates for s390x
updates for "virtual image" usable under KVM
- don't use 4k block size
- don't use CDL partitioning
- don't use DASD related kernel parameters
2024-06-03 15:36:44 +00:00
Dan Horák 7ba0ead9bd cloud: don't use 4k block size on ppc64le 2024-06-03 16:02:34 +02:00
Adam Williamson 47dd0aa761 Disable systemd-firstboot on Cloud images via cmdline (#2282195)
systemd 256 added a new feature which wants to create users on
boot if none exist yet:
https://github.com/systemd/systemd/commit/3ccadbce3358ba1db7ce5fa3f8dd17c627ffd93b
We don't want that, cloud-init handles this situation. So let's
disable it.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-22 08:15:12 -07:00
Major Hayden 60ddd0e466 AmazonEC2: Add more helpful packages
The amazon-ec2-utils package includes udev rules that make it easier to
identify block storage devices and sets some configuration for other
storage devices.

Users can run awscli2 to manage their AWS cloud resources.

The ec2-instance-connect package allows one click console access to a
Fedora instance from the AWS console (website).

Signed-off-by: Major Hayden <major@redhat.com>
2024-05-10 11:39:20 +00:00
Adam Williamson 391d65ff7f Add btrfs-progs to Cloud images
It was previously being pulled in via weak dependencies of fwupd,
but we removed fwupd in #47 and now it's not there any more. It
is needed for the first boot resize by cloud-init to work, since
we use a btrfs filesystem.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-05-03 13:22:57 -07:00
Yanko Kaneti aa89e5e004 cloud: exclude fwupd from cloud images 2024-05-01 15:08:25 +03:00
Major Hayden 72083f7ba0 cloud: Consistent device naming
Use consistent network device names for network devices instead of
forcing the old "ethX" names from pre-2017. This ensures that
specialized network devices, such as SR-IOV devices, are easy to
recognize and configure inside a Fedora instance on a public cloud or
OpenStack cloud.

FESCo ticket: https://pagure.io/fesco/issue/3190
Change proposal: https://fedoraproject.org/wiki/Changes/EnableConsistentDeviceNamingCloud

Signed-off-by: Major Hayden <major@redhat.com>
2024-04-15 10:09:41 -05:00
František Zatloukal 3668bfa9c6 teams/cloud/cloud: add console="serial" to grub2
Fixes booting the Generic image on systems without any video device.

ref. https://github.com/teemtee/tmt/issues/2771
2024-04-03 22:55:58 +02:00
Adam Williamson 08243564f3 cloud: set Google root size to 10 GB and EC2 back to 5 GB
It's the *Google* image that's required to have a 10 GB root
for performance reasons, not the EC2 image, as the comment says,
but the change was inadvertently applied to the EC2 image not
the Google one. This means our Google image is slow and our EC2
images are failing to be published as AMIs.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-03-20 09:10:53 -07:00
Neal Gompa 12cb853ad9 Add s390x variant for Cloud-Base-Generic
This allows building cloud images for Z systems.
2024-03-11 21:36:23 -04:00
Neal Gompa 31d0b2a70f teams/cloud/cloud: Bump the Google Cloud image to 10G
Anything lower than that causes performance problems.
2024-03-06 13:51:35 -05:00
Neal Gompa b558e172c1 Install fedora-release-* at bootstrap phase for various images
This ensures that the correct variant packages are installed.
2024-03-04 20:18:11 -05:00
Neal Gompa 12275dff55 Add ppc64le variant for Cloud-Base-Generic
This allows building cloud images for POWER systems.
2024-02-24 14:57:26 -05:00
Neal Gompa 3ac0ae9240 teams/cloud: Define compatible architectures for existing profiles
Most of the Fedora Cloud-owned profiles are limited to a subset of
architectures, generally x86_64 and aarch64 (with the exception of
the VirtualBox Vagrant image, which is x86_64 only).
2024-02-24 14:57:26 -05:00
Neal Gompa 7235c1e6f4 teams/cloud: Reformat profile image types for readability
This makes it easier to read what all the settings are.
2024-02-23 05:15:15 -05:00
Jeremy Cline 9322f54b49 azure: install the hyperv-daemons package
This pulls in a number of services to integrate a guest running under
Hyper-V. These services are all automatically activated via udev rules.
2024-02-23 00:31:35 +00:00
Jeremy Cline 83a43059d3 azure: support accelerated networking feature
Azure provides an optional "Accelerated Networking" feature. Enabling
this feature when creating a VM enables SR-IOV and provides the guest
with a virtual function.

Supporting this requires two changes. Firstly, the kernel-modules
package is required as it contains the Mellanox drivers required for the
VF provided to the guest. Secondly, the interface needs to be ignored by
NetworkManager or it'll try and fail to bring up the device and the VM
will be unreachable except by serial console. If this is observed, it's
likely new hardware has been deployed and additional drivers need to be
added to the NetworkManager config.

See https://learn.microsoft.com/en-us/azure/virtual-network/accelerated-networking-overview
for details.
2024-02-23 00:31:35 +00:00
Jeremy Cline d9584ccd70 azure: ensure early boot messages are directed to the serial console
In the event that there's an issue with early boot, setting
earlyprintk=ttyS0 ensures that the messages are routed to the serial
console so it can be debugged.

This particular option is documented as required in the Azure VM
certification FAQ[0].

[0] https://learn.microsoft.com/en-us/partner-center/marketplace/azure-vm-certification-faq#linux-test-cases
2024-02-23 00:31:35 +00:00
Neal Gompa 7497716476 Reorganize configuration around Fedora teams
This realigns the configuration into separate files/folders that
would be modified by specific teams (e.g. WGs and SIGs).
2024-02-22 19:15:21 -05:00