Commit graph

469 commits

Author SHA1 Message Date
Achilleas Koutsou
0ea491e9bd ci: enable ostree tests on RHEL 9.0-beta
The ostree-ng test was updated to accommodate a change in the
edge-container image type
(see https://github.com/osbuild/osbuild-composer/pull/1595).
RHEL 9.0-beta uses the old edge-container configuration, however RHEL
9.0 GA should eventually adopt the new container.

Copying the old ostree-ng test and running it separately is better than
having several conditions in the single test script to accommodate the
old behaviour and then reverting them when the changes land in RHEL 9.

Modified from the old version to assume we're using 'weldr-client'
(which has a different json output schema) and to use RHEL 9
naming/versioning where necessary.

The ansible checks were also copied to remove the kernel-rt check.

Signed-off-by: Achilleas Koutsou <achilleas@koutsou.net>
2021-09-24 13:27:21 +02:00
Tomas Hozza
6bd7282f8b Regenerate relevant image test cases
Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-09-23 10:47:11 +02:00
Tomas Hozza
43f8d817bb test: update image test case generation part of README
Update README to reflect latest changes to the `generate=all-test-cases`
script.

Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-09-22 09:12:57 +02:00
Ondřej Budai
b4338881fa test: regenerate manifests
This commit also fixes the rpmrepo for 8.5 rt. The previously used one
was wrongly generated and had to be regenerated.

Signed-off-by: Ondřej Budai <ondrej@budai.cz>
2021-09-15 10:47:57 +02:00
Gianluca Zuccarelli
d4f511dd82 test/cases: check filesystem mountpoint depth
Add test case to check the ability to create partitions for
the /var, /var/log & /var/log/audit mountpoints. This test is
checking that mountpoints with a depth of 3 or greater can be configured.
2021-09-15 10:46:55 +02:00
sanne
5a9d8c792b cloudapi: V2
V2 is compliant with api.openshift.com design guidelines.

Errors are predefined, have codes, and are queryable.

All requests have an operationId set: a unique identifier which is
sortable by time. This is added to the response in case of an error.

All returned objects have the href, id, and kind field set.
2021-09-14 15:32:21 +02:00
Tomas Hozza
19eb65e9fd RHEL-8.5/9.0: keep RHSM DNF plugins enabled on ec2, ec2-ha and ami
The RHSM DNF plugins `product-id` and `subscription-manager` are now
by default enabled on the RHEL-8.5 and RHEL-9.0 `ec2`, `ec2-ha` and
`ami` images.

The desired default state of the RHSM DNF plugins has been decided by
the RHSM team.

Related to https://bugzilla.redhat.com/show_bug.cgi?id=1996670

Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-09-14 11:47:09 +02:00
Brian C. Lane
ca47083b46 test: Add cross-distro test for distro support 2021-09-14 10:43:09 +01:00
Martin Sehnoutka
8367791358 regression tests: Introduce test for the RHSM fallback
Make sure the fallback works when there is no redhat.repo file, but
there is a certificate that can be used to access the repositories.
2021-09-13 13:14:49 +02:00
Diaa Sami
34342d79e3 don't use non-existent ansible plugin debug 2021-09-10 15:17:54 +02:00
Diaa Sami
f87d8325d9 Allow running script locally without schutzbot 2021-09-10 15:17:54 +02:00
Diaa Sami
12c900ac35 Fix test 2021-09-10 15:17:54 +02:00
Jakub Rusz
bd5414c1e0 Update centos-8 repositories 2021-09-09 13:40:52 +02:00
Jakub Rusz
e8d0d8b9de tests: enable regression tests on RHEL-9
This commit adds the possibility to use both weldr-client and original
composer-cli in the tests.
2021-09-08 12:01:32 +02:00
yih
645815a11c add test case for httpboot simplified installer 2021-09-07 19:15:22 +02:00
Jakub Rusz
5350b42b1d tests: enable vmware test on RHEL-9
These changes enable the use of weldr-client with the test and also
there was a need to change the vm.create command a little bit. Without
the increased CPU and RAM RHEL-9 would not boot and a network adapter
had to be specified to use a newer one because the default one does not
work with RHEL-9.
2021-09-07 18:37:08 +02:00
Jakub Rusz
4fd256e2a3 tests: enable filesystem test on RHEL-9
Modifications to the test to work with weldr-client along with and
adding set -euo pipefail which was missing
2021-09-07 12:33:52 +02:00
Alexander Todorov
38bb690e87 tests: Override filename contains minor version number 2021-09-07 13:29:56 +03:00
Alexander Todorov
44c25b7a87 ci: Make nightly repo/source files multi-arch
the prepare-rhel-internal.sh script should be executed on a single
runner and it will loop through all architectures to prepare the
necessary definitions inside .json and .repo files. The resulting
osbuild-composer-tests repository is not multi-arch, containing all
versions of osbuild-composer-tests.rpm downloaded from Brew.

This is needed because jobs from subsequent stages will download
artifacts (.json & .repo files) from the prepare job but there's no
mechanism to control this easily. As a result artifacts are downloaded
from all of the prepare jobs and they overwrite themselves resulting in
test systems being configured with repo files for different CPU
architecture which leads to dnf errors.
2021-09-07 13:29:56 +03:00
Alexander Todorov
875c59861e Remove stale images 2021-09-07 13:29:56 +03:00
sanne
4a057bf3d5 auth: OpenID/OAUth2 middleware
2 configurations for the listeners are now possible:
- enableJWT=false with client ssl auth
- enableJWT=true with https

Actual verification of the tokens is handled by
https://github.com/openshift-online/ocm-sdk-go.

An authentication handler is run as the top level handler, before any
routing is done. Routes which do not require authentication should be
listed as exceptions.

Authentication can be restricted using an ACL file which allows
filtering based on JWT claims. For more information see the inline
comments in ocm-sdk/authentication.

As an added quirk the `-v` flag for the osbuild-composer executable was
changed to `-verbose` to avoid flag collision with glog which declares
the `-v` flag in the package `init()` function. The ocm-sdk depends on
glog and pulls it in.
2021-09-04 02:48:52 +02:00
sanne
5e72636331 Revert "cloudapi: Add x-rh-identity header filter"
This reverts commit 19db3ff1d4.
2021-09-04 02:48:52 +02:00
yih
c6255b4fea check greenboot log
Signed-off-by: Antonio Murdaca <runcom@linux.com>
2021-09-03 23:29:08 +02:00
Tomas Hozza
79227bdf28 Test: use cloud-tools container in aws.sh
Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-09-02 11:55:25 +02:00
Tomas Hozza
8c9045a216 Test: use cloud-tools container in azure.sh
Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-09-02 11:55:25 +02:00
Jakub Rusz
605a4ea80f tests: workaround for terraform installation on RHEL-9
There is currently no hashicorp repository for RHEL-9 so fallback to
using RHEL-8 version instead.
2021-09-02 11:55:25 +02:00
Jakub Rusz
09a576ed07 tests: update azure.sh and aws.sh for use with weldr-client
This enables the tests to run with both original composer-cli and the new
weldr-client.
2021-09-02 11:55:25 +02:00
Tomas Hozza
36dff5abe2 test/repos: update el9.0 rpmrepo snapshots used by CI to 20210827
Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-08-31 09:49:47 +02:00
Tomas Hozza
c479901a6b test/repos: update el8.5 rpmrepo snapshots used by CI to 20210827
Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-08-31 09:49:47 +02:00
Tomas Hozza
1e2b9e3982 test/api.sh: run cloud CLI tools from a container
The 'google-cloud-sdk' RPM built by Google for RHEL, which provides
the 'gcloud' command, is built only with Python 2. Since Python 2.7
is already EOL in upstream and not available in CentOS Stream 9, we
can not use 'gcloud' from the 'google-cloud-sdk' RPM.

The 'awscli' is not available in RHEL-9 repositories.

The Azure CLI 'az' available in official upstream repositories has
broken dependencies on RHEL-9 and can not be successfully installed. To
workaround the issue, run the tool from the official container image
provided by Microsoft.

Use the `quay.io/osbuild/cloud-tools` F34-based container image instead
of locally installed cloud CLI tools.

Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-08-31 09:49:47 +02:00
Tomas Hozza
03127ded43 test/api.sh: use 'ec2-user' to log into RHEL-9 AMI images
The RHEL-8.5 and RHEL-9.0 `ami` images are now based on the official
RHEL EC2 images. As a result, they use a different default user -
`ec2-user`.

Fix the `api.sh` test case to use the correct user when testing RHEL-9
`ami` images.

Fix #1632

Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-08-31 09:49:47 +02:00
yih
e8c3fb94f0 add bios test for raw image 2021-08-31 09:32:23 +02:00
Ondřej Budai
8893585e31 test/rhel90: use newer snapshot and regenerate test manifests
Signed-off-by: Ondřej Budai <ondrej@budai.cz>
2021-08-30 18:22:58 +02:00
Xiaofeng Wang
61f03a6018 test: Update ostreesetup url in kickstart to work with new change
New change "distro/rhel85: move payloads to iso root" changed
ostree repo path. Test shoud be updated accordingly.
2021-08-30 12:50:38 +02:00
Christian Kellner
3dfc997992 distro/rhel85: move payloads to iso root
Move the ostree repository and the tar image to the root of the
boot iso. This has several advantages: we do no longer have to
correctly guess the size of the anaconda image. Also we do not
need to compress the payload within the squashfs.
Update the image installer's test data. NB: the changes to the
package list were introduced earlier and should mostly affect
the build pipeline. Should have caught is in the corresponding
change, but was apparently not picked up by CI.
2021-08-30 12:50:38 +02:00
yih
68cfe2ee58 distro/rhel85: add tests for edge raw image
Test the newly added RHEL for Edge 8.5 raw images, based on
the existing OSTree tests.
2021-08-28 09:20:19 +02:00
Christian Kellner
3e90d66f5c distro/rhel85: no biosdevname on aarch64
Do not include the biosdevname dracut module on aarch64, where it
does not exist.
2021-08-28 09:20:19 +02:00
Yi He
7af1273b5f test: update rhel85 snapshots 2021-08-28 09:20:19 +02:00
Christian Kellner
608d3b3517 distro/rhel85: add test for simplified installer
Add a comprehensive test suite for the simplified installer,
based on the existing OSTree tests.
2021-08-28 09:20:19 +02:00
Christian Kellner
3781cc0f47 distro/rhel85: make anaconda optional for dracut
Add an argument to `dracutStageOptions` so that additional dracut
modules can be supplied. Remove `anaconda` from the list of mods
that are included by default, and manually include it for the
anaconda based installer.

Co-Developed-by: Achilleas Koutsou <achilleas@koutsou.net>
Co-Developed-by: Antonio Murdaca <runcom@linux.com>
2021-08-28 09:20:19 +02:00
Xiaofeng Wang
c683c70d8a test: Update ostree-ng.sh to cover bug BZ#1951087
Update the first blueprint to use "normal" kernel instead of to
use "rt" kernel. Then upgrade to "rt" kernel.

To work with this bug fix, we need osbuild fix and have to pin to
osbuild latest commit.

The customizations.user is removed from upgrade blueprint to work
with this bug fix. But it's for RHEL 8.5 only.
2021-08-27 12:56:54 +02:00
Xiaofeng Wang
bff49c410d test: Add case - running edge-container on OCP as stage repo 2021-08-27 09:29:28 +02:00
Achilleas Koutsou
8c9d887f62 test/cases: update ostree-ng.sh to use new port
Edge container now serves on 8080
2021-08-27 09:29:28 +02:00
Achilleas Koutsou
b08fdf5e3f test/data: update rhel85 edge container manifests
Signed-off-by: Achilleas Koutsou <achilleas@koutsou.net>
2021-08-27 09:29:28 +02:00
Gianluca Zuccarelli
4f4cb012d5 docs: add rhel90 filesystem support release note 2021-08-25 13:18:12 +02:00
Gianluca Zuccarelli
a198b292b5 test/cases: include rhel9 in filesystem test 2021-08-25 13:18:12 +02:00
Gianluca Zuccarelli
34ade35a5d rhel90: filsystem customization tests 2021-08-25 13:18:12 +02:00
Gianluca Zuccarelli
d892909b2c test/cases: add filesystem failed case test 2021-08-24 00:22:29 +02:00
Tomas Hozza
a8d503e5b9 RHEL-85/90: modify the x86_64 EC2 images dracut configuration
Change the x86_64-specific dracut configuration of RHEL-8.5 and RHEL-9.0
EC2 and AMI images to not include `xen-netfront` driver and add `nvme`
driver, which was previously not included. Since the configuration is no
longer Xen-specific, rename the configuration file to `ec2.conf`.

Justification:
There is no reason to put `xen-netfront` to initramfs as EC2 images don't
boot from network root. In addition, add `nvme` driver to handle the case
when initramfs is getting forcefully rebuild on a Xen instance (and not able
to boot on Nitro after that).

Related to https://issues.redhat.com/browse/COMPOSER-1096.

Signed-off-by: Tomas Hozza <thozza@redhat.com>
2021-08-23 16:01:11 +02:00
Christian Kellner
20258bd45e distro/rhel90: use unified grub config
Feodra 34 and thus RHEL 9 switched to a unified grub configuration,
which means that the main grub config is always located in the same
location, /boot/grub2/grub.cfg.[1] osbuild has used this scheme for
hybrid boot on x64 but not on pure efi systems like aarch64. The
new osbuild option `uefi.unified` was introduced to select that new
unified grug cfg scheme also for those, pure efi, systems. Use that.

[1] https://fedoraproject.org/wiki/Changes/UnifyGrubConfig
2021-08-23 13:48:26 +02:00