Commit graph

123 commits

Author SHA1 Message Date
Sanne Raymaekers
6c4e5c5378 .gitlab-ci: update RHEL ga runners 2023-08-28 12:16:24 +02:00
Sanne Raymaekers
433515cff8 schutzbot: unregister test hosts 2023-08-21 18:46:55 +02:00
Jakub Rusz
4ddfe5ed0f Add jrusz ssh key to list of team keys 2023-08-14 17:39:27 +02:00
Jakub Rusz
9017408366 Update fedora-39 runners and repositories 2023-08-14 17:39:27 +02:00
Brian C. Lane
a4ee2f47b7 terraform: Use new rawhide and new RHEL 9.3 images
This uses Fedora's 20230809.n.2 cloud image with dnf5 5.1.1-1,
and new RHEL 9.3 Image Builder.
2023-08-10 13:04:14 +02:00
Brian C. Lane
43d776e55e terraform: Add f39 runners 2023-07-17 12:18:10 +02:00
Alexander Todorov
8c29e8144d CI variable name has changed,
see
25d1a458a0
2023-06-26 19:51:42 +02:00
Tomáš Hozza
9a47a56639 mockbuild.sh: retry dnf install up to 5 times
We have been observing a race condition in our CI when installing
packages at the beginning of the SUT setup. This happens only on RHEL
and it is caused by the `rhc` tool, which executes some Ansible
playbooks on system startup, which install packages using dnf. This
interferes with dnf commands ran by the `mockbuild.sh` script, which
results in a job failure.

Since there seems to be no way to determine if `rhc` finished "its
thing", let's retry dnf install of packages up to 5 times with
exponential backoff in between retries.

Signed-off-by: Tomáš Hozza <thozza@redhat.com>
2023-05-29 15:53:24 +02:00
Thomas Lavocat
8669d0ad4c ci/parallelization: manifest tests run in parallel
To avoid hitting the 4h timeout.
2023-05-23 11:52:11 +02:00
Alexander Todorov
04eab998b7 Start building osbuild on RHEL 8.9 and 9.3 nightly 2023-05-04 13:34:35 +03:00
Jakub Rusz
f2163dd950 Update terraform SHA
Centos-stream-9 images are gone for some reason, let's use new ones.
2023-05-03 16:47:47 +03:00
Tomáš Hozza
feb216c07b mockbuild.sh: use dnf to install local package, not rpm
DNF has more elaborate locking system and can wait for other instances of
itself when installing packages. Using rpm directly to install local
package is causing failures in CI due to it not being able to acquire
lock on `/var/lib/rpm/.rpm.lock`.

Using DNF should improve the situation, although there is no good
documentation to link and support this claim for sure.

Signed-off-by: Tomáš Hozza <thozza@redhat.com>
2023-04-24 21:04:45 +02:00
Tomáš Hozza
bb406d11fe CI: set up team SSH keys in before_script, not deploy.sh
This is how it is done also in osbuild-composer. The downside of doing
this in `deploy.sh` is that team SSH keys are not set as authorized for
mock-build jobs, which make it impossible to log into the machine and
debug anything.

Signed-off-by: Tomáš Hozza <thozza@redhat.com>
2023-04-24 21:04:45 +02:00
Tomáš Hozza
2d3ceab935 Good bye Lars and David 😢
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
2023-04-21 16:30:56 +02:00
Jakub Rusz
cfed69adca CI: update fedora-38 images 2023-03-28 10:02:53 +02:00
Jakub Rusz
4d5715faf1 rpmbuild: build on fedora-38 2023-03-27 14:31:52 +03:00
Thomas Lavocat
996c1ca889 ci: update terraform reference
To stop leaking CI resources, we need to be above commit sha 89fb25d15.
Update to latest reference
2023-02-23 12:48:45 +01:00
Tomáš Hozza
58579b62e9 schutzbot: add thozza's ssh key
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
2023-01-19 10:05:19 +01:00
Tomáš Hozza
89660b0c7c schutzbot: remove Christian's ssh key
Signed-off-by: Tomáš Hozza <thozza@redhat.com>
2023-01-19 10:05:19 +01:00
Tomáš Hozza
282d725f6d schutzbot/deploy.sh: don't install osbuild-composer-tests
osbuild CI tests, specifically image tests are not executing the test
script from osbuild-composer any more, but it uses manifest-db.

Therefore it is not needed to set up repository for osbuild-composer nor
install it.

Delete all unneeded lines from the script and replace them by installing
all osbuild packages needed to build images from `manifest-db`.

Signed-off-by: Tomáš Hozza <thozza@redhat.com>
2023-01-19 10:05:19 +01:00
Christian Kellner
919e03ed20 schutzbot: set the cache size for the correct store
The default cache location for `osbuild-image-test` is actually
`/var/lib/osbuild/store`. Pass that to `osbuild` when setting
the `maximum cache size to set the size for the correct location.
2022-12-09 16:44:58 +01:00
Christian Kellner
ae0680da11 osbuid: integrate FsCache into ObjectStore
Integrate the recently added file system cache `FsCache` into our
object store `ObjectStore`. NB: This changes the semantics of it:
previously a call to `ObjectStore.commit` resulted in the object
being in the cache (i/o errors aside). But `FsCache.store`, which
is now the backing store for objects, will only commit objects if
there is enough space left. Thus we cannot rely that objects are
present for reading after a call to `FsCache.store`. To cope with
this we now always copy the object into the cache, even for cases
where we previously moved it: for the case where commit is called
with `object_id` matching `Object.id`, which is the case for when
`commit` is called for last stage in the pipeline. We could keep
this optimization but then we would have to special case it and
not call `commit` for these cases but only after we exported all
objects; or in other words, after we are sure we will never read
from any committed object again. The extra complexity seems not
worth it for the little gain of the optimization.
Convert all the tests for the new semantic and also remove a lot
of them that make no sense under this new paradigm.

Add a new command line option `--cache-max-size` which will set
the maximum size of the cache, if specified.
2022-12-09 12:03:40 +01:00
Thomas Lavocat
0a5e558604 ci: use the latest terraform to fix missing images
From OSBuild-composer:

cloud-cleaner deleted all our nightly and CS9 testing images, let's replace them.
2022-11-29 11:49:51 +01:00
Thomas Lavocat
9d1eb6cecc ci: add tags to AWS instances
The new terraform runners support an extended lists of tags to get a
greater precision on the stats we can extract from AWS cost center.
2022-11-10 20:09:26 +01:00
Sanne Raymaekers
fb3ac490d5 schutzbot/mockbuild: stop running mock as root
Running mock as root is broken, this commit can be reverted once
rhbz#2135203 is fixed.
2022-10-17 18:36:02 +02:00
Jakub Rusz
c638cbcb83 rpmbuild: build rpms on RHEL 8.8 and 9.2 nightly 2022-10-14 10:24:33 +02:00
Achilleas Koutsou
4bc6e226ea rpmbuild: add fedora-37 2022-09-01 11:31:58 +02:00
Thomas Lavocat
f38ddb5f20 test: manifests testing on each PR
On each PR test that osbuild don't break the image generation by testing
against the manifest-db that the produced image-infos are still the same
as the one stored.
2022-08-30 14:42:13 +02:00
Alexander Todorov
4911ca5b65 tests: Update OSBUILD_COMPOSER_COMMIT for testing on Fedora 36 2022-07-25 15:58:43 +02:00
Jakub Rusz
7cd4b4ea66 tests: run tests on RHEL-9.1 and 8.7 nightly 2022-07-16 18:59:06 +02:00
Jakub Rusz
527be5081c rpmbuild: add fedora-36 2022-06-23 10:41:16 +02:00
Jakub Rusz
bd7d2a5628 rpmbuild: add RHEL 8.7 and 9.1 nightly 2022-06-16 14:24:02 +02:00
Jakub Rusz
1e7ba87eb7 mockbuild: update mockbuild script after RHEL-9 GA
Removing rhel-9 templates as they are shipped upstream already and
making necessary modifications to mockbuild.sh
2022-06-16 14:24:02 +02:00
Alexander Todorov
8884b4cac8 COMPOSER-1576: Start building RPMs on 8.6 & 9.0 GA 2022-06-08 14:18:42 +02:00
Jakub Rusz
008d013e1c ci: run ci-details.sh
This script collects useful information about CI runners.
2022-04-13 14:57:27 +02:00
Jakub Rusz
62f2bf608c tools: add set-env-variables.sh
Very simple script to set env variables.
2022-04-13 14:57:27 +02:00
Jakub Rusz
a5b42a84f2 mockbuild: use rpmrepo in mock templates
We're using rpmrepo snapshots as system repositories on the runners, so
let's use them also for mockbuild.
2022-04-13 14:57:27 +02:00
Jakub Rusz
8f430733c1 ci/deploy: use public EPEL-9 2022-03-02 16:59:11 +01:00
Jakub Rusz
89666714f4 rpmbuild: run on centos-9
Also update terraform SHA and EPEL installation for mockbuild.
2022-02-22 18:05:51 +00:00
Jakub Rusz
d878824696 ci: remove fedora-33 and add fedora-35 2022-02-09 10:52:21 +01:00
Jakub Rusz
df189a7301 ci: update to 8.5 ga runners 2022-02-09 10:52:21 +01:00
Jakub Rusz
860a9bb49f tests/ci: fix sonarqube analysis for main branch
Only use the branch options if it's actually running in a branch and
analyse main without them, sonarqube otherwise doesn't recognize the
main branch.
2022-02-04 12:57:36 +02:00
Jakub Rusz
b38524b7ee test/ci: fix sonarqube run on main
Minor oversight from previous commit. Specify clone depth in
.gitlab-ci.yml file instead.
2022-01-26 13:51:18 +02:00
Jakub Rusz
8bc4bff80c tests/ci: add sonarqube scan
Adding sonarqube scan to the pipeline.
2022-01-25 13:23:36 +02:00
Ondřej Budai
dccbfb5916 schutzbot: remove ssh keys of team member that left us
bye 😢

Signed-off-by: Ondřej Budai <ondrej@budai.cz>
2022-01-06 09:18:17 +01:00
Christian Kellner
0aea72e44e ci: run ostree image tests via Schutbot
OSTree tests, especially the fedora-ostree-image one, will soon
need the tight integration with the host for LVM2/LUKS support.
This we cannot run them in github action containers. Move them
to Schutzbot.
Explicitly install the new sub-package until composer gains the
needed requirement.
2021-12-09 00:44:21 +00:00
Ondřej Budai
22d1d46ec1 schutzbot: drop send_webhook.py script
It was used to trigger Jenkins but nowadays, it's useless.
2021-12-02 12:03:51 +00:00
Jakub Rusz
8d67396ff3 tests: enable testing on aarch64 RHEL
Also update osbuild-composer version.

debug: skip openstack boot on aarch64
2021-11-29 14:46:09 +01:00
Jakub Rusz
180e853c23 mockbuild: remove beta from rhel-9 template
Beta is out already, switch template to RHEL-9.
2021-11-24 13:26:54 +01:00
Jakub Rusz
de94251a32 ci: switch to rhel-9 runners
RHEL-9-Beta is no longer being developed. Switching to RHEL-9 instead.
Currently testing is not run there because of issues linked in the
comment.
2021-11-24 13:26:54 +01:00