Compare commits

...
Sign in to create a new pull request.

7 commits

Author SHA1 Message Date
Dusty Mabe
31be679394
Enable the updates archive repo on non-rawhide.
The fedora-repos-archive RPM is only installed by default in places
where it is needed (i.e. OSTree based distributions). The yum repo
file delivered by the RPM should default to being enabled when on
a numbered version of Fedora (non-rawhide). This was the original
intention when I added it a while back.

(cherry picked from commit e245df682c)
2021-04-28 10:41:48 -04:00
Mohan Boddu
c67d15a388 Setup for F34 Final
Disable testing repos

Signed-off-by: Mohan Boddu <mboddu@bhujji.com>
2021-04-12 14:33:30 -04:00
Kamil Páral
a4b16e3960 fully automate repository changes
This is a cherry-picked commit 1db958c4fb from the rawhide branch. The
purpose is to have repo updates automation in *all* branches, so that we can
massively simplify Releng's SOP docs. (If this doesn't get pushed to all
branches, the SOPs need to document both versions).

The original commit description is below:

----

Instead of performing error-prone manual changes in .repo files several times
per cycle, this patchset brings fully automated handling of such edits. All the
releng person needs to do is to set `rawhide_release` and
`updates_testing_enabled` variables (and of course adjust `Version` and
`Release`), and all the repos will be auto-magically populated with the correct
values during build (which includes `enabled=0/1` and `metadata_expire=6h/7d`).
The intention is to avoid human errors which inevitably happen (an example [1]).

This means:

* Rawhide/ELN repo files will get enabled for Rawhide builds, disabled otherwise.
* Standard repo files will get enabled for non-Rawhide builds, disabled otherwise.
* Updates-testing repo will get enabled per specified configuration (ignored on
  Rawhide).
* Base repo files will have short metadata expiration during development period
  ("Branched"), long expiration during stable period.

Everything is covered with tests, to prevent humans and automatons from doing
mistakes. That covers the automated changes to repo files, but also e.g. ensuring
that updates-testing is not enabled in a Final release by mistake.

Coupled with this changeset is an adjustment to certain repo files to make sure
all the sections defined in a single repo file have the same value
`metadata_expire=`, as it makes sense. And also in the spec file the rawhide
subpackage description was moved next to the subpackage definition, they were
split by mistake in the past, it seems.

If this gets merged, it will massively simplify Releng's Mass Branching SOP in
the future [2].

[1] https://src.fedoraproject.org/rpms/fedora-repos/c/08819dbf9428d57eedbe5cd978b516f995bb8b6a?branch=f34
[2] https://docs.pagure.org/releng/sop_mass_branching.html#fedora-repos
2021-03-26 13:34:10 +01:00
Kamil Páral
227a364fb9 sync changes from Rawhide
Most importantly the RPM-GPG-KEY-fedora-rawhide-primary symlink.

Also disable the ELN repo. This was forgotten during F34 branching.
2021-02-22 17:02:54 +01:00
Adam Williamson
08819dbf94 Actually enable the fedora repo
thrcka inadvertently left it disabled.
2021-02-11 16:21:23 -08:00
dc30ab5f3f Fix %check section for branched release
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2021-02-09 23:50:24 +01:00
1e26418cd1 Branch f34 from rawhide
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2021-02-09 16:23:37 +01:00
13 changed files with 245 additions and 47 deletions

View file

@ -0,0 +1,29 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQINBGAkKwgBEAC+IQKqp/BI1VIvRRqcnRoAxkzsY3pxIS1L+C4gaWjIMf1eBBTq
v9eKd4xHsW80VL/tl81WZWO/7JXKmgHODiXrv4HmDIOo6Z1hxehjVRF3Ih4+sKHR
XCJgwcdJnMfqTKnHiycQggeDuheWbfjV2Fgmvxy0jh0M5PCB5taNz41LmPOaUQmn
PXcI05CjP5msKjRBObw5Cd2oad60pTNhnBWRf288S8W4wH4jNISOZLZTOf6HU5gJ
w9wU9RZoaz8kZPNArlJjZsN83S0XLCxpa6UUgYdzPDHOWGtcWGs3bvNAlTYuacun
oICOvTH/ZJU7mgaZbbdSPVLDJdLBKRVgHbdTAK0J913FEiU93GJR5bf/W5FMN7DV
6hsJVMiY/knJmkTFE9whDSjEc0TAYhQuC1HnzvMPGJvkeEz9nRqna5QUuo7V6LI4
fZNTSlqFyIi/Oa3ZoliOyOshxJmU3y1HaNcHerO1nFbTtZ7s/TKBhY9oFq4T4gJV
yFWy33p/JDxOtlVjpHEkzwXGdPe6R4xK8xHObEVraOMZMaweII+tMOGwVbxZu2kC
A1aflM+oeyU1Fx9qqM0+dYyHO+kp3M5UtfM006RcNcdfoGrA4l6z9sUnHKsYzOLP
RvKkzxiX3T91vHtRGCXjPOgOsJJzjkFtE1a5oFZg39fC99HZdbX0rUqAtQARAQAB
tDFGZWRvcmEgKDM2KSA8ZmVkb3JhLTM2LXByaW1hcnlAZmVkb3JhcHJvamVjdC5v
cmc+iQJOBBMBCAA4FiEEU97Sy5Iti42eY/0YmZ98vzircfQFAmAkKwgCGw8FCwkI
BwIGFQoJCAsCBBYCAwECHgECF4AACgkQmZ98vzircfSGaxAAlDBWuY1Ch3YsssGE
uaeOuaHmDj08p08WUAFUPBN0ID+0pmRQjywFzrufw8Z2g/lHwic+tpXXr/RtMmcl
+WzLh1E34TRqEngjDJ27QBq1Jyid3h1manKLhZhJ8b1usKHP7Dqh7n+eMTv2Qgrt
6MrCNe4otWZ9WJ5vp/Bay5yAtU6lNoWBmJ+6BS1/2mg2jhoXrfg/Vey+/i6nYZIk
M4IcYCyGCi9rjc8NMgkCyzPkPJtsy2taB+VdUcZyjFpc1acmC8sR/2/SEl4+pOtM
UzW+OUOQFrerX/8MC5LqvmtsiPMyRDCOw3reJTXyoUIehoHoK9QtAdIRRP2nAkPy
GKycVzsLbtheJXUZharXL1DwOkpMNlm3hp9BxX89m7dLblMSjtrQPs8CkpAExAQW
FBltsD73ZhGnfE/XdWp7343m1w5W2m85/rczP+2et+c+HPmYTgaJTu8fAF0FoTDd
uD1r9DxRa2oN3YBiPP/nXnhJaH//GgF/RRw7Fbc66fCh8DTrMsPgmyi/O3/pdSGe
k0UqEfSdzNPbl7gVFlCbr4Ur5n1ph+sEZqOhMuyszLZZvYvUrHsDuanML5X25coP
h+rqyjHJJeYlS2tMAQB1fmHB0LWhRhKYaOROAXFmUutFUxVVoigNCl8mV561DCz6
6/zy81ZGeyUGOEIZ1NFuoY0EhC8=
=KaIq
-----END PGP PUBLIC KEY BLOCK-----

View file

@ -1,8 +1,10 @@
fedora-7-primary: i386 x86_64 ppc ppc64
fedora-8-primary: i386 x86_64 ppc ppc64
fedora-8-primary-original:
fedora-9-primary: i386 x86_64 ppc ppc64
fedora-9-primary-original:
fedora-9-secondary: ia64
fedora-10-primary: i386 x86_64 ppc ppc64
@ -19,7 +21,7 @@ fedora-13-secondary: arm mips
fedora-14-primary: i386 x86_64
fedora-14-secondary: arm
fedora-15-primary: i386 x86_64
fedora-15-primary: i386 x86_64
fedora-15-secondary: arm armhfp ppc ppc64 s390 s390x
fedora-16-primary: i386 x86_64
@ -60,6 +62,7 @@ fedora-27-primary: i386 x86_64 armhfp aarch64 ppc64 ppc64le s390x
fedora-28-primary: i386 x86_64 armhfp aarch64 ppc64 ppc64le s390x
fedora-29-primary: i386 x86_64 armhfp aarch64 ppc64 ppc64le s390x
fedora-modularity:
fedora-30-primary: i386 x86_64 armhfp aarch64 ppc64le s390x
@ -75,4 +78,4 @@ fedora-34-primary: i386 x86_64 armhfp aarch64 ppc64le s390x
fedora-35-primary: x86_64 armhfp aarch64 ppc64le s390x
fedora-eln-primary: i386 x86_64 aarch64 ppc64le s390x
fedora-36-primary: x86_64 armhfp aarch64 ppc64le s390x

View file

@ -11,18 +11,19 @@
# testing and troubleshooting for development packages in conjunction
# with new test releases.
#
# More information is available at http://fedoraproject.org/wiki/Testing
# More information is available at http://fedoraproject.org/wiki/Testing
#
# Reproducible and reportable issues should be filed at
# http://bugzilla.redhat.com/.
#
# Product: Fedora
# Version: eln
[eln-baseos]
name=Fedora - ELN BaseOS - Developmental packages for the next Enterprise Linux release
baseurl=https://odcs.fedoraproject.org/composes/production/latest-Fedora-ELN/compose/BaseOS/$basearch/os/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=eln&arch=$basearch
enabled=1
enabled=AUTO_VALUE
countme=1
metadata_expire=6h
repo_gpgcheck=0
@ -36,6 +37,7 @@ name=Fedora - ELN BaseOS - Debug
baseurl=https://odcs.fedoraproject.org/composes/production/latest-Fedora-ELN/compose/BaseOS/$basearch/debug/tree
#metalink=https://mirrors.fedoraproject.org/metalink?repo=eln-debug&arch=$basearch
enabled=0
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
@ -47,6 +49,7 @@ name=Fedora - ELN BaseOS - Source
baseurl=https://odcs.fedoraproject.org/composes/production/latest-Fedora-ELN/compose/BaseOS/source/tree/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=eln-source&arch=$basearch
enabled=0
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
@ -59,7 +62,7 @@ skip_if_unavailable=False
name=Fedora - ELN AppStream - Developmental packages for the next Enterprise Linux release
baseurl=https://odcs.fedoraproject.org/composes/production/latest-Fedora-ELN/compose/AppStream/$basearch/os/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=eln&arch=$basearch
enabled=1
enabled=AUTO_VALUE
countme=1
metadata_expire=6h
repo_gpgcheck=0
@ -73,6 +76,7 @@ name=Fedora - ELN AppStream - Debug
baseurl=https://odcs.fedoraproject.org/composes/production/latest-Fedora-ELN/compose/AppStream/$basearch/debug/tree
#metalink=https://mirrors.fedoraproject.org/metalink?repo=eln-debug&arch=$basearch
enabled=0
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
@ -84,9 +88,9 @@ name=Fedora - ELN AppStream - Source
baseurl=https://odcs.fedoraproject.org/composes/production/latest-Fedora-ELN/compose/AppStream/source/tree/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=eln-source&arch=$basearch
enabled=0
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -2,9 +2,9 @@
name=Fedora Modular $releasever - $basearch
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Modular/$basearch/os/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-$releasever&arch=$basearch
enabled=0
enabled=AUTO_VALUE
countme=1
#metadata_expire=7d
metadata_expire=AUTO_VALUE
repo_gpgcheck=0
type=rpm
gpgcheck=1
@ -16,7 +16,7 @@ name=Fedora Modular $releasever - $basearch - Debug
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Modular/$basearch/debug/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
metadata_expire=AUTO_VALUE
repo_gpgcheck=0
type=rpm
gpgcheck=1
@ -28,7 +28,7 @@ name=Fedora Modular $releasever - Source
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Modular/source/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
metadata_expire=AUTO_VALUE
repo_gpgcheck=0
type=rpm
gpgcheck=1

View file

@ -11,7 +11,7 @@
# testing and troubleshooting for development packages in conjunction
# with new test releases.
#
# More information is available at http://fedoraproject.org/wiki/Testing
# More information is available at http://fedoraproject.org/wiki/Testing
#
# Reproducible and reportable issues should be filed at
# http://bugzilla.redhat.com/.
@ -23,13 +23,13 @@
name=Fedora - Modular Rawhide - Developmental packages for the next Fedora release
#baseurl=http://download.example/pub/fedora/linux/development/rawhide/Modular/$basearch/os/
metalink=https://mirrors.fedoraproject.org/metalink?repo=rawhide-modular&arch=$basearch
enabled=1
enabled=AUTO_VALUE
countme=1
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch AUTO_VALUE
skip_if_unavailable=False
[rawhide-modular-debuginfo]
@ -37,10 +37,11 @@ name=Fedora - Modular Rawhide - Debug
#baseurl=http://download.example/pub/fedora/linux/development/rawhide/Modular/$basearch/debug/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=rawhide-modular-debug&arch=$basearch
enabled=0
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch AUTO_VALUE
skip_if_unavailable=False
[rawhide-modular-source]
@ -48,9 +49,9 @@ name=Fedora - Modular Rawhide - Source
#baseurl=http://download.example/pub/fedora/linux/development/rawhide/Modular/source/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=rawhide-modular-source&arch=$basearch
enabled=0
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch AUTO_VALUE
skip_if_unavailable=False

View file

@ -11,7 +11,7 @@
# testing and troubleshooting for development packages in conjunction
# with new test releases.
#
# More information is available at http://fedoraproject.org/wiki/Testing
# More information is available at http://fedoraproject.org/wiki/Testing
#
# Reproducible and reportable issues should be filed at
# http://bugzilla.redhat.com/.
@ -23,13 +23,13 @@
name=Fedora - Rawhide - Developmental packages for the next Fedora release
#baseurl=http://download.example/pub/fedora/linux/development/rawhide//Everything/$basearch/os/
metalink=https://mirrors.fedoraproject.org/metalink?repo=rawhide&arch=$basearch
enabled=1
enabled=AUTO_VALUE
countme=1
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch AUTO_VALUE
skip_if_unavailable=False
[rawhide-debuginfo]
@ -37,10 +37,11 @@ name=Fedora - Rawhide - Debug
#baseurl=http://download.example/pub/fedora/linux/development/rawhide/Everything/$basearch/debug/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=rawhide-debug&arch=$basearch
enabled=0
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch AUTO_VALUE
skip_if_unavailable=False
[rawhide-source]
@ -48,9 +49,9 @@ name=Fedora - Rawhide - Source
#baseurl=http://download.example/pub/fedora/linux/development/rawhide/Everything/source/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=rawhide-source&arch=$basearch
enabled=0
metadata_expire=6h
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch AUTO_VALUE
skip_if_unavailable=False

View file

@ -1,9 +1,10 @@
%global rawhide_release 34
%global rawhide_release 35
%global updates_testing_enabled 0
Summary: Fedora package repositories
Name: fedora-repos
Version: 34
Release: 0.10%{?eln:.eln%{eln}}
Release: 2%{?eln:.eln%{eln}}
License: MIT
URL: https://fedoraproject.org/
@ -72,6 +73,10 @@ Source52: RPM-GPG-KEY-fedora-32-primary
Source53: RPM-GPG-KEY-fedora-33-primary
Source54: RPM-GPG-KEY-fedora-34-primary
Source55: RPM-GPG-KEY-fedora-35-primary
Source56: RPM-GPG-KEY-fedora-36-primary
# When bumping Rawhide to fN, create N+1 key (and update archmap). (This
# ensures users have the next future key installed and referenced, even if they
# don't update very often. This will smooth out Rawhide N->N+1 transition for them).
Source100: fedora-modular.repo
Source101: fedora-updates-modular.repo
@ -102,6 +107,9 @@ Summary: Rawhide repo definitions
Requires: fedora-repos = %{version}-%{release}
Obsoletes: fedora-repos-rawhide < 33-0.7
%description rawhide
This package provides the rawhide repo definitions.
%package archive
Summary: Fedora updates archive package repository
Requires: fedora-repos = %{version}-%{release}
@ -111,9 +119,6 @@ This package provides the repo definition for the updates archive repo.
It is a package repository that contains any RPM that has made it to
stable in Bodhi and been available in the Fedora updates repo in the past.
%description rawhide
This package provides the rawhide repo definitions.
%package rawhide-modular
Summary: Rawhide modular repo definitions
Requires: fedora-repos = %{version}-%{release}
@ -162,12 +167,18 @@ install -m 644 %{_sourcedir}/RPM-GPG-KEY* $RPM_BUILD_ROOT/etc/pki/rpm-gpg/
# says "fedora-19-primary: i386 x86_64",
# RPM-GPG-KEY-fedora-19-{i386,x86_64} will be symlinked to that key.
pushd $RPM_BUILD_ROOT/etc/pki/rpm-gpg/
# Also add a symlink for ELN keys
# Also add a symlink for Rawhide and ELN keys
ln -s RPM-GPG-KEY-fedora-%{rawhide_release}-primary RPM-GPG-KEY-fedora-rawhide-primary
ln -s RPM-GPG-KEY-fedora-%{rawhide_release}-primary RPM-GPG-KEY-fedora-eln-primary
for keyfile in RPM-GPG-KEY*; do
key=${keyfile#RPM-GPG-KEY-} # e.g. 'fedora-20-primary'
arches=$(sed -ne "s/^${key}://p" %{_sourcedir}/archmap) \
|| echo "WARNING: no archmap entry for $key"
# resolve symlinks, so that we don't need to keep duplicate entries in archmap
real_keyfile=$(basename $(readlink -f $keyfile))
key=${real_keyfile#RPM-GPG-KEY-} # e.g. 'fedora-20-primary'
if ! grep -q "^${key}:" %{_sourcedir}/archmap; then
echo "ERROR: no archmap entry for $key"
exit 1
fi
arches=$(sed -ne "s/^${key}://p" %{_sourcedir}/archmap)
for arch in $arches; do
# replace last part with $arch (fedora-20-primary -> fedora-20-$arch)
ln -s $keyfile ${keyfile%%-*}-$arch # NOTE: RPM replaces %% with %
@ -177,11 +188,58 @@ done
ln -s RPM-GPG-KEY-fedora-%{version}-primary RPM-GPG-KEY-%{version}-fedora
popd
# Install repo files
install -d -m 755 $RPM_BUILD_ROOT/etc/yum.repos.d
for file in %{_sourcedir}/fedora*repo ; do
install -m 644 $file $RPM_BUILD_ROOT/etc/yum.repos.d
done
# Enable or disable repos based on current release cycle state.
%if %{rawhide_release} == %{version}
rawhide_enabled=1
stable_enabled=0
testing_enabled=0
archive_enabled=0
%else
rawhide_enabled=0
stable_enabled=1
testing_enabled=%{updates_testing_enabled}
archive_enabled=1
%endif
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora-{rawhide,eln}*.repo; do
sed -i "s/^enabled=AUTO_VALUE$/enabled=${rawhide_enabled}/" $repo || exit 1
done
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora{,-modular,-updates,-updates-modular}.repo; do
sed -i "s/^enabled=AUTO_VALUE$/enabled=${stable_enabled}/" $repo || exit 1
done
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora-updates-testing{,-modular}.repo; do
sed -i "s/^enabled=AUTO_VALUE$/enabled=${testing_enabled}/" $repo || exit 1
done
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora-updates-archive.repo; do
sed -i "s/^enabled=AUTO_VALUE$/enabled=${archive_enabled}/" $repo || exit 1
done
# Adjust Rawhide repo files to include Rawhide+1 GPG key.
# This is necessary for the period when Rawhide gets bumped to N+1 and packages
# start to be signed with a newer key. Without having the key specified in the
# repo file, the system would consider the new packages as untrusted.
rawhide_next=$((%{rawhide_release}+1))
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora-rawhide*.repo; do
sed -i "/^gpgkey=/ s@AUTO_VALUE@file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-${rawhide_next}-\$basearch@" \
$repo || exit 1
done
# Set appropriate metadata_expire in base repo files (6h before Final, 7d after)
%if "%{release}" < "1"
expire_value='6h'
%else
expire_value='7d'
%endif
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora{,-modular}.repo; do
sed -i "/^metadata_expire=/ s/AUTO_VALUE/${expire_value}/" \
$repo || exit 1
done
# Install ostree remote config
install -d -m 755 $RPM_BUILD_ROOT/etc/ostree/remotes.d/
install -m 644 %{_sourcedir}/fedora.conf $RPM_BUILD_ROOT/etc/ostree/remotes.d/
@ -189,13 +247,95 @@ install -m 644 %{_sourcedir}/fedora-compose.conf $RPM_BUILD_ROOT/etc/ostree/remo
%check
# assert all rawhide/eln repos are set to enabled only when this is rawhide
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora-{rawhide,eln}*.repo; do
%if %{rawhide_release} == %{version}
grep 'enabled=1' $repo
%else
grep 'enabled=1' $repo && exit 1 || :
%endif
# Make sure all repo variables were substituted
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/*.repo; do
if grep -q AUTO_VALUE $repo; then
echo "ERROR: Repo $repo contains an unsubstituted placeholder value"
exit 1
fi
done
# Make sure correct repos were enabled/disabled
enabled_repos=(fedora-cisco-openh264)
disabled_repos=()
%if %{rawhide_release} == %{version}
enabled_repos+=(fedora-rawhide fedora-rawhide-modular fedora-eln)
disabled_repos+=(fedora fedora-modular fedora-updates fedora-updates-archive \
fedora-updates-modular fedora-updates-testing fedora-updates-testing-modular)
%else
enabled_repos+=(fedora fedora-modular fedora-updates fedora-updates-archive \
fedora-updates-modular)
disabled_repos+=(fedora-rawhide fedora-rawhide-modular fedora-eln)
%if %{updates_testing_enabled}
enabled_repos+=(fedora-updates-testing fedora-updates-testing-modular)
%else
disabled_repos+=(fedora-updates-testing fedora-updates-testing-modular)
%endif
%endif
for repo in ${enabled_repos[@]}; do
if ! grep -q 'enabled=1' $RPM_BUILD_ROOT/etc/yum.repos.d/${repo}.repo; then
echo "ERROR: Repo $repo should have been enabled, but it isn't"
exit 1
fi
done
for repo in ${disabled_repos[@]}; do
if grep -q 'enabled=1' $RPM_BUILD_ROOT/etc/yum.repos.d/${repo}.repo; then
echo "ERROR: Repo $repo should have been disabled, but it isn't"
exit 1
fi
done
# Make sure updates-testing is not enabled in a Final (stable) release
%if "%{release}" >= "1"
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora-updates-testing{,-modular}.repo; do
if grep -q 'enabled=1' $repo; then
echo "ERROR: Repo $repo should be disabled in a stable release, but it isn't"
exit 1
fi
done
%endif
# Make sure metadata_expire was correctly set
%if "%{release}" < "1"
expire_value='6h'
%else
expire_value='7d'
%endif
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora{,-modular}.repo; do
lines=$(grep '^metadata_expire=' $repo | sort | uniq)
if [ "$(echo "$lines" | wc -l)" -ne 1 ]; then
echo "ERROR: Non-matching metadata_expire lines in $repo: $lines"
exit 1
fi
if test "$lines" != "metadata_expire=${expire_value}"; then
echo "ERROR: Wrong metadata_expire value in $repo: $lines"
exit 1
fi
done
# Make sure the Rawhide+1 key wasn't forgotten to be created
rawhide_next=$((%{rawhide_release}+1))
test -n "$rawhide_next" || exit 1
if ! test -f $RPM_BUILD_ROOT/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-${rawhide_next}-primary; then
echo "ERROR: GPG key for Fedora ${rawhide_next} is not present"
exit 1
fi
# Make sure the Rawhide+1 key is present in Rawhide repo files
for repo in $RPM_BUILD_ROOT/etc/yum.repos.d/fedora-rawhide*.repo; do
gpg_lines=$(grep '^gpgkey=' $repo)
if test -z "$gpg_lines"; then
echo "ERROR: No gpgkey= lines in $repo"
exit 1
fi
while IFS= read -r line; do
if ! echo "$line" | grep -q "RPM-GPG-KEY-fedora-${rawhide_next}"; then
echo "ERROR: Fedora ${rawhide_next} GPG key missing in $repo"
exit 1
fi
done <<< "$gpg_lines"
done
@ -236,6 +376,26 @@ done
%changelog
* Wed Apr 28 2021 Dusty Mabe <dusty@dustymabe.com> - 34-2
- Enable the updates archive repo on non-rawhide.
* Mon Apr 12 2021 Mohan Boddu <mboddu@bhujji.com> - 34-1
- Setup for F34 Final
- Disable testing repos
* Mon Feb 22 2021 Kamil Páral <kparal@redhat.com> - 34-0.14
- Sync changes from Rawhide (the rawhide gpg symlink), disable ELN repo
* Thu Feb 11 2021 Adam Williamson <awilliam@redhat.com> - 34-0.13
- Actually enable fedora repo
* Tue Feb 09 2021 Tomas Hrcka <thrcka@redhat.com> - 34-0.12
- Fixing test
* Tue Feb 09 2021 Tomas Hrcka <thrcka@redhat.com> - 34-0.11
- Disable rawhide repos
- Enable fedora, updates, updates-testing repos
* Tue Feb 09 2021 Mohan Boddu <mboddu@bhujji.com> - 34-0.10
- Fixing archmap for F35

View file

@ -12,7 +12,7 @@
[updates-archive]
name=Fedora $releasever - $basearch - Updates Archive
baseurl=https://fedoraproject-updates-archive.fedoraproject.org/fedora/$releasever/$basearch/
enabled=0
enabled=AUTO_VALUE
metadata_expire=6h
repo_gpgcheck=0
type=rpm

View file

@ -2,7 +2,7 @@
name=Fedora Modular $releasever - $basearch - Updates
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Modular/$basearch/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-modular-f$releasever&arch=$basearch
enabled=0
enabled=AUTO_VALUE
countme=1
repo_gpgcheck=0
type=rpm

View file

@ -2,7 +2,7 @@
name=Fedora Modular $releasever - $basearch - Test Updates
#baseurl=http://download.example/pub/fedora/linux/updates/testing/$releasever/Modular/$basearch/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-modular-f$releasever&arch=$basearch
enabled=0
enabled=AUTO_VALUE
countme=1
repo_gpgcheck=0
type=rpm

View file

@ -2,7 +2,7 @@
name=Fedora $releasever - $basearch - Test Updates
#baseurl=http://download.example/pub/fedora/linux/updates/testing/$releasever/Everything/$basearch/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch
enabled=0
enabled=AUTO_VALUE
countme=1
repo_gpgcheck=0
type=rpm

View file

@ -2,7 +2,7 @@
name=Fedora $releasever - $basearch - Updates
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Everything/$basearch/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
enabled=0
enabled=AUTO_VALUE
countme=1
repo_gpgcheck=0
type=rpm

View file

@ -2,9 +2,9 @@
name=Fedora $releasever - $basearch
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
enabled=0
enabled=AUTO_VALUE
countme=1
#metadata_expire=7d
metadata_expire=AUTO_VALUE
repo_gpgcheck=0
type=rpm
gpgcheck=1
@ -16,7 +16,7 @@ name=Fedora $releasever - $basearch - Debug
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Everything/$basearch/debug/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
metadata_expire=AUTO_VALUE
repo_gpgcheck=0
type=rpm
gpgcheck=1
@ -28,7 +28,7 @@ name=Fedora $releasever - Source
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Everything/source/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
metadata_expire=AUTO_VALUE
repo_gpgcheck=0
type=rpm
gpgcheck=1