Commit graph

3534 commits

Author SHA1 Message Date
Tom Gundersen
9b89df57b6 docker-compose: integrate dev container
Integrate the dev container into docker compose with the aim
of making test-case generation work as well as composer-cli.

This also makes docker-compose self contained, and no setup or configuration is required beyond running `docker compose up --build`.
2022-02-27 20:55:03 +00:00
Tom Gundersen
bbbbe32b10 devcontainer: adapt to composer
Make the devcontainer more complete for osbuild-composer by
installing more dependencies and plugins.

This enables golang and github integration by default.
2022-02-27 20:55:03 +00:00
Christian Kellner
fc4b50e9db tools: handle container env in generate-test-cases
When we are running inside a container we generally wont be booted
with systemd and thus systemctl will fail. Fall back to check for
the dnf json socket by checking the path exists and bail otherwise.
2022-02-27 20:55:03 +00:00
Christian Kellner
898a0f176a entrypoint.py: ensure parent directories exist
Create the parent directores for the socket if they don't exist.
2022-02-27 20:55:03 +00:00
schutzbot
e994f7b9d4 schutzfile: Update snapshots to 20220226 2022-02-27 18:27:45 +01:00
Achilleas Koutsou
41e4b17f89 distro/rhel86: add lvm2 to base build package set
We want to support LVM on all image types (optionally) so let's make
lvm2 available in all build roots.

Manifests and image info updated for RHEL 8.6 and CentOS Stream 8.

Signed-off-by: Achilleas Koutsou <achilleas@koutsou.net>
2022-02-27 13:04:55 +01:00
Achilleas Koutsou
685b53919f distro/rhel86: rearrange main build package set
One package per line.
Better for diffs.
2022-02-27 13:04:55 +01:00
Achilleas Koutsou
e869c6ab84 schutzbot: keep runners alive when users are logged on
For troubleshooting in CI, if a user is logged on to a runner, keep it
alive until they are logged off.
2022-02-27 12:52:43 +01:00
Alexander Todorov
cf8f05b57c tests: Better implementation for ab30694
Don't remove the pre-existing mount-points from the blueprint b/c we
still need to assert on those.

Add `/tmp` and `/var/tmp` to exercise the case where mountpoints have
matching suffixes.
2022-02-26 17:53:09 +00:00
Alexander Todorov
1459531148 Revert "tests: check mountpoints with matching suffixes"
This reverts commit ab306943d4.
2022-02-26 17:53:09 +00:00
Achilleas Koutsou
a7fbe916b7 distro/rhel86+90: set selinux in permissive mode in installers
SELinux in the installer environment is in permissive mode in regular
installation ISOs
2022-02-26 15:55:56 +00:00
Achilleas Koutsou
365d754827 test: add new manifests for edge installers
Edge installer manifests (both simplified and anaconda) added for RHEL
8.6, RHEL 9.0, CS8, and CS9 for both supported architectures.
2022-02-26 15:55:56 +00:00
Achilleas Koutsou
56839545ea test-case-generators: support generating edge-installer manifests
Adds ostree params to the request to generate a test manifest for
edge-installers and necessary customisations in the blueprint for the
edge-simplified installer.  The manifest is not buildable but works for
checking for changes in the pipeline and packages for the installers.
2022-02-26 15:55:56 +00:00
Achilleas Koutsou
0a535ab09e distro: load ostree parameters from test manifest if specified
If the compose request in the test manifest contains ostree parameters,
add them to the test.
2022-02-26 15:55:56 +00:00
Tomas Hozza
ccd0be8c34 RHEL-90: use C.UTF-8 for images that only have glibc-minimal-langpack
Change the default locale to `C.UTF-8` for RHEL-9.0.
For all the images which install `langpack-en`, keep using the
`en_US.UTF-8` locale. `C.UTF-8` is used as the default for:
 - edge-commit
 - edge-container
 - image-installer
 - qcow2
 - tar

Also change the default locale for the edge-simplified-installer
installer-tree pipeline, since its package set contains only
`glibc-minimal-langpack`.

Regenerate RHEL-90 and c9s image tests.

Fix #2206

Signed-off-by: Tomas Hozza <thozza@redhat.com>
2022-02-26 11:29:35 +01:00
Xiaofeng Wang
6c4e179171 test: Add work around for bug bz#2057769
bz#2057769 blocked UEFI vm test

Co-Authored-By: Christian Kellner <christian@kellner.me>
2022-02-26 00:27:21 +00:00
Sanne Raymaekers
e56248d3c8 templates: Add production worker account to acl 2022-02-25 16:57:13 +01:00
Jakub Rusz
3fb80d199d tests/libvirt: add some regression checks
This is just a simple check to verify rhbz#2004401 and
rhbz#2003038
2022-02-25 13:25:06 +02:00
Tom Gundersen
5f894281d5 test/manifest/image-installer: fix conflicting merge
The new image-installer tests were merged at the same time as the isolevel support. Adjust the test cases.
2022-02-24 18:53:21 +00:00
Ondřej Budai
d8d161480e rhel86/90: change isolevel of image-installer to 3
So it can contain payload bigger than 4GiB.

Related: rhbz#2056451
Signed-off-by: Ondřej Budai <ondrej@budai.cz>
2022-02-24 17:56:22 +00:00
Jakub Rusz
7006a53e71 tools/provision: use upstream EPEL-9
EPEL-9 now exists upstream, let's use it.
2022-02-24 17:54:30 +01:00
Sanne Raymaekers
2b5bd60141 Schutzfile: Pin centos-9 dependencies 2022-02-24 17:54:30 +01:00
schutzbot
fa589ba279 schutzfile: Update snapshots to 20220222 2022-02-24 17:54:30 +01:00
Antonio Murdaca
6a127ae1a7 ostree-simplified-installer: pin fdo-containers commit and fix selinux
Signed-off-by: Antonio Murdaca <runcom@linux.com>
2022-02-24 17:07:34 +01:00
Achilleas Koutsou
45a2c308f7 repos: bump RHEL 8.6 test repositories 2022-02-24 17:07:34 +01:00
Achilleas Koutsou
7f17757122 test: update manifests and image info
Signed-off-by: Antonio Murdaca <runcom@linux.com>
2022-02-24 17:07:34 +01:00
Antonio Murdaca
522ef73f4c internal/{8,9}: add clevis deps to simplified installer
Signed-off-by: Antonio Murdaca <runcom@linux.com>
2022-02-24 17:07:34 +01:00
yih
8d5490e209 test: add test case for fdo
Add a new test case that tests secure device onboarding for the
Edge simplified installer.
2022-02-24 17:07:34 +01:00
Antonio Murdaca
74540bcee7 distro/rhel90: add fido dracut module and enable customizing onboarding
FDO secure device onboarding support for RHEL90.

Co-Authored-By: Christian Kellner <christian@kellner.me>
2022-02-24 17:07:34 +01:00
Antonio Murdaca
e2bd3506e2 distro/rhel86: add fido dracut module and enable customizing onboarding
This patch also introduces customizations to fully enable onboarding
options for FDO.

Co-Authored-By: Christian Kellner <christian@kellner.me>
2022-02-24 17:07:34 +01:00
Christian Kellner
892cfb67cc osbuild2: add new FDOStage for org.osbuild.fdo
The stage takes no options but a single file input that contains the
root certs.
Add the stage with a helper constructor that will generate the needed
reference based on the actual certificate data.
Add corresponding tests.
2022-02-24 17:07:34 +01:00
Christian Kellner
6d383ec89a osbuild2: add org.osbuild.inline source
Add support for the `org.osbuild.inline` source via a new `InlineSource`
and the corresponding `InlineSourceItem`. A utility function `AddItem`
can be used to conveniently add items based on data (as strings).
2022-02-24 17:07:34 +01:00
Achilleas Koutsou
efbef95bf1 test: change condition for greenboot checks in ansible playbooks
Both CentOS versions are now part of the same condition.
2022-02-24 17:07:34 +01:00
Achilleas Koutsou
4ff0916caa test: update CS8 manifests and image info 2022-02-24 17:07:34 +01:00
Achilleas Koutsou
f71b4f69a8 distro/rhel86: remove greenboot condition for CS8
greenboot-default-health-checks is available in CS8 as well now.
2022-02-24 17:07:34 +01:00
Achilleas Koutsou
eda78a9a99 Update CentOS Stream 8 repositories 2022-02-24 17:07:34 +01:00
Achilleas Koutsou
fa209fe747 test: generate aarch64 image installer manifests
Added to imagetype map for test case generators and generate new
manifests.
2022-02-24 16:30:04 +01:00
Achilleas Koutsou
be0a45fe83 distro/rhel86: sort -u anaconda package set 2022-02-24 16:30:04 +01:00
Achilleas Koutsou
c4d6fcbe5b distro/rhel90: add lldpad and fcoe-utils to anaconda packages
Required by dracut modules.
2022-02-24 16:30:04 +01:00
Achilleas Koutsou
cae6a8d2b1 distro/rhel86: add lldpad to anaconda packages
Required by dracut modules.
2022-02-24 16:30:04 +01:00
Achilleas Koutsou
1762336891 distro/rhel86+90: add imageInstaller to aarch64 2022-02-24 16:30:04 +01:00
Achilleas Koutsou
07705aea7a distro/rhel90: split out arch-specific packages for anaconda 2022-02-24 16:30:04 +01:00
Achilleas Koutsou
82bec696b2 distro/rhel86+90: pipeline function rename 2022-02-24 16:30:04 +01:00
Achilleas Koutsou
9a8271a524 distro/rhel86+90: variable rename
Reflect the external name of the image type for clarity.
2022-02-24 16:30:04 +01:00
Gianluca Zuccarelli
62c44e86f9 disk: ensure minimum size for filesystems
This commit fixes #2347 by ensuring that a minimum
size of 1GB is set for all file systems. The only
exception to this is the `/usr` which is set to 2GB,
since this was the only mountpoint that was previously
being checked.
2022-02-24 11:00:35 +01:00
Gianluca Zuccarelli
ab306943d4 tests: check mountpoints with matching suffixes
Filesystem mountpoints with matching suffixes, i.e.
`/tmp` and `/var/tmp` was causing image builds to
fail. Since this was fixed with #2141 the integration
tests have been updated to check for this.
2022-02-24 11:00:35 +01:00
Gianluca Zuccarelli
4d83ae9878 distro/rhel86,rhel90: add /tmp mountpoint
The `/tmp` mountpoint was mistakenly left out
of the allowlist for previous distros. This
commit enables the ability to create the
`/tmp` filesystem for the rhel86 & rhel90
distros.
2022-02-24 11:00:35 +01:00
Sanne Raymaekers
b05723a37e templates/composer: Verify against mass sso and rh sso 2022-02-24 09:48:12 +01:00
Achilleas Koutsou
91d9417f5a distro/rhel90: use new unified grub2 stage options
With the new grub2 stage options we have the following changes to the
grub2 stage:
- Set the WriteCmdLine flag to false to not write kernel command line
  options to grubenv.
- Don't set the kernel command line options in the stage options.

The kernel command line options are now only specified in the Kernel
command line stage (org.osbuild.kernel-cmdline) so we add all options
there:
- Image type options
- Blueprint options
- Partition-table-specific options

Updated manifests and image info.

Co-Authored-By: Christian Kellner <christian@kellner.me>
2022-02-23 22:42:59 +01:00
Achilleas Koutsou
83ce9aa4ef grub2: new grub2 stage options constructor for Unified configs
New constructor for unified grub2 setups [0].  Having this separate
constructor lets us have different logic for unified and non-unified
cases and also have fewer function parameters.

[0] https://fedoraproject.org/wiki/Changes/UnifyGrubConfig

Co-Authored-By: Christian Kellner <christian@kellner.me>
2022-02-23 22:42:59 +01:00