feat(mock-configs): i386 multilib support (#1569)

* feat(mock-configs): i386 multilib support

* missing 40 mock files

* bad date

* feat: pull from Fedora Koji for i686

* fix: jinja2 templating

---------

Co-authored-by: Cappy Ishihara <cappy@cappuchino.xyz>
This commit is contained in:
madomado
2024-07-19 14:28:09 +08:00
committed by GitHub
parent d2e807b9e8
commit eecfb3d46d
7 changed files with 61 additions and 26 deletions
@@ -0,0 +1,5 @@
config_opts['releasever'] = '39'
config_opts['target_arch'] = 'i686'
config_opts['legal_host_arches'] = ('i386', 'i586', 'i686', 'x86_64')
include('templates/terra.tpl')
@@ -1,4 +1,4 @@
config_opts['releasever'] = '38'
config_opts['releasever'] = '40'
config_opts['target_arch'] = 'aarch64'
config_opts['legal_host_arches'] = ('aarch64',)
@@ -0,0 +1,5 @@
config_opts['releasever'] = '40'
config_opts['target_arch'] = 'i686'
config_opts['legal_host_arches'] = ('i386', 'i586', 'i686', 'x86_64')
include('templates/terra.tpl')
@@ -1,4 +1,4 @@
config_opts['releasever'] = '38'
config_opts['releasever'] = '40'
config_opts['target_arch'] = 'x86_64'
config_opts['legal_host_arches'] = ('x86_64',)
+23 -23
View File
@@ -1,17 +1,20 @@
Name: terra-mock-configs
Version: 9
Version: 11
Release: 1%{?dist}
Summary: Mock configs for Terra repos
License: MIT
URL: https://terra.fyralabs.com
Source0: terra.tpl
Source1: terra-38-x86_64.cfg
Source2: terra-38-aarch64.cfg
Source3: terra-39-x86_64.cfg
Source4: terra-39-aarch64.cfg
Source5: terra-rawhide-x86_64.cfg
Source6: terra-rawhide-aarch64.cfg
Source5: terra-40-x86_64.cfg
Source6: terra-40-aarch64.cfg
Source7: terra-40-i386.cfg
Source8: terra-39-i386.cfg
Source9: terra-rawhide-x86_64.cfg
Source10: terra-rawhide-aarch64.cfg
Source11: terra-rawhide-i386.cfg
BuildRequires: mock-core-configs
Requires: mock-core-configs
@@ -32,35 +35,32 @@ Obsoletes: anda-mock-configs < 3-2%{?dist}
mkdir -p %{buildroot}%{_sysusersdir}
mkdir -p %{buildroot}%{_sysconfdir}/mock/templates
cp -v %{SOURCE0} %{buildroot}%{_sysconfdir}/mock/templates/
cp -v %{SOURCE1} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE2} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE3} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE4} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE5} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE6} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE7} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE8} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE9} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE10} %{buildroot}%{_sysconfdir}/mock/
cp -v %{SOURCE11} %{buildroot}%{_sysconfdir}/mock/
# For legacy compatibility, only while Terra 38 is still alive
ln -s %{_sysconfdir}/mock/templates/terra.tpl %{buildroot}%{_sysconfdir}/mock/templates/anda.tpl
ln -s %{_sysconfdir}/mock/terra-38-x86_64.cfg %{buildroot}%{_sysconfdir}/mock/anda-38-x86_64.cfg
ln -s %{_sysconfdir}/mock/terra-38-aarch64.cfg %{buildroot}%{_sysconfdir}/mock/anda-38-aarch64.cfg
%files
%config %{_sysconfdir}/mock/templates/terra.tpl
%config %{_sysconfdir}/mock/terra-rawhide-x86_64.cfg
%config %{_sysconfdir}/mock/terra-rawhide-aarch64.cfg
%config %{_sysconfdir}/mock/terra-39-x86_64.cfg
%config %{_sysconfdir}/mock/terra-39-aarch64.cfg
%config %{_sysconfdir}/mock/terra-38-x86_64.cfg
%config %{_sysconfdir}/mock/terra-38-aarch64.cfg
%config %{_sysconfdir}/mock/templates/anda.tpl
%config %{_sysconfdir}/mock/anda-38-x86_64.cfg
%config %{_sysconfdir}/mock/anda-38-aarch64.cfg
%config %{_sysconfdir}/mock/terra-*-x86_64.cfg
%config %{_sysconfdir}/mock/terra-*-aarch64.cfg
%config %{_sysconfdir}/mock/terra-*-i386.cfg
%changelog
* Mon Jan 15 2024 madonuko <mado@fyralabs.com> - 9.1
- Update for Terra rawhide
* Thu Jul 18 2024 Cappy Ishihara <cappy@fyralabs.com> - 11-1
- Include multilib mock files for x86-based systems (backwards compatibility)
* Wed Jul 10 2024 madonuko <mado@fyralabs.com> - 10-1
- Include mock files for Terra 40
- Remove mock files for Terra 38
* Mon Jan 08 2024 Lleyton Gray <lleyton@fyralabs.com> - 7-1
- Bump ccache max size to 10G
@@ -0,0 +1,5 @@
config_opts['releasever'] = 'rawhide'
config_opts['target_arch'] = 'i686'
config_opts['legal_host_arches'] = ('i386', 'i586', 'i686', 'x86_64')
include('templates/terra.tpl')
+21 -1
View File
@@ -5,7 +5,7 @@ config_opts['chroot_setup_cmd'] = 'install @buildsys-build'
config_opts['package_manager'] = 'dnf5'
config_opts['extra_chroot_dirs'] = [ '/run/lock', ]
config_opts['bootstrap_image'] = 'registry.fedoraproject.org/fedora:{{ releasever }}'
config_opts['mirrored'] = True
config_opts['mirrored'] = config_opts['target_arch'] != 'i686'
config_opts['plugin_conf']['root_cache_enable'] = True
config_opts['plugin_conf']['yum_cache_enable'] = True
config_opts['plugin_conf']['ccache_enable'] = True
@@ -43,6 +43,26 @@ enabled=1
enabled_metadata=1
metadata_expire=4h
# Only used for multilib builds, pulls straight from fedora koji
# Use /rawhide/latest instead of /f{{ releasever }}-build/latest for rawhide
[local-f{{ releasever }}-build]
name=local
baseurl=https://kojipkgs.fedoraproject.org/repos/f{{ releasever }}-build/latest/$basearch/
cost=2000
# enabled only if not mirrored, and not rawhide
enabled={% if not mirrored and releasever != 'rawhide' %}1{% else %}0{% endif %}
skip_if_unavailable=False
[local-rawhide-build]
name=local-rawhide
baseurl=https://kojipkgs.fedoraproject.org/repos/rawhide/latest/$basearch/
cost=2000
# enabled only if not mirrored, and rawhide
enabled={% if not mirrored and releasever == 'rawhide' %}1{% else %}0{% endif %}
skip_if_unavailable=False
{% if mirrored %}
[fedora]