Commit Graph

2068 Commits

Author SHA1 Message Date
Brian C. Lane
6aa0a3fdf6 Add extra boot args to the livemedia-creator iso templates
This adds a new livemedia-creator argument, --extra-boot-args, which can
be used to add arguments to the kernel command-line in the templates.

(cherry picked from commit 235813212f)
(cherry picked from commit 48548722b3)
2019-05-06 11:56:09 -07:00
Brian C. Lane
afa68df873 lorax-composer: Add the ability to append to the kernel command-line
Sometimes it is necessary to modify the kernel command-line of the
image, this adds support for a [customizations.kernel] section to the
blueprint:

[customizations.kernel]
append = "nosmt=force"

This will be appended to the kickstart's bootloader --append argument.

Includes tests for modifying the bootloader line, the kickstart
template, and examining the final-kickstart.ks created for a compose.

(cherry picked from commit 59464286f9)
(cherry picked from commit c5f4dfe113)
2019-05-06 11:54:56 -07:00
Brian C. Lane
935f66662b qemu wasn't restoring the terminal if it was terminated early
You would need to run reset to regain control of your terminal after
this happened, so this turns off the monitor and serial port mux to
stdout.

(cherry picked from commit 1accce819afac96a6d58f24a4908a4913e46624c)
(cherry picked from commit ae07d8d888)
2019-05-06 11:54:17 -07:00
Brian C. Lane
53c4daa529 Switch the --virt-uefi method to use SecureBoot
This updates the qemu arguments so that it will actually work, and
switches to using SecureBoot OVMF firmware.

(cherry picked from commit f2b19cfcf7e23dfdb7176fcb1fa8b0335da5aa9a)
(cherry picked from commit 79c38687f3)
2019-05-06 11:51:32 -07:00
Brian C. Lane
850c35a613 Fix pylint problems with vmware_list_vms.py
(cherry picked from commit fc9ccb51ee)
2019-05-06 11:45:32 -07:00
Brian C. Lane
0dd9ffab92 Makefile: Make the .test-results directory
podman won't run if it is missing.

(cherry picked from commit a7e96ab828)
2019-05-06 11:45:32 -07:00
Brian C. Lane
208941afd8 Add a ppc64le template for live iso creation
(cherry picked from commit f3c147448a)
2019-05-06 11:45:32 -07:00
Brian C. Lane
1fd73cde52 Move the package requirements for live-iso setup out of the template
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

(cherry picked from commit 3b8de2a233)
2019-05-06 11:45:32 -07:00
Brian C. Lane
85708340eb Remove exclusions from lorax-composer templates
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

(cherry picked from commit 822bc7ac68)
2019-05-06 11:45:32 -07:00
Brian C. Lane
4f07db73a5 Add LiveTemplateRunner to parse per-arch live-iso package requirements
This template runner only uses the installpkg command to gather a list
of package NEVRA to be installed to support live iso creation.

(cherry picked from commit 6c5e89ed14)
2019-05-06 11:45:32 -07:00
Brian C. Lane
54fe00d16e Move the run part of LoraxTemplateRunner into new TemplateRunner class
This will make it easier to add a new subclass that only handles
installpkg for use with livemedia-creator and lorax-composer iso
creation.

(cherry picked from commit 8eaad3bc5e)
2019-05-06 11:45:32 -07:00
Brian C. Lane
883bc07fc8 lorax-composer: Use reqpart --add-boot for partitioned disk templates
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.

(cherry picked from commit a0ff34dcb1)
2019-05-06 11:45:32 -07:00
Brian C. Lane
19375b9d4e livemedia-creator: Add support for reqpart kickstart command
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.

(cherry picked from commit b47554d716)
2019-05-06 11:45:32 -07:00
Brian C. Lane
ab74164d83 Make the lorax-composer ks templates more generic
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.

(cherry picked from commit d27b4fcbd4)
2019-05-06 11:45:32 -07:00
Jan Stodola
f02eab78a3 Add script for removing old artifacts from VMware
(cherry picked from commit ce110afd22)
2019-05-06 11:45:32 -07:00
Brian C. Lane
3d2c085cf0 Clarify the ks repo only error message
This also moves the run_creator kickstart checks into check_kickstart
so that tests may be added.

This will close #164

(cherry picked from commit 3676cb65bb)
2019-05-06 11:45:09 -07:00
Brian C. Lane
30098a52e3 tests: Fix makeFakeRPM calls
(cherry picked from commit 28bd68793b)
2019-05-03 17:05:57 -07:00
Brian C. Lane
b537d653c4 Drop _unique_dicts function
It is not actually needed. projects_info deduplicates the package list,
placing other builds into the builds list instead of making a new
package entry. So it returns a sorted and deduped list of packages, as
expected.

(cherry picked from commit 6443f34337)
2019-05-03 17:05:36 -07:00
Jiri Konecny
36b0985265 Remove unsupported anaconda-docker-addon (#619)
It is failing to load on Fedora for quite some time and there no-one
complaining about this so it would be easier to disable it instead of
fixing it.

(cherry picked from commit d64a320ba1)
2019-05-03 17:04:52 -07:00
Alexander Todorov
ce361d6f48 New test: Verify tar images with Docker and systemd-nspawn
- on some arches (also Fedora x86_64) systemd-nspawn may not be
  available
- delete composes from other tests in rlPhaseStartCleanup because
  we're seeing the tar compose kind of hanging in Jenkins and that
  test script is executed last so the slave may be running out of
  disk space. Be a good citizen and clean up after the previous
  tests.

(cherry picked from commit ea78cce882)
2019-05-03 17:03:40 -07:00
Alexander Todorov
b7b8731c03 Update OpenStack flavor and network settings in tests
b/c we've migrated to Upshift we must use different instance type,
specify the desired network to connect to and update how we get
the ip address of the launched VM.

(cherry picked from commit c95d7084a6)
2019-05-03 17:03:40 -07:00
Brian C. Lane
a08dd1585c Remove 3G minimum from lorax-composer
The reason for the 3G minimum was because anaconda had a bug with how it
calculated minimum disk size when using kickstart. The gix for this has
been in Anaconda since 29.19-1, so we can now remove our limit and
create somewhat smaller disk images.

(cherry picked from commit 7e78dc368f)
2019-05-03 17:02:28 -07:00
Chris Lumens
1a76c4816f Run as root/weldr by default.
We need to be root to read the certificates that give access to the
package repos.  Right now, the alternative seems to be changing
permissions on the certs themselves, which seems less good.  We're
running anaconda as root anyway.

(cherry picked from commit 022e9eba3e)
2019-05-03 17:01:30 -07:00
Lars Karlitski
8814231a09 Pass ssl certificate options to anaconda
If a repository has `sslcacert`, `sslclientcert`, or `ssclientkey` set,
pass them to anaconda through the kickstart file. This is mostly the
case when using RHEL repositories that are accessed through a
subscription.

(cherry picked from commit e194b5926c)
2019-05-03 17:01:30 -07:00
Brian C. Lane
5ed5690fb6 Drop auth from the kickstart examples
System defaults should be sufficient these days.

(cherry picked from commit 2af0973155)
2019-05-03 17:01:30 -07:00
Alexander Todorov
ea63fbcc5b Keep OpenStack VMs with Tag keep_me
so we can have some systems for debugging

(cherry picked from commit 5dc895fbee)
2019-05-03 17:01:30 -07:00
Jiri Kortus
f7e71768fa Make sure compose build tests run with SELinux in enforcing mode
(cherry picked from commit 57be7313c4)
2019-05-03 17:01:30 -07:00
Alexander Todorov
2ad44f3a46 Update with instructions about commit log referencing Bugzilla
do not merge in rhel7 and rhel8 branches if commit log isn't
referencing an approved bug!

(cherry picked from commit 20ebfce164)
2019-05-03 17:01:30 -07:00
Jan Stodola
45710e435a Add script for removing old artifacts from Azure
(cherry picked from commit f26fcba902)
2019-05-03 17:01:30 -07:00
Jan Stodola
c6bff67549 Use existing storage account
To avoid creating a new storage account for every new VM.

(cherry picked from commit 8a8802aab7)
2019-05-03 17:01:30 -07:00
Jan Stodola
0d38224f12 Record date/time of VM creation
(cherry picked from commit e918ff807c)
2019-05-03 17:01:30 -07:00
Igor Gnatenko
f6bf2cf460 Remove obsolete Group tag
References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag
(cherry picked from commit 5217215c4b)
2019-05-03 17:00:24 -07:00
Brian C. Lane
6debc2252c fedora-livemedia.ks: Add packages needed to boot livecd on UEFI systems
(cherry picked from commit 9577f719ae)
2019-05-03 16:59:25 -07:00
Jan Stodola
43a79746fc Export OS_PROJECT_NAME variable in openstack scripts
The OS_PROJECT_NAME (or OS_TENANT_NAME) environment variable needs to be defined.
Use the OS_PROJECT_NAME, since it is recommended in the documentation instead of
the older OS_TENANT_NAME.

(cherry picked from commit cc6fdb2fac)
2019-05-03 16:57:37 -07:00
Jan Stodola
d23ec308d4 Collect results from all cleanup scripts
Correctly detect if any of the executed cleanup scripts didn't pass.

(cherry picked from commit 67dcff18d9)
2019-05-03 16:57:37 -07:00
Alexander Todorov
fe091060b8 Typo in PR template
(cherry picked from commit d8439bdc11)
2019-05-03 16:57:37 -07:00
Jan Stodola
12cd27375a Expand parameters as separate words
(cherry picked from commit 961ea18145)
2019-05-03 16:57:37 -07:00
Alexander Todorov
a839824f7a Add PR template with instructions for repo members
this will serve as a reminder that sometimes Jenkins jobs can be
missing or failing and also lists the comments which team members
can use to trigger Jenkins jobs, especially for PRs from
non-members.

(cherry picked from commit de6419f0d1)
2019-05-03 16:57:37 -07:00
Jan Stodola
34c24117fe Add script for removing old artifacts from OpenStack
(cherry picked from commit 6680e2ffec)
2019-05-03 16:57:37 -07:00
Jan Stodola
8885d7eaca Add script for removing old artifacts from AWS
(cherry picked from commit 677c858f60)
2019-05-03 16:57:37 -07:00
Brian C. Lane
2fd6c6b549 Add timestamps to program.log and dnf.log
In lorax, lorax-composer, and livemedia-creator.

(cherry picked from commit fd173f7265)
2019-05-03 16:54:37 -07:00
Alexander Todorov
a038f7d904 tests: use the first IP address if more than 1 retruned from OpenStack
(cherry picked from commit 883a959442)
2019-05-03 16:52:44 -07:00
Alexander Todorov
963c7d8f89 tests: remove a debugging command
(cherry picked from commit 6563a33f63)
2019-05-03 16:52:44 -07:00
David Shea
3daede741c Add openstack to the image type list in the docs
(cherry picked from commit d619430d6d)
2019-05-03 16:52:44 -07:00
Alexander Todorov
4f3b81e4e7 Teach OpenStack test to distinguish between RHEL and Fedora
(cherry picked from commit 642b909d24)
2019-05-03 16:50:33 -07:00
Alexander Todorov
7b306e2e84 Use full path for Azure playbook as well
(cherry picked from commit 543a4d88d9)
2019-05-03 16:47:52 -07:00
Alexander Todorov
9584cbd96f Use a temporary dir for ssh keys during testing
resolves path problems with sudo, we already have the same change
in the AWS test script.

(cherry picked from commit 16260c1569)
2019-05-03 16:47:46 -07:00
Alexander Todorov
c4f3ceb0ec Update V_DATASTORE b/c defaults appear to have been changed
(cherry picked from commit 59050df710)
2019-05-03 16:47:38 -07:00
Alexander Todorov
41aa84ba04 Clone pyvmomi samples in the correct directory
(cherry picked from commit e0c8cdc5a8)
2019-05-03 16:47:10 -07:00
Alexander Todorov
a8ff02113b Use full path when pushing toml files during testing
(cherry picked from commit 8f430be2a6)
2019-05-03 16:47:00 -07:00