Compare commits
2 Commits
c8
...
a8-upstrea
Author | SHA1 | Date | |
---|---|---|---|
|
0636255067 | ||
|
f3fac85068 |
568
SOURCES/0100-Allow-upgrades-of-almalinux-AlmaLinux-OS.patch
Normal file
568
SOURCES/0100-Allow-upgrades-of-almalinux-AlmaLinux-OS.patch
Normal file
@ -0,0 +1,568 @@
|
||||
From 5b702f9cdd791a4f39147be4b2c071a0b5f407fb Mon Sep 17 00:00:00 2001
|
||||
From: Yuriy Kohut <yura.kohut@gmail.com>
|
||||
Date: Fri, 27 Jun 2025 12:25:51 +0300
|
||||
Subject: [PATCH] Allow upgrades of almalinux (AlmaLinux OS)
|
||||
|
||||
* add information about 'almalinux' new distro and its 'default' upgrade path
|
||||
* update mapping with 'almalinux' distro ID and its OS version format
|
||||
* add AlmaLinux OS release 9 and 10 RPM GPG keys, fingerprints of GPG keys, and obsoleted GPG keys
|
||||
* update unit tests to cover 'almalinux'
|
||||
---
|
||||
commands/command_utils.py | 2 +
|
||||
.../test_distributionsignedrpmscanner.py | 33 ++++++++++
|
||||
.../tests/test_ipuworkflowconfig.py | 20 ++++++
|
||||
.../tests/files/repomap_example.json | 39 +++++++++++
|
||||
.../tests/unit_test_repositoriesmapping.py | 12 +++-
|
||||
.../tests/test_repomapping.py | 10 ++-
|
||||
.../tests/test_setuptargetrepos.py | 66 ++++++++++---------
|
||||
.../distro/almalinux/gpg-signatures.json | 18 +++++
|
||||
.../rpm-gpg/10/RPM-GPG-KEY-AlmaLinux-10 | 29 ++++++++
|
||||
.../rpm-gpg/9/RPM-GPG-KEY-AlmaLinux-9 | 52 +++++++++++++++
|
||||
.../common/files/upgrade_paths.json | 6 ++
|
||||
.../common/libraries/tests/test_gpg.py | 2 +
|
||||
12 files changed, 256 insertions(+), 33 deletions(-)
|
||||
create mode 100644 repos/system_upgrade/common/files/distro/almalinux/gpg-signatures.json
|
||||
create mode 100644 repos/system_upgrade/common/files/distro/almalinux/rpm-gpg/10/RPM-GPG-KEY-AlmaLinux-10
|
||||
create mode 100644 repos/system_upgrade/common/files/distro/almalinux/rpm-gpg/9/RPM-GPG-KEY-AlmaLinux-9
|
||||
|
||||
diff --git a/commands/command_utils.py b/commands/command_utils.py
|
||||
index 155bacad..ef5daf03 100644
|
||||
--- a/commands/command_utils.py
|
||||
+++ b/commands/command_utils.py
|
||||
@@ -36,11 +36,13 @@ class _VersionKind(str, Enum):
|
||||
class DistroIDs(str, Enum):
|
||||
RHEL = 'rhel'
|
||||
CENTOS = 'centos'
|
||||
+ ALMALINUX = 'almalinux'
|
||||
|
||||
|
||||
_DISTRO_VERSION_FORMATS = {
|
||||
DistroIDs.RHEL: VersionFormats.MAJOR_MINOR,
|
||||
DistroIDs.CENTOS: VersionFormats.MAJOR_ONLY,
|
||||
+ DistroIDs.ALMALINUX: VersionFormats.MAJOR_MINOR,
|
||||
}
|
||||
"""
|
||||
Maps distro ID to the expected OS version format.
|
||||
diff --git a/repos/system_upgrade/common/actors/distributionsignedrpmscanner/tests/test_distributionsignedrpmscanner.py b/repos/system_upgrade/common/actors/distributionsignedrpmscanner/tests/test_distributionsignedrpmscanner.py
|
||||
index f138bcb2..af21bc8d 100644
|
||||
--- a/repos/system_upgrade/common/actors/distributionsignedrpmscanner/tests/test_distributionsignedrpmscanner.py
|
||||
+++ b/repos/system_upgrade/common/actors/distributionsignedrpmscanner/tests/test_distributionsignedrpmscanner.py
|
||||
@@ -110,6 +110,39 @@ def test_actor_execution_with_signed_unsigned_data_centos(current_actor_context)
|
||||
assert len(current_actor_context.consume(InstalledUnsignedRPM)[0].items) == 6
|
||||
|
||||
|
||||
+def test_actor_execution_with_signed_unsigned_data_almalinux(current_actor_context):
|
||||
+ ALMALINUX_PACKAGER = 'AlmaLinux Packaging Team <packager@almalinux.org>'
|
||||
+ config = mock_configs.CONFIG
|
||||
+
|
||||
+ config.os_release = OSRelease(
|
||||
+ release_id='almalinux',
|
||||
+ name='AlmaLinux',
|
||||
+ pretty_name='AlmaLinux 8.10 (Cerulean Leopard)',
|
||||
+ version='8.10 (Cerulean Leopard)',
|
||||
+ version_id='8.10'
|
||||
+ )
|
||||
+
|
||||
+ installed_rpm = [
|
||||
+ RPM(name='sample01', version='0.1', release='1.sm01', epoch='1', packager=ALMALINUX_PACKAGER, arch='noarch',
|
||||
+ pgpsig='RSA/SHA256, Mon 01 Jan 1970 00:00:00 AM -03, Key ID 2ae81e8aced7258b'),
|
||||
+ RPM(name='sample02', version='0.1', release='1.sm01', epoch='1', packager=ALMALINUX_PACKAGER, arch='noarch',
|
||||
+ pgpsig='SOME_OTHER_SIG_X'),
|
||||
+ RPM(name='sample03', version='0.1', release='1.sm01', epoch='1', packager=ALMALINUX_PACKAGER, arch='noarch',
|
||||
+ pgpsig='RSA/SHA256, Mon 01 Jan 1970 00:00:00 AM -03, Key ID 51d6647ec21ad6ea'),
|
||||
+ RPM(name='sample04', version='0.1', release='1.sm01', epoch='1', packager=ALMALINUX_PACKAGER, arch='noarch',
|
||||
+ pgpsig='SOME_OTHER_SIG_X'),
|
||||
+ ]
|
||||
+
|
||||
+ current_actor_context.feed(InstalledRPM(items=installed_rpm))
|
||||
+ current_actor_context.run(config_model=config)
|
||||
+ assert current_actor_context.consume(DistributionSignedRPM)
|
||||
+ assert len(current_actor_context.consume(DistributionSignedRPM)[0].items) == 2
|
||||
+ assert current_actor_context.consume(InstalledRedHatSignedRPM)
|
||||
+ assert not current_actor_context.consume(InstalledRedHatSignedRPM)[0].items
|
||||
+ assert current_actor_context.consume(InstalledUnsignedRPM)
|
||||
+ assert len(current_actor_context.consume(InstalledUnsignedRPM)[0].items) == 2
|
||||
+
|
||||
+
|
||||
def test_actor_execution_with_unknown_distro(current_actor_context):
|
||||
config = mock_configs.CONFIG
|
||||
|
||||
diff --git a/repos/system_upgrade/common/actors/ipuworkflowconfig/tests/test_ipuworkflowconfig.py b/repos/system_upgrade/common/actors/ipuworkflowconfig/tests/test_ipuworkflowconfig.py
|
||||
index 6184121b..8b7faffb 100644
|
||||
--- a/repos/system_upgrade/common/actors/ipuworkflowconfig/tests/test_ipuworkflowconfig.py
|
||||
+++ b/repos/system_upgrade/common/actors/ipuworkflowconfig/tests/test_ipuworkflowconfig.py
|
||||
@@ -129,6 +129,13 @@ def test_construct_models_for_paths_matching_source_major(source_major_version,
|
||||
'9': ['10.0']
|
||||
}
|
||||
),
|
||||
+ (
|
||||
+ 'almalinux', 'default',
|
||||
+ {
|
||||
+ '8.10': ['9.0', '9.1', '9.2', '9.3', '9.4', '9.5', '9.6'],
|
||||
+ '9.6': ['10.0']
|
||||
+ }
|
||||
+ ),
|
||||
)
|
||||
)
|
||||
def test_load_raw_upgrade_paths_for_distro_and_flavour(monkeypatch, distro, flavour, expected_result):
|
||||
@@ -147,6 +154,12 @@ def test_load_raw_upgrade_paths_for_distro_and_flavour(monkeypatch, distro, flav
|
||||
'9.6': ['10.0'],
|
||||
'9': ['10.0']
|
||||
}
|
||||
+ },
|
||||
+ 'almalinux': {
|
||||
+ 'default': {
|
||||
+ '8.10': ['9.0', '9.1', '9.2', '9.3', '9.4', '9.5', '9.6'],
|
||||
+ '9.6': ['10.0']
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -160,6 +173,7 @@ def test_load_raw_upgrade_paths_for_distro_and_flavour(monkeypatch, distro, flav
|
||||
[
|
||||
(('centos', '8', '9'), ('8.10', '9.5')),
|
||||
(('rhel', '8.10', '9.4'), ('8.10', '9.4')),
|
||||
+ (('almalinux', '8.10', '9.6'), ('8.10', '9.6')),
|
||||
]
|
||||
)
|
||||
def test_virtual_version_construction(construction_params, expected_versions):
|
||||
@@ -186,6 +200,12 @@ def test_virtual_version_construction(construction_params, expected_versions):
|
||||
'9': '9.5',
|
||||
}
|
||||
},
|
||||
+ 'almalinux': {
|
||||
+ 'default': {
|
||||
+ '8.10': ['9.0', '9.1', '9.2', '9.3', '9.4', '9.5', '9.6'],
|
||||
+ '9.6': ['10.0']
|
||||
+ }
|
||||
+ },
|
||||
}
|
||||
|
||||
result = ipuworkflowconfig.construct_virtual_versions(defined_upgrade_paths, *construction_params)
|
||||
diff --git a/repos/system_upgrade/common/actors/repositoriesmapping/tests/files/repomap_example.json b/repos/system_upgrade/common/actors/repositoriesmapping/tests/files/repomap_example.json
|
||||
index 1f04d72d..9ce8c410 100644
|
||||
--- a/repos/system_upgrade/common/actors/repositoriesmapping/tests/files/repomap_example.json
|
||||
+++ b/repos/system_upgrade/common/actors/repositoriesmapping/tests/files/repomap_example.json
|
||||
@@ -120,6 +120,45 @@
|
||||
"distro": "centos"
|
||||
}
|
||||
]
|
||||
+ },
|
||||
+ {
|
||||
+ "pesid": "pesid8",
|
||||
+ "entries": [
|
||||
+ {
|
||||
+ "major_version": "8",
|
||||
+ "repoid": "some-almalinux-8-repoid1",
|
||||
+ "arch": "x86_64",
|
||||
+ "repo_type": "rpm",
|
||||
+ "channel": "ga",
|
||||
+ "distro": "almalinux"
|
||||
+ }
|
||||
+ ]
|
||||
+ },
|
||||
+ {
|
||||
+ "pesid": "pesid9",
|
||||
+ "entries": [
|
||||
+ {
|
||||
+ "major_version": "9",
|
||||
+ "repoid": "some-almalinux-9-repoid1",
|
||||
+ "arch": "x86_64",
|
||||
+ "repo_type": "rpm",
|
||||
+ "channel": "ga",
|
||||
+ "distro": "almalinux"
|
||||
+ }
|
||||
+ ]
|
||||
+ },
|
||||
+ {
|
||||
+ "pesid": "pesid10",
|
||||
+ "entries": [
|
||||
+ {
|
||||
+ "major_version": "10",
|
||||
+ "repoid": "some-almalinux-10-repoid1",
|
||||
+ "arch": "x86_64",
|
||||
+ "repo_type": "rpm",
|
||||
+ "channel": "ga",
|
||||
+ "distro": "almalinux"
|
||||
+ }
|
||||
+ ]
|
||||
}
|
||||
]
|
||||
}
|
||||
diff --git a/repos/system_upgrade/common/actors/repositoriesmapping/tests/unit_test_repositoriesmapping.py b/repos/system_upgrade/common/actors/repositoriesmapping/tests/unit_test_repositoriesmapping.py
|
||||
index 9d781125..6d1a173a 100644
|
||||
--- a/repos/system_upgrade/common/actors/repositoriesmapping/tests/unit_test_repositoriesmapping.py
|
||||
+++ b/repos/system_upgrade/common/actors/repositoriesmapping/tests/unit_test_repositoriesmapping.py
|
||||
@@ -52,7 +52,7 @@ def test_scan_existing_valid_data(monkeypatch, adjust_cwd):
|
||||
# 2. Verify that only repositories valid for the current IPU are produced
|
||||
pesid_repos = repo_mapping.repositories
|
||||
fail_description = 'Actor produced incorrect number of IPU-relevant pesid repos.'
|
||||
- assert len(pesid_repos) == 5, fail_description
|
||||
+ assert len(pesid_repos) == 6, fail_description
|
||||
|
||||
expected_pesid_repos = [
|
||||
PESIDRepositoryEntry(
|
||||
@@ -105,6 +105,16 @@ def test_scan_existing_valid_data(monkeypatch, adjust_cwd):
|
||||
rhui='',
|
||||
distro='centos',
|
||||
),
|
||||
+ PESIDRepositoryEntry(
|
||||
+ pesid='pesid8',
|
||||
+ major_version='8',
|
||||
+ repoid='some-almalinux-8-repoid1',
|
||||
+ arch='x86_64',
|
||||
+ repo_type='rpm',
|
||||
+ channel='ga',
|
||||
+ rhui='',
|
||||
+ distro='almalinux',
|
||||
+ ),
|
||||
]
|
||||
|
||||
fail_description = 'Expected pesid repo is not present in the deserialization output.'
|
||||
diff --git a/repos/system_upgrade/common/actors/setuptargetrepos/tests/test_repomapping.py b/repos/system_upgrade/common/actors/setuptargetrepos/tests/test_repomapping.py
|
||||
index af40c443..1b0a3122 100644
|
||||
--- a/repos/system_upgrade/common/actors/setuptargetrepos/tests/test_repomapping.py
|
||||
+++ b/repos/system_upgrade/common/actors/setuptargetrepos/tests/test_repomapping.py
|
||||
@@ -75,6 +75,9 @@ def repomap_data_multiple_distros():
|
||||
make_pesid_repo("pesid3", "10", "pesid3-repoid-eus", channel="eus"),
|
||||
make_pesid_repo("pesid3", "10", "pesid3-repoid-aws", rhui="aws"),
|
||||
make_pesid_repo("pesid3", "10", "pesid3-repoid-centos", distro="centos"),
|
||||
+ make_pesid_repo("pesid1", "9", "pesid1-repoid-almalinux", distro="almalinux"),
|
||||
+ make_pesid_repo("pesid2", "10", "pesid2-repoid-almalinux", distro="almalinux"),
|
||||
+ make_pesid_repo("pesid3", "10", "pesid3-repoid-almalinux", distro="almalinux"),
|
||||
],
|
||||
)
|
||||
return repomap_data
|
||||
@@ -106,7 +109,7 @@ def test_get_pesid_repo_entry(monkeypatch, repomap_data_for_pesid_repo_retrieval
|
||||
assert handler.get_pesid_repo_entry('nonexisting-repo', '7') is None, fail_description
|
||||
|
||||
|
||||
-@pytest.mark.parametrize('distro', ('rhel', 'centos'))
|
||||
+@pytest.mark.parametrize('distro', ('rhel', 'centos', 'almalinux'))
|
||||
def test_get_pesid_repo_entry_distro(
|
||||
monkeypatch, repomap_data_multiple_distros, distro
|
||||
):
|
||||
@@ -163,7 +166,7 @@ def test_get_target_pesids(monkeypatch, repomap_data_for_pesid_repo_retrieval):
|
||||
assert [] == handler.get_target_pesids('pesid_no_mapping'), fail_description
|
||||
|
||||
|
||||
-@pytest.mark.parametrize('distro', ('rhel', 'centos'))
|
||||
+@pytest.mark.parametrize('distro', ('rhel', 'centos', 'almalinux'))
|
||||
def test_get_target_pesids_distro(
|
||||
monkeypatch, repomap_data_multiple_distros, distro
|
||||
):
|
||||
@@ -199,6 +202,7 @@ def test_get_target_pesids_distro(
|
||||
[
|
||||
('rhel', [5, 6, 7], [0, 1]),
|
||||
('centos', [8], [2]),
|
||||
+ ('almalinux', [11], [9]),
|
||||
]
|
||||
)
|
||||
def test_get_pesid_repos(
|
||||
@@ -251,6 +255,7 @@ def test_get_pesid_repos(
|
||||
[
|
||||
('rhel', [0, 1]),
|
||||
('centos', []),
|
||||
+ ('almalinux', []),
|
||||
]
|
||||
)
|
||||
def test_get_source_pesid_repos(monkeypatch, repomap_data_for_pesid_repo_retrieval, distro, expected_repos_index):
|
||||
@@ -291,6 +296,7 @@ def test_get_source_pesid_repos(monkeypatch, repomap_data_for_pesid_repo_retriev
|
||||
[
|
||||
('rhel', [3, 4, 5]),
|
||||
('centos', []),
|
||||
+ ('almalinux', []),
|
||||
]
|
||||
)
|
||||
def test_get_target_pesid_repos(monkeypatch, repomap_data_for_pesid_repo_retrieval, distro, expected_repos_index):
|
||||
diff --git a/repos/system_upgrade/common/actors/setuptargetrepos/tests/test_setuptargetrepos.py b/repos/system_upgrade/common/actors/setuptargetrepos/tests/test_setuptargetrepos.py
|
||||
index 91d9cd24..1f898e8f 100644
|
||||
--- a/repos/system_upgrade/common/actors/setuptargetrepos/tests/test_setuptargetrepos.py
|
||||
+++ b/repos/system_upgrade/common/actors/setuptargetrepos/tests/test_setuptargetrepos.py
|
||||
@@ -100,94 +100,99 @@ def test_repositories_setup_tasks(monkeypatch):
|
||||
assert rhel_repos[0].repoid == 'rhel-8-server-rpms'
|
||||
|
||||
|
||||
-def test_repos_mapping(monkeypatch):
|
||||
+@pytest.mark.parametrize('distro_id', ['rhel', 'centos', 'almalinux'])
|
||||
+def test_repos_mapping_for_distro(monkeypatch, distro_id):
|
||||
"""
|
||||
Tests whether actor correctly determines what repositories should be enabled on target based
|
||||
on the information about what repositories are enabled on the source system using
|
||||
- the RepositoriesMapping information.
|
||||
+ the RepositoriesMapping information for a specific distro.
|
||||
"""
|
||||
repos_data = [
|
||||
- RepositoryData(repoid='rhel-7-server-rpms', name='RHEL 7 Server'),
|
||||
- RepositoryData(repoid='rhel-7-blacklisted-rpms', name='RHEL 7 Blacklisted')]
|
||||
+ RepositoryData(repoid='{}-7-server-rpms'.format(distro_id), name='{} 7 Server'.format(distro_id)),
|
||||
+ RepositoryData(repoid='{}-7-blacklisted-rpms'.format(distro_id), name='{} 7 Blacklisted'.format(distro_id))]
|
||||
|
||||
repos_files = [RepositoryFile(file='/etc/yum.repos.d/redhat.repo', data=repos_data)]
|
||||
facts = RepositoriesFacts(repositories=repos_files)
|
||||
installed_rpms = InstalledRPM(
|
||||
- items=[mock_package('foreman', 'rhel-7-for-x86_64-satellite-extras-rpms'),
|
||||
- mock_package('foreman-proxy', 'nosuch-rhel-7-for-x86_64-satellite-extras-rpms')])
|
||||
+ items=[mock_package('foreman', '{}-7-for-x86_64-satellite-extras-rpms'.format(distro_id)),
|
||||
+ mock_package('foreman-proxy', 'nosuch-{}-7-for-x86_64-satellite-extras-rpms'.format(distro_id))])
|
||||
|
||||
repomap = RepositoriesMapping(
|
||||
- mapping=[RepoMapEntry(source='rhel7-base', target=['rhel8-baseos', 'rhel8-appstream', 'rhel8-blacklist']),
|
||||
- RepoMapEntry(source='rhel7-satellite-extras', target=['rhel8-satellite-extras'])],
|
||||
+ mapping=[RepoMapEntry(source='{0}7-base'.format(distro_id),
|
||||
+ target=['{0}8-baseos'.format(distro_id),
|
||||
+ '{0}8-appstream'.format(distro_id),
|
||||
+ '{0}8-blacklist'.format(distro_id)]),
|
||||
+ RepoMapEntry(source='{0}7-satellite-extras'.format(distro_id),
|
||||
+ target=['{0}8-satellite-extras'.format(distro_id)])],
|
||||
repositories=[
|
||||
PESIDRepositoryEntry(
|
||||
- pesid='rhel7-base',
|
||||
- repoid='rhel-7-server-rpms',
|
||||
+ pesid='{0}7-base'.format(distro_id),
|
||||
+ repoid='{0}-7-server-rpms'.format(distro_id),
|
||||
major_version='7',
|
||||
arch='x86_64',
|
||||
repo_type='rpm',
|
||||
channel='ga',
|
||||
rhui='',
|
||||
- distro='rhel',
|
||||
+ distro=distro_id,
|
||||
),
|
||||
PESIDRepositoryEntry(
|
||||
- pesid='rhel8-baseos',
|
||||
- repoid='rhel-8-for-x86_64-baseos-htb-rpms',
|
||||
+ pesid='{0}8-baseos'.format(distro_id),
|
||||
+ repoid='{0}-8-for-x86_64-baseos-htb-rpms'.format(distro_id),
|
||||
major_version='8',
|
||||
arch='x86_64',
|
||||
repo_type='rpm',
|
||||
channel='ga',
|
||||
rhui='',
|
||||
- distro='rhel',
|
||||
+ distro=distro_id,
|
||||
),
|
||||
PESIDRepositoryEntry(
|
||||
- pesid='rhel8-appstream',
|
||||
- repoid='rhel-8-for-x86_64-appstream-htb-rpms',
|
||||
+ pesid='{0}8-appstream'.format(distro_id),
|
||||
+ repoid='{0}-8-for-x86_64-appstream-htb-rpms'.format(distro_id),
|
||||
major_version='8',
|
||||
arch='x86_64',
|
||||
repo_type='rpm',
|
||||
channel='ga',
|
||||
rhui='',
|
||||
- distro='rhel',
|
||||
+ distro=distro_id,
|
||||
),
|
||||
PESIDRepositoryEntry(
|
||||
- pesid='rhel8-blacklist',
|
||||
- repoid='rhel-8-blacklisted-rpms',
|
||||
+ pesid='{0}8-blacklist'.format(distro_id),
|
||||
+ repoid='{0}-8-blacklisted-rpms'.format(distro_id),
|
||||
major_version='8',
|
||||
arch='x86_64',
|
||||
repo_type='rpm',
|
||||
channel='ga',
|
||||
rhui='',
|
||||
- distro='rhel',
|
||||
+ distro=distro_id,
|
||||
),
|
||||
PESIDRepositoryEntry(
|
||||
- pesid='rhel7-satellite-extras',
|
||||
- repoid='rhel-7-for-x86_64-satellite-extras-rpms',
|
||||
+ pesid='{0}7-satellite-extras'.format(distro_id),
|
||||
+ repoid='{0}-7-for-x86_64-satellite-extras-rpms'.format(distro_id),
|
||||
major_version='7',
|
||||
arch='x86_64',
|
||||
repo_type='rpm',
|
||||
channel='ga',
|
||||
rhui='',
|
||||
- distro='rhel',
|
||||
+ distro=distro_id,
|
||||
),
|
||||
PESIDRepositoryEntry(
|
||||
- pesid='rhel8-satellite-extras',
|
||||
- repoid='rhel-8-for-x86_64-satellite-extras-rpms',
|
||||
+ pesid='{0}8-satellite-extras'.format(distro_id),
|
||||
+ repoid='{0}-8-for-x86_64-satellite-extras-rpms'.format(distro_id),
|
||||
major_version='8',
|
||||
arch='x86_64',
|
||||
repo_type='rpm',
|
||||
channel='ga',
|
||||
rhui='',
|
||||
- distro='rhel',
|
||||
+ distro=distro_id,
|
||||
),
|
||||
]
|
||||
)
|
||||
|
||||
- repos_blacklisted = RepositoriesBlacklisted(repoids=['rhel-8-blacklisted-rpms'])
|
||||
+ repos_blacklisted = RepositoriesBlacklisted(repoids=['{}-8-blacklisted-rpms'.format(distro_id)])
|
||||
|
||||
msgs = [facts, repomap, repos_blacklisted, installed_rpms]
|
||||
|
||||
- monkeypatch.setattr(api, 'current_actor', CurrentActorMocked(msgs=msgs))
|
||||
+ monkeypatch.setattr(api, 'current_actor', CurrentActorMocked(msgs=msgs, release_id=distro_id))
|
||||
monkeypatch.setattr(api, 'produce', produce_mocked())
|
||||
|
||||
setuptargetrepos.process()
|
||||
@@ -197,6 +202,7 @@ def test_repos_mapping(monkeypatch):
|
||||
assert len(rhel_repos) == 3
|
||||
|
||||
produced_rhel_repoids = {repo.repoid for repo in rhel_repos}
|
||||
- expected_rhel_repoids = {'rhel-8-for-x86_64-baseos-htb-rpms', 'rhel-8-for-x86_64-appstream-htb-rpms',
|
||||
- 'rhel-8-for-x86_64-satellite-extras-rpms'}
|
||||
+ expected_rhel_repoids = {'{0}-8-for-x86_64-baseos-htb-rpms'.format(distro_id),
|
||||
+ '{0}-8-for-x86_64-appstream-htb-rpms'.format(distro_id),
|
||||
+ '{0}-8-for-x86_64-satellite-extras-rpms'.format(distro_id)}
|
||||
assert produced_rhel_repoids == expected_rhel_repoids
|
||||
diff --git a/repos/system_upgrade/common/files/distro/almalinux/gpg-signatures.json b/repos/system_upgrade/common/files/distro/almalinux/gpg-signatures.json
|
||||
new file mode 100644
|
||||
index 00000000..24bc93ba
|
||||
--- /dev/null
|
||||
+++ b/repos/system_upgrade/common/files/distro/almalinux/gpg-signatures.json
|
||||
@@ -0,0 +1,18 @@
|
||||
+{
|
||||
+ "keys": [
|
||||
+ "51d6647ec21ad6ea",
|
||||
+ "d36cb86cb86b3716",
|
||||
+ "2ae81e8aced7258b",
|
||||
+ "429785e181b961a5",
|
||||
+ "d07bf2a08d50eb66"
|
||||
+ ],
|
||||
+ "obsoleted-keys": {
|
||||
+ "7": [],
|
||||
+ "8": [],
|
||||
+ "9": [
|
||||
+ "gpg-pubkey-3abb34f8-5ffd890e",
|
||||
+ "gpg-pubkey-ced7258b-6525146f"
|
||||
+ ],
|
||||
+ "10": ["gpg-pubkey-b86b3716-61e69f29"]
|
||||
+ }
|
||||
+}
|
||||
diff --git a/repos/system_upgrade/common/files/distro/almalinux/rpm-gpg/10/RPM-GPG-KEY-AlmaLinux-10 b/repos/system_upgrade/common/files/distro/almalinux/rpm-gpg/10/RPM-GPG-KEY-AlmaLinux-10
|
||||
new file mode 100644
|
||||
index 00000000..5228281c
|
||||
--- /dev/null
|
||||
+++ b/repos/system_upgrade/common/files/distro/almalinux/rpm-gpg/10/RPM-GPG-KEY-AlmaLinux-10
|
||||
@@ -0,0 +1,29 @@
|
||||
+-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
+
|
||||
+mQINBGaP6O8BEACvg8IlAxGayV8zOi9Ex+Pd8lrj2BrBzloG8ri84ORp9o8ojq7l
|
||||
+ykKmIElHe11cQD2Lf/a4lcQQ4Ec3baiD786X6K2eVSlBEAnZMzfjDg8R63SfsBuu
|
||||
+8Yk+lUyqlBrDnSDYaPruOAzLIz2r82ikIC1jDbipZsMFPFHPI4/hayyWxJ3oGxRe
|
||||
+0mbtYLB9ElEKngt+/hfo7JLklakbznyIRuVEF3VrZb91XC6r/idqfJoNyBXSKidj
|
||||
+z0IwqOhgkLUk84rzltDo3AzwGqusd7PEuhOmqinOhp0hMdXsztD4TVyhw82iXu/O
|
||||
+onOAObZTZYfM6Z8btmDqkoo0aT+oPPCuZ3yC/caU9dhvCSXET/CGoXc3hL55u9PV
|
||||
+qmcVm/mwvuEImEAvxVc0/dBzEUk+FwW8KsaN3HoUKrC4/NqgmaQz8/42np7u2j+B
|
||||
+OOJ4hAckNEdWd8rB86CYN00sdxnvLBsp8V3IwEqXLhGOoBsagy61Z8hKCM+siOGn
|
||||
+xmbbybgaLOs+DPlxt9LrtgLJHODwmD96oysUPJuA0lv8KMiSpId0tSpp9Wn/wHBG
|
||||
+kRgxGYfzQu7WRvRZqQaleft1JTXXOjNzPur0RkJyb3yFwAoxpePyo/WrupM41OHW
|
||||
+58cEqdC6riCnJcS4U84RLj+hwvufBVB7areQ75sETnKeyozZW+P16E1t/wARAQAB
|
||||
+tChBbG1hTGludXggT1MgMTAgPHBhY2thZ2VyQGFsbWFsaW51eC5vcmc+iQJMBBMB
|
||||
+CgA2FiEE7m23uY9b9e3Z2g3l3uXBHMKh5XIFAmaP6O8CGwMECwkIBwQVCgkIBRYC
|
||||
+AwEAAh4FAheAAAoJEN7lwRzCoeVy32AP/A2+KI+JhmsxnactSptkAWGyAAf1YBWW
|
||||
+Js2sc9OJdKj7uIkzszCx7c7VIVeF/VLijIYpM/zwUgir5S5SimzQmY+FumwbKIml
|
||||
+K5RBsoSog22i7Edho0MLa1pa6qvnKS0nkl9DEcu8EbMUhucWbxGnCG/22EEMTrY+
|
||||
+Si1IZNkDGtlBHHBKMC+STbqqTxtdy4tAd2NYwWh3sBIh6PF7T4NLRAugu7PZQr5K
|
||||
+amS4z2lV3ebshGjieA0Zoznwh0AXgN0gZ/0pC/LXI25gcgtrvkCyL8Fe0AyZUMd8
|
||||
+UvZXaRSsm3SkCUIlGjPrvuItn1D7tHmqVSCDKXDM2TqjfiRm1JF+2OFCBNvGz19V
|
||||
+LxWd/Gf+0qw0dtKxRMKzGh0mxXY40hjtmYZulrPxhG5itNDjStovgrevM1HBsXs9
|
||||
+ikrkOGQ0pFcqizTn4ZKAmMozEMuIuV89Vof2bBCg7pHT1FmXVdAaYJxb6a7A/CgN
|
||||
+qHjoh8AxBiGw/Q2NM4YJlUVhHqqd+/lUG3WJqACNEnqSlZkYQ3HqNNaKhHVbD4mN
|
||||
+q/g6v+f8aWWDZDsI6IAfbJUB+KPEnIvQJQleWuHrq7kcUMhEq3dwBMIoTVEHhUUr
|
||||
+RQKToSEM1rN7PcanaXQM2gy141dS7tFLxhapG8ug75LkIUnEOpPMtUjvrU1ZELGq
|
||||
+36vVHBB+dTDg
|
||||
+=tJCw
|
||||
+-----END PGP PUBLIC KEY BLOCK-----
|
||||
diff --git a/repos/system_upgrade/common/files/distro/almalinux/rpm-gpg/9/RPM-GPG-KEY-AlmaLinux-9 b/repos/system_upgrade/common/files/distro/almalinux/rpm-gpg/9/RPM-GPG-KEY-AlmaLinux-9
|
||||
new file mode 100644
|
||||
index 00000000..d4165d58
|
||||
--- /dev/null
|
||||
+++ b/repos/system_upgrade/common/files/distro/almalinux/rpm-gpg/9/RPM-GPG-KEY-AlmaLinux-9
|
||||
@@ -0,0 +1,52 @@
|
||||
+-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
+
|
||||
+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
|
||||
+1WKL
|
||||
+=jk2t
|
||||
+-----END PGP PUBLIC KEY BLOCK-----
|
||||
diff --git a/repos/system_upgrade/common/files/upgrade_paths.json b/repos/system_upgrade/common/files/upgrade_paths.json
|
||||
index 279e6eaa..f99d9c48 100644
|
||||
--- a/repos/system_upgrade/common/files/upgrade_paths.json
|
||||
+++ b/repos/system_upgrade/common/files/upgrade_paths.json
|
||||
@@ -27,5 +27,11 @@
|
||||
"9": "9.6",
|
||||
"10": "10.0"
|
||||
}
|
||||
+ },
|
||||
+ "almalinux": {
|
||||
+ "default": {
|
||||
+ "8.10": ["9.0", "9.1", "9.2", "9.3", "9.4", "9.5", "9.6"],
|
||||
+ "9.6": ["10.0"]
|
||||
+ }
|
||||
}
|
||||
}
|
||||
diff --git a/repos/system_upgrade/common/libraries/tests/test_gpg.py b/repos/system_upgrade/common/libraries/tests/test_gpg.py
|
||||
index 82b51abb..47617ad8 100644
|
||||
--- a/repos/system_upgrade/common/libraries/tests/test_gpg.py
|
||||
+++ b/repos/system_upgrade/common/libraries/tests/test_gpg.py
|
||||
@@ -18,6 +18,8 @@ from leapp.models import GpgKey, InstalledRPM, RPM
|
||||
('9.2', 'ga', 'rhel', '../../files/distro/rhel/rpm-gpg/9'),
|
||||
('10.0', 'ga', 'rhel', '../../files/distro/rhel/rpm-gpg/10'),
|
||||
('10', 'ga', 'centos', '../../files/distro/centos/rpm-gpg/10'),
|
||||
+ ('9.6', 'ga', 'almalinux', '../../files/distro/almalinux/rpm-gpg/9'),
|
||||
+ ('10.0', 'ga', 'almalinux', '../../files/distro/almalinux/rpm-gpg/10'),
|
||||
])
|
||||
def test_get_path_to_gpg_certs(monkeypatch, target, product_type, distro, exp):
|
||||
current_actor = CurrentActorMocked(dst_ver=target, release_id=distro,
|
||||
--
|
||||
2.49.0
|
||||
|
@ -52,7 +52,7 @@ py2_byte_compile "%1" "%2"}
|
||||
|
||||
Name: leapp-repository
|
||||
Version: 0.22.0
|
||||
Release: 4%{?dist}
|
||||
Release: 4%{?dist}.alma.2
|
||||
Summary: Repositories for leapp
|
||||
|
||||
License: ASL 2.0
|
||||
@ -111,6 +111,7 @@ Patch0040: 0040-Fix-parsing-of-the-kernel-cmdline.patch
|
||||
Patch0041: 0041-repomap-Process-repositories-based-on-distro.patch
|
||||
Patch0042: 0042-Update-the-upgrade-data-files-stream-4.0.patch
|
||||
Patch0043: 0043-unit-tests-suppress-deprecation-warning-for-is_rhel_.patch
|
||||
Patch0100: 0100-Allow-upgrades-of-almalinux-AlmaLinux-OS.patch
|
||||
|
||||
%description
|
||||
%{summary}
|
||||
@ -321,6 +322,7 @@ Requires: libdb-utils
|
||||
%patch -P 0041 -p1
|
||||
%patch -P 0042 -p1
|
||||
%patch -P 0043 -p1
|
||||
%patch -P 0100 -p1
|
||||
|
||||
|
||||
%build
|
||||
@ -402,6 +404,12 @@ done;
|
||||
# no files here
|
||||
|
||||
%changelog
|
||||
* Tue Jul 22 2025 Yuriy Kohut <ykohut@almalinux.org> - 0.22.0-4.alma.2
|
||||
- Support of AlmaLinux OS. Phase 1 (update 1)
|
||||
|
||||
* Fri Jun 27 2025 Yuriy Kohut <ykohut@almalinux.org> - 0.22.0-4.alma.1
|
||||
- Support of AlmaLinux OS. Phase 1
|
||||
|
||||
* Thu Jun 05 2025 Karolina Kula <kkula@redhat.com> - 0.22.0-4
|
||||
- Fix parsing of the kernel cmdline
|
||||
- Require leapp data with provided_data_streams 4.0+
|
||||
@ -1220,4 +1228,3 @@ done;
|
||||
* Wed Nov 07 2018 Petr Stodulka <pstodulk@redhat.com> - 0.3-1
|
||||
- Initial RPM
|
||||
Resolves: #1636481
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user