With recent systemd changes cbm use cases will break if we don't add ".conf" to the
loader.conf default entry configuration.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Currently we can't set default kernel with extlinux/syslinux because we basically
the current implementation doesn't load the installed kernel data and when comparing
the detected ones to check with the selected kernel we'll use a data the set-kernel
command doesn't provide us. Long story short this patch brings to life the
set-kernel command for legacy bios mode bootloaders.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
This will affact the list-kernels command that for now with legacy bios mode will
not list the actual default kernel(the one starting with *).
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
The biggest difference between extlinux and syslinux from cbm point of view is the
bootloaders install/update command. Having said that, This patch unifies the
syslinux and extlinux implementation reducing much of duplication on that side.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Make sure extlinux is consistent with syslinux and mark the boot partition as legacy
bios bootable.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Make our life easier, put together all the required steps before cutting a new
release instead of having to remember it all.
Change the VERSION file, create the release commit and tag. Bonus point added a
--help flag so we can easily remember how this script works.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
For some reason (may be a user manual intervention or some issue on previous
updates) the syslinux/extlinux config file may be empty and in that case cbm will
segfault when reading the content's buffer.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
By using syslinux-nomtools we don't depend on mtools and reduce the footprint for
smaller images.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
If we don't find the boot partition then we warn the user exit, currently we
segfault.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
With the commit 512323d we started ignoring the --path flag therefore breaking image
mode use cases. This patch brings back --path flag.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
We've found some cases where the path to LoaderDevicePartUUID will have
some "virtual" entries containing some "garbage" in the path. This patch
makes sure we always match only the right formatted ones.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Avoid parsing flags, allocating BootManager twice when calling update
from time out command.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
We would like to disable grub2 in scenarios/configurations where we
know we won't ever use/need it.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
The scripts continous.sh and update_format.sh should live side-by-side
with the other scripts. Also renamed update_format.sh to update-format.sh
to keep naming consistency.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
It's a copy of findstatic.pl from libnica, in the context of c-b-m
we're not using it at all.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Some builds may not generate coverage.info, if that happens we don't
try to merge it.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
With these changes the user may add custom initrd freestanding files
into /etc/kernel/initrd.d.
Additionally the user can mask system defined initrd freestanding
by adding symlinks pointing to /dev/null within /etc/kernel/initrd.d.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
The user can set a system-wide configuration to skip efi vars update.
With that the user can insure the efi vars will not be touched when
c-b-m is called by some other tool i.e swupd post update hooks.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
This patch introduces a new flag (-n,--no-efi-update), with that flag
c-b-m will not touch efi variables. It's useful for multi-boot systems
where the user will not want c-b-m messing with the efi configurations.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Makes sure we properly align flags and descriptions when flags are
larger than current ones.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Split each test to its own execution, with that we can have a better
visualization of the build type failure.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Added arguments to the script so we can select the test we want to
run, also make the coverage optional (enabled by default).
Started transitioning the name from travis_test.sh to a more generic
name (run-test-suite.sh).
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Currently when the user calls the set-timeout command that change
will only be applied after calling update command, with this patch
we internally call update command.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
It seems that without pull_request event the pull request will not
get actions triggered.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
With that each vendor can create a more meaningful uefi menu entry if provided on
build time.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
Improve the internal filesystem detection, with these changes we
can reuse this code elsewhere and be more efficient - other areas
needing the filesystem knowledge can use this mapping strategies
adding a more precise and centralized code to that.
This patch also makes sure to keep tests and filesystem checks more
consistent.
When mounting we were assuming the /boot filesystem to always be
vfat, with this code now we can have /boot partitions with whatever
filesystem we support (for now: vfat, ext[2-4]).
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>
The patch simplifies the extlinux_cmd to work both on image_mode
and native_mode, with /boot partition or not. The -i will work in
both cases, using the --device will also ensure that.
The current form will not work across these scenarios. In a
partitionless in native_mode we'll always need --device to tell
extlinux to install the mbr in a device but install stage files
into /boot, otherwise extlinux will fail telling the device was
not found - it can't find the device "mapped" to /boot.
Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com>