This is needed for now because we are updating mock-core-configs,
and there is an incompatible variant of the centos-stream configuration:
https://pagure.io/copr/copr/issue/1691
The default config + command:
$ mock -r centos-8-x86_64 --install perl-Test-Harness
installs just
perl-Test-Harness-1:3.42-1.el8.noarch, not
and not
perl-Test-Harness-1:3.42-440.module_f33+9369+dac0eadc.noarch
or something alike. I think we are fine to drop the hack for rhbz#1758459.
Mock allocated 75g before, and this started to be not enough for some
projects (tmpfs resides in ram + swap). Increasing the size isn't a
huge deal for us since the major subset of builders is x86_64 and those
have pretty large (currently unused) swap disk size. For aarch64 I had
to add a bit more storage to guarantee that the large tmpfs will fit
the swap (+17%).
Fixing the following issue
Error parsing parameter '--filters': Second instance of key "Name" encountered for input:
Name=tag-key,Values=Name,Name=tag-value,Values=copr-dev-builder-x86_64-20201212_122038_399669659
^
This is often because there is a preceeding "," instead of a space.
This option is less open/permitting, but should be good enough since
we are currently running F32 builders and haven't messed with the
crypto policy value. According to
https://fedoraproject.org/wiki/Changes/StrongCryptoSettings2#Upgrade.2Fcompatibility_impact
the `DEFAULT:FEDORA32` should be the first step and only when it is
not good enough, then we should fallback to `LEGACY`.
Thank you @nirik
This works just fine now:
$ mock --enable-network -r fedora-rawhide-x86_64 --shell
...
<mock-chroot> sh-5.0# curl https://copr.fedorainfracloud.org/
curl: (6) Could not resolve host: copr.fedorainfracloud.org
Otherwise we get following error
Please login as the user "fedora" rather than the user "root".
Which messes up our variables - `$fedora` contains the `Please login
as the user "fedora" rather than the user "root".` warning and
therefore `new_volume_name` is
copr-builder-x86_64-fPlease login as the user "fedora" rather than the user "root".-20201101_155103
We don't need it ATM, and currently it often fails for some reason
(perhaps related to Fedora outages):
TASK [install the latest mock and mock-core-configs from updates-testing] ******
Friday 19 June 2020 05:54:19 +0000 (0:01:07.155) 0:07:47.913 ***********
fatal: [52.90.206.190]: FAILED! => {"changed": false, "msg": "Failure
downloading
https://kojipkgs.fedoraproject.org/packages/mock/2.2/1.fc31/noarch/mock-2.2-1.fc31.noarch.rpm,
Connection failure: The read operation timed out", "results": []}
This is another use of blacklist, but the entire workaround has
been obsolete since a day after it was added, per
https://pagure.io/fedora-infrastructure/issue/8096 . I double
checked and the mirror still exists and is still up to date.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
- don't wait too long for SSH connection timeout (set it to 60s), we
we will be restarting the build by backend when the last 4 attempts to
contact builder failed more quickly than each 2 minutes.
- make the keep alive interval much smaller than the connection timeout
is
For some reason, starting VMs sometimes fails and VM is kept idling on
in our VMs list, and we are accounted for it. This script periodically
checks the list of started VMs and terminates those which we are not
interested in.
The script requires, except for python3, also python3-dateutil.
We first run the copr-update-builder script, so it does it's work.
Then we can try to update to our own (newer only!) version of
mock-core-configs, and re-run the copr-update-builder.
We though have to stop removing the old .rpmnew files blindly, this
needs patch against copr/copr.git.
I was wrong. We actually use the root cache, because we - for each
build_chroot - build src.rpm separately, and once src.rpm is ready we
build binary rpm.
This reverts commit b768a27fafd28ab0168279c9d7d474021a1f6534.