New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make the lorax-composer ks templates more generic #603
Conversation
|
@atodorov I think the tricky problem here is how to handle the iso template. The extra packages are actually required by the lorax template used to post-process the filesystem image so anaconda can't be expected to know what to install. I may have more ideas tomorrow. |
|
I tried the qcow2.ks changes on a Power system (rhel8-branch) and I got: |
So this file is obviously there. NOTE: we still don't have a test for live-iso in Jenkins, this is on the list of tasks to do this/next week. |
|
with the latest patch set I tested on ppc64le and the result is as follows:
I will test s390x and aarch64 later today. |
Ah! So it looks like we need to make a ./live/ppc64le.tmpl |
|
@atodorov Give that template a try, if it fails I'll need access to the machine for debugging. |
|
Note: xorriso is not added as dependency to lorax.spec for rhel8-branch so I had to install it manually. After that I got the following error |
Actually the right thing to do for rhel8 is change it to match the non-live ppc64le.tmpl, we're still using mkisofs. I'll also work up a backport of this specific to rhel8 at some point today. |
116d73b
to
0246d99
Compare
Some platforms do not have grub2, and some require other partitions. Anaconda will add platform specific partitions if the 'reqpart' command is included, and it will add bootloader specific packages to the list if they are needed.
reqpart can be used to make kickstarts more platform agnostic, creating needed partitions without lmc having to keep track of the arch-specific needs. eg. ppc64 needs prepboot and /boot This increases the size of the disk based on whether reqpart or reqpart --add-boot is in the kickstart. Note that this is only valid for partitioned disk output types, not for filesystem images or live iso output.
Some platforms, like ppc64, require that the /boot partition be present. It doesn't hurt to have it there on other platforms so instead of trying to add per-arch kickstart templates just use reqpart --add-boot everywhere.
This will make it easier to add a new subclass that only handles installpkg for use with livemedia-creator and lorax-composer iso creation.
This template runner only uses the installpkg command to gather a list of package NEVRA to be installed to support live iso creation.
If a package is excluded in the template and later added by a blueprint or dependency, anaconda will fail to finish the installation. So remove the -dracut-config-rescue exclusion and instead remove the rescue artifacts in %post
In order to support iso creation on multiple arches with the templates we need to be able to select different packages based on arch. lorax-composer uses the arch-specific Lorax templates in order to generate the output iso so this patch: 1. Creates a new template and type to parse it, live-install.tmpl which contains only installpkg commands and #if clauses for arch 2. Removes bootloader related packages from the live-iso.ks 3. Remove dracut-config-rescue exclusion because it can cause problems with some blueprints. 4. Switch logo requirement to system-logos which is satisfied by generic-logos or fedora-logos. This prevents conflicts when a blueprint installs fedora-release-workstation. So in the future, if x86.tmpl, etc. need a new package to support creating the iso it should be added to the correct section in ./share/live/live-install.tmpl
0246d99
to
f3c1474
Compare
Some platforms do not have grub2, and some require other partitions.
Anaconda will add platform specific partitions if the 'reqpart' command
is included, and it will add bootloader specific packages to the list if
they are needed.
--- Merge policy ---
*-aws-runtestPASS*-azure-runtestPASS*-images-runtestPASS*-openstack-runtestPASS*-vmware-runtestPASSrhel8-*andrhel7-*branches commit log references an approvedbug in Bugzilla. Do not merge if the bug doesn't have the 3 ACKs set to
+!--- Jenkins commands ---
ok to testto accept this pull request for testingtest this pleasefor a one time test runretest this pleaseto start a new build