71f61e7
@@ -1,10 +1,30 @@
+ ---
- hosts: localhost
+ tags:
+ - classic
+ tasks:
+ - dnf:
+ name: "*"
+ state: latest
+
+ - hosts: localhost
+ pre_tasks:
+ - import_role:
+ name: standard-test-source
+ vars:
+ fetch_only: True
roles:
- role: standard-test-basic
tags:
- classic
required_packages:
- rpm
+ # build-self
+ - dnf
+ - rpm-build
# clang/fedora-flags
- clang
#gcc-fedora-flags
@@ -15,5 +35,8 @@
- repo: https://src.fedoraproject.org/tests/clang.git
dest: clang
tests:
+ - build-self:
+ dir: .
+ run: "dnf -y build-dep {{ tenv_workdir }}/redhat-rpm-config.spec && rpmbuild --define '_sourcedir {{ tenv_workdir }}' -ba {{ tenv_workdir }}/redhat-rpm-config.spec"
- clang/fedora-flags
- gcc-fedora-flags
rebased onto 579de5eebdce8e95117fdeec4e238fd629126c6a
rebased onto 8f180b4c3928f2c9900ff0ddc8bac41b9da2db43
Build failed. More information on how to proceed and troubleshoot errors available at https://fedoraproject.org/wiki/Zuul-based-ci
rpm-scratch-build : FAILURE
The error was: Loading repository 'updates' has failed
Let's [recheck]
rebased onto c4ad8a8bf20b94e795ab037cd7393b38bc0664c5
I'm not aware that the tests have ever actually fully succeeded for this package. I guess fixing those would be high on the list, but I haven't learned enough about the CI system.
I am still fighting with standard-test-roles, but I think I know how to do this properly, just waiting for the tests to finish.
The failure that's always present is rpmlint only. I've tried to fix that in https://src.fedoraproject.org/rpms/redhat-rpm-config/pull-request/128 in the past.
rebased onto 9b12b19bfd543d942b2475a9d56b737dc9257132
rebased onto 68a4de8810f935c8cc57074c78b1c70db3413f43
rebased onto 43ca8ba72fef42064de8a398a3b36e51c2bac34d
This works now.
I'd probably merge this if I had any idea what was actually going on under the hood. Obviously this tries to build this package with this package installed, to make sure that the macros don't break the world (which makes sense), but I don't understand the mechanism by which the tests are run.
rebased onto 71f61e7
The mechanism is quite complex. But TLDR on pull requests here, the tests are executed via Zuul and Fedora CI using https://docs.fedoraproject.org/en-US/ci/standard-test-roles/
In here, we make sure the sources are fetched (if any) and then we invoke some bash commands to actually do the build. The installation of this package from the pull request content is all handled by the tests framework.
I've never understood how the CI is actually supposed to work since there seems to be a shortage of commits that actually pass.... But as far as I can tell this can't make anything worse.
Pull-Request has been merged by tibbs