Commit graph

186 commits

Author SHA1 Message Date
Antonio Murdaca
64f1ff498b re-enable cs9 runner for simplified installer
Signed-off-by: Antonio Murdaca <antoniomurdaca@gmail.com>
2022-12-01 11:51:58 +01:00
Jakub Rusz
a23b1c4b3e rpmbuild: build rpms on RHEL 8.8 and 9.2 2022-10-14 12:25:36 +02:00
Xiaofeng Wang
989c64040c test: Add Fedora 36 and 37 and remove 35 test for ostree.sh 2022-10-03 12:21:39 +02:00
Achilleas Koutsou
9f3da4511e CI: enable ostree-ng (with installer) on F36 and F37 2022-09-29 18:09:38 +02:00
Antonio Murdaca
688856ec1e disable cs9 tests for simplified installer
Due to https://bugzilla.redhat.com/show_bug.cgi?id=2124735 and https://bugzilla.redhat.com/show_bug.cgi?id=2108646
we can't really go ahead with cs9 so disable it and investigate further afterwards.

Signed-off-by: Antonio Murdaca <runcom@linux.com>
2022-09-22 10:20:27 +02:00
Achilleas Koutsou
632f371a08 test: add iot-commit to api tests by name 2022-09-20 18:29:28 +02:00
yih
f606e4c054 test iot-raw-image on fedora37 2022-09-13 16:06:19 +01:00
Ondřej Budai
e2a298723e ci: enable fedora 37 tests
Signed-off-by: Ondřej Budai <ondrej@budai.cz>
2022-09-13 16:06:19 +01:00
Jakub Rusz
63a57ed383 CI: Introduce x86_64 rules
We have recently added testing on aarch64 but not all of the test are
supported on that architecture. Adding specific rules for all and x86_64
arches to simplify which test jobs run on what arches.
2022-09-12 13:02:41 +02:00
Alexander Todorov
769ffc617d tests: Execute vmware testing only on x86_64 2022-09-09 10:49:41 +03:00
Alexander Todorov
3b16145ec9 tests: Terraform RPM available only on x86_64
according to
https://www.hashicorp.com/blog/announcing-the-hashicorp-linux-repository
https://discuss.hashicorp.com/t/rhel-8-aarch64-rpms/24244/3

and
https://github.com/hashicorp/packer/issues/11516

Don't execute azure.sh if the runner is not x86_64
2022-09-09 10:49:41 +03:00
Alexander Todorov
c4f8947e73 Enable integration testing on aarch64
NOTE: yaml can merge maps but not sequences
2022-09-09 10:49:41 +03:00
Diaa Sami
a6e11b6b3d tests: add aarch64 rhel-9.0 runner to API tests 2022-09-02 10:01:30 +02:00
Diaa Sami
615b9ca5f5 .gitlab-ci: add rhel-8.6-ga-aarch64 runner for AWS API tests 2022-08-31 15:41:13 +02:00
Jakub Rusz
38e0894fd8 CI: update test execution on nightly pipelines
We don't support regression-bigiso and koji tests in nightly pipelines
so don't run them.
2022-08-29 12:51:59 +02:00
Juan Abia
1873c561cf test: disable non supported tests
some scripts skip the test if it's not supported for that
distro-version. Disable them in gitlab-ci.yml so we don't waste CI
resources.

To disable them, we are using the `rules` on each job with a regex
pattern. Using `=~` (pattern matches) as a  WHITELIST and `!~` (pattern
does not match) as a BLACKLIST.
2022-08-24 19:37:43 +02:00
Alexander Todorov
239e8ccbc0 ci: Update runner to RHEL 9.1 to enable test in nightly pipeline 2022-08-16 18:26:28 +03:00
Alexander Todorov
860b122f2c tests: Remove useless JSON file overrides
See comment
https://github.com/osbuild/osbuild-composer/pull/2881/files#r940065803

for explanation why
2022-08-10 16:33:34 +03:00
Jakub Rusz
738e6877e0 tests/ostree-rebase: split to uefi and bios
This test used to spawn two VMs at the same time which requires more
memory than the Openstack ci medium runner can provide. We want to be
using only medium runners so this change is necesasry to allow that.
2022-08-08 11:32:03 +02:00
Jakub Rusz
490a872bfc CI: add 1 retry
There are several reasons a CI job can fail, mostly infra issue,
openstack issue, other random issues which are not test failures and so
restarting once in case of failure should reduce the ammount of time
people are investigating these test unrelated failures. Also add
interruptibble:true to init to make it actually work for the rest of the
jobs.
2022-08-08 11:32:03 +02:00
Jakub Rusz
53458ed400 CI: use only medium runners on Openstack
The execution time seems to be 10% longer at worst and this will allow
us to safely increase the number of concurent Openstack jobs by 75 %
(from 40 to 70)
2022-08-08 11:32:03 +02:00
Gianluca Zuccarelli
6ed9e48d87 ci: add OpenSCAP tests 2022-08-04 18:19:06 +02:00
Ygal Blum
1847a6ae05 tests/api: add container related test
Add a new cloud API test that will build an edge-container,
upload it to the gitlab CI registry, fetch it from there,
run it and compare that the OSTree commit contained in it
is indeed the one we expect.

Co-Developed-By: Christian Kellner <christian@kellner.me>
2022-08-01 21:50:03 +01:00
Jakub Rusz
cf562dbb57 CI: drop /tmp/artifacts upload to Gitlab
Contents of this folder are uploaded to S3 with shutzbot/upload_artifacts.sh
Also fixing epel installation in the mentioned script.
2022-07-26 17:08:32 +02:00
Achilleas Koutsou
f3c166c3fd CI: fix artifact collection for diff-manifests 2022-07-25 21:23:02 +02:00
Tomas Hozza
5f3f477d47 CI: test cloud upload for Koji composes
Test the functionality only on RHEL-8.6, since this is the version that
Brew workers use. Test only RHUI images, because these will be the ones
to be used with this functionality.
2022-07-22 11:39:49 +01:00
Christian Kellner
de72b36ddd ci: test container embedding on CentOS stream 8
Now that we have enabled container embedding on RHEL 8, let's
also test it there.
We also pin it for Fedora and RHEL/CS 9 to be able to use the
new `org.osbuild.containers.storage.conf` stage.
2022-07-21 13:32:07 +02:00
Christian Kellner
6ee4da1bd5 ci: add container embedding test case
Add a new test case that embeds an existing container store in our
gitlab ci registry into a qcow2 image. It uses `image-info` to
verify that the container, with the expected id, is indeed embedded
in the resulting image.
2022-07-21 13:32:07 +02:00
Jakub Rusz
f93b38c1a8 CI: fix ci_details artifact placement
The output of the ci_details.sh needs to be placed in the /tmp/artifacts
in order to be uploaded with the rest of the artifacts.
2022-07-21 13:17:45 +02:00
Alexander Todorov
6e6f595c1a ci: Disable some Fedora-36 OStree testing due to #2702 2022-07-21 12:19:38 +03:00
Alexander Todorov
4dab7b74cf COMPOSER-1623: Enable Fedora 36 testing 2022-07-21 12:19:38 +03:00
Ondřej Budai
74eb3860df internal: remove kojiapi
We no longer use it, let's remove it. If you are wondering what to use instead,
use Cloud API. It supports everything that Koji API supported and more.

Signed-off-by: Ondřej Budai <ondrej@budai.cz>
2022-07-19 16:00:52 +02:00
Jakub Rusz
efbd5ebd7b ci/tests: Change the way artifacts are collected
We want to be able to safely gather any artifacts without worrying about
any possible secrets leaking. Every artifacts that we want to upload
will now have to be placed in /tmp/artifacts which will then be uploaded
to S3 by the executor and link to the artifacts will be provided in the
logs. Only people with access to our AWS account can see them.
2022-07-18 11:33:57 +03:00
Achilleas Koutsou
2c2d4812d4 CI: bring back tests on RHEL 8.4
We stopped testing on RHEL 8.4 because it wasn't changing, but now it
will be (or might) since it lives inside the common rhel8 package.
Testing the distro ensures we don't break it.  RHEL 8.4 is still
supported as EUS.

We will soon change the distro definition to specifically build 8.4 EUS.

Pin osbuild version for RHEL 8.4.

Change the ostree test to support 8.4 (and not 8.5).
2022-07-08 09:30:34 +01:00
Jakub Rusz
3547764687 CI: Don't run ContainerUpload job on scheduled pipelines 2022-07-01 13:00:52 +03:00
Christian Kellner
dbd2ed6cc8 ci: add new container uploading test
Add a new integration test that will create a fedora container and
upload it to the gitlab container registry.
2022-06-29 10:02:46 +02:00
Jakub Rusz
8fef39c4cf rpmbuild: add fedora-36 2022-06-23 12:30:20 +02:00
Jakub Rusz
81c66b5128 CI: move centos out of RHEL runners
We have this lits of separate RHEL runners only to build test rpms
during nightly pipelines.
2022-06-21 10:40:58 +02:00
Alexander Todorov
8c03162867 COMPOSER-1576: Switch to latest RHEL versions for testing 2022-06-21 10:40:58 +02:00
Achilleas Koutsou
e8d6dee9ac CI: run the new test script on gitlab
We only need one runner and it should use the internal network for
access to all repositories.

Set a rule so it doesn't run on 'main' (makes no sense).

Set git depth to 500:
We need a long history in order to find the merge-base between the PR
and 'main'.  It's unclear whether there's a straightforward way to find
the depth of the PR to limit the clone depth accurately.  500 should be
enough for any PR (I'd hate to see a PR that makes this statement
false).
2022-06-21 09:50:45 +02:00
Achilleas Koutsou
1ae0a5f469 CI: run the new regression test (insecure-repo)
Run on 9.0 GA only.  Running it on more than one distro is unnecessary.
2022-06-15 20:13:47 +02:00
Juan Abia
135d28bc9f remove cloud-cleaner in favour of scheduled cloud cleaner
from now on, we will run schedules cloud cleaner every ~1h, so there's
no need to run cloud cleaner.
2022-06-14 10:41:18 +02:00
Tomas Hozza
c035e78182 CI: keep testing Koji integration with kojiapi
The internal composer instance still uses kojiapi for Brew builds,
instead of the cloudapi. Keep testing Koji builds via both APIs for now
to ensure that everything works.
2022-06-10 14:48:18 +01:00
Juan Abia
c255267d96 save report.html from cloud-image-val as an artifact 2022-06-08 16:14:35 +02:00
Alexander Todorov
857d352325 ci: Comment out job which doesn't have any runners 2022-06-06 12:53:43 +02:00
Alexander Todorov
84d5bc7a22 ci: Disable 8.6-nightly and 9.0-nightly test jobs
to avoid interference with 8.6 and 9.0 GA builds/repos
2022-06-06 12:53:43 +02:00
Alexander Todorov
ee044a50bb COMPOSER-1576: Start building RPMs on 8.6 and 9.0 GA before we can test 2022-06-06 12:53:43 +02:00
Alexander Todorov
807804ba54 COMPOSER-1593: Retire the use of Fedora 34 in CI
we already use Fedora 35 anyway
2022-06-06 12:53:43 +02:00
Ygal Blum
feb357e538 Support Generic S3 upload in Composer API
Use case
--------
If Endpoint is not set and Region is - upload to AWS S3
If both the Endpoint and Region are set - upload the Generic S3 via Weldr API
If neither the Endpoint and Region are set - upload the Generic S3 via Composer API (use configuration)

jobimpl-osbuild
---------------
Add configuration fields for Generic S3 upload
Support S3 upload requests coming from Weldr or Composer API to either AWS or Generic S3
Weldr API for Generic S3 requires that all connection parameters but the credentials be passed in the API call
Composer API for Generic S3 requires that all conneciton parameters are taken from the configuration
Adjust to the consolidation in Target and UploadOptions

Target and UploadOptions
------------------------
Add the fields that were specific to the Generic S3 structures to the AWS S3 one
Remove the structures for Generic S3 and always use the AWS S3 ones

Worker Main
-----------
Add Endpoint, Region, Bucket, CABundle and SkipSSLVerification to the configuration structure
Pass the values to the Server

Weldr API
---------
Keep the generic.s3 provider name to maintain the API, but unmarshel into awsS3UploadSettings

tests - api.sh
--------------
Allow the caller to specifiy either AWS or Generic S3 upload targets for specific image types
Implement the pieces required for testing upload to a Generic S3 service
In some cases generalize the AWS S3 functions for reuse

GitLab CI
---------
Add test case for api.sh tests with edge-commit and generic S3
2022-06-02 16:12:53 +03:00
Achilleas Koutsou
6019a5022f test: remove generation.sh
The script would test if the test case generation script when the script
would run normally if the osbuild-dnf-json.service was stopped.
This is no longer necessary.
2022-06-01 11:36:52 +01:00