RHEL 8.10: CTC2 candidate -1
- Do not try to download data files anymore when missing as the service is obsoleted since the data is part of installed packages - Update error messages and reports when installed upgrade data files are malformed or missing to instruct user how to resolve it - Update the leapp upgrade data files - bump data stream to "3.0" - Resolves: RHEL-18298
This commit is contained in:
parent
48c8fb0fa7
commit
0d3570809e
107
0062-Use-happy_path-instead-e2e-for-public-clouds.patch
Normal file
107
0062-Use-happy_path-instead-e2e-for-public-clouds.patch
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
From 946f8c6a36962a4e7ddc5354d21fcd7d70e108f9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Martin Kluson <mkluson@redhat.com>
|
||||||
|
Date: Fri, 12 Jan 2024 13:45:59 +0100
|
||||||
|
Subject: [PATCH 62/66] Use `happy_path` instead `e2e` for public clouds
|
||||||
|
|
||||||
|
`happy_path` performs similar steps as `e2e` does and is used in the rest of tiers.
|
||||||
|
---
|
||||||
|
.packit.yaml | 41 ++++++++++++++++++++++++++---------------
|
||||||
|
1 file changed, 26 insertions(+), 15 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/.packit.yaml b/.packit.yaml
|
||||||
|
index 383f5314..d87f33c0 100644
|
||||||
|
--- a/.packit.yaml
|
||||||
|
+++ b/.packit.yaml
|
||||||
|
@@ -123,13 +123,13 @@ jobs:
|
||||||
|
targets:
|
||||||
|
epel-7-x86_64:
|
||||||
|
distros: [RHEL-7.9-rhui]
|
||||||
|
- identifier: sanity-7.9to8.6-aws-e2e
|
||||||
|
+ identifier: sanity-7.9to8.6-aws
|
||||||
|
# NOTE(ivasilev) Unfortunately to use yaml templates we need to rewrite the whole tf_extra_params dict
|
||||||
|
# to use plan_filter (can't just specify one section test.tmt.plan_filter, need to specify environments.* as well)
|
||||||
|
tf_extra_params:
|
||||||
|
test:
|
||||||
|
tmt:
|
||||||
|
- plan_filter: 'tag:e2e & enabled:true'
|
||||||
|
+ plan_filter: 'tag:upgrade_happy_path & enabled:true'
|
||||||
|
environments:
|
||||||
|
- tmt:
|
||||||
|
context:
|
||||||
|
@@ -144,33 +144,42 @@ jobs:
|
||||||
|
TARGET_RELEASE: "8.6"
|
||||||
|
RHUI: "aws"
|
||||||
|
LEAPPDATA_BRANCH: "upstream"
|
||||||
|
+ LEAPP_NO_RHSM: "1"
|
||||||
|
+ USE_CUSTOM_REPOS: rhui
|
||||||
|
|
||||||
|
- &sanity-79to88-aws
|
||||||
|
<<: *sanity-79to86-aws
|
||||||
|
- identifier: sanity-7.9to8.8-aws-e2e
|
||||||
|
+ identifier: sanity-7.9to8.8-aws
|
||||||
|
env:
|
||||||
|
SOURCE_RELEASE: "7.9"
|
||||||
|
TARGET_RELEASE: "8.8"
|
||||||
|
RHUI: "aws"
|
||||||
|
LEAPPDATA_BRANCH: "upstream"
|
||||||
|
+ LEAPP_NO_RHSM: "1"
|
||||||
|
+ USE_CUSTOM_REPOS: rhui
|
||||||
|
|
||||||
|
- &sanity-79to89-aws
|
||||||
|
<<: *sanity-79to86-aws
|
||||||
|
- identifier: sanity-7.9to8.9-aws-e2e
|
||||||
|
+ identifier: sanity-7.9to8.9-aws
|
||||||
|
env:
|
||||||
|
SOURCE_RELEASE: "7.9"
|
||||||
|
TARGET_RELEASE: "8.9"
|
||||||
|
RHUI: "aws"
|
||||||
|
LEAPPDATA_BRANCH: "upstream"
|
||||||
|
-
|
||||||
|
-- &sanity-79to810-aws
|
||||||
|
- <<: *sanity-79to86-aws
|
||||||
|
- identifier: sanity-7.9to8.10-aws-e2e
|
||||||
|
- env:
|
||||||
|
- SOURCE_RELEASE: "7.9"
|
||||||
|
- TARGET_RELEASE: "8.10"
|
||||||
|
- RHUI: "aws"
|
||||||
|
- LEAPPDATA_BRANCH: "upstream"
|
||||||
|
+ LEAPP_NO_RHSM: "1"
|
||||||
|
+ USE_CUSTOM_REPOS: rhui
|
||||||
|
+
|
||||||
|
+# NOTE(mkluson) RHEL 8.10 content is not publicly available (via RHUI)
|
||||||
|
+#- &sanity-79to810-aws
|
||||||
|
+# <<: *sanity-79to86-aws
|
||||||
|
+# identifier: sanity-7.9to8.10-aws
|
||||||
|
+# env:
|
||||||
|
+# SOURCE_RELEASE: "7.9"
|
||||||
|
+# TARGET_RELEASE: "8.10"
|
||||||
|
+# RHUI: "aws"
|
||||||
|
+# LEAPPDATA_BRANCH: "upstream"
|
||||||
|
+# LEAPP_NO_RHSM: "1"
|
||||||
|
+# USE_CUSTOM_REPOS: rhui
|
||||||
|
|
||||||
|
# On-demand minimal beaker tests
|
||||||
|
- &beaker-minimal-79to86
|
||||||
|
@@ -619,11 +628,11 @@ jobs:
|
||||||
|
targets:
|
||||||
|
epel-8-x86_64:
|
||||||
|
distros: [RHEL-8.6-rhui]
|
||||||
|
- identifier: sanity-8.6to9.0-aws-e2e
|
||||||
|
+ identifier: sanity-8.6to9.0-aws
|
||||||
|
tf_extra_params:
|
||||||
|
test:
|
||||||
|
tmt:
|
||||||
|
- plan_filter: 'tag:e2e & enabled:true'
|
||||||
|
+ plan_filter: 'tag:upgrade_happy_path & enabled:true'
|
||||||
|
environments:
|
||||||
|
- tmt:
|
||||||
|
context:
|
||||||
|
@@ -639,3 +648,5 @@ jobs:
|
||||||
|
RHSM_REPOS: "rhel-8-for-x86_64-appstream-eus-rpms,rhel-8-for-x86_64-baseos-eus-rpms"
|
||||||
|
RHUI: "aws"
|
||||||
|
LEAPPDATA_BRANCH: "upstream"
|
||||||
|
+ LEAPP_NO_RHSM: "1"
|
||||||
|
+ USE_CUSTOM_REPOS: rhui
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
256
0063-Update-upgrade-data-bump-required-data-stream-to-3.0.patch
Normal file
256
0063-Update-upgrade-data-bump-required-data-stream-to-3.0.patch
Normal file
@ -0,0 +1,256 @@
|
|||||||
|
From 8552bbfd7418484b92327ded0d08a1849a693fe7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Petr Stodulka <pstodulk@redhat.com>
|
||||||
|
Date: Thu, 18 Jan 2024 14:51:34 +0100
|
||||||
|
Subject: [PATCH 63/66] Update upgrade data + bump required data stream to 3.0
|
||||||
|
|
||||||
|
* Added RHEL 9 repos for Alibaba RHUI with mapping for IPU 8 -> 9
|
||||||
|
* Actors require "3.0" in the list of provided_data_streams
|
||||||
|
* All data files updated to provide onls "3.0" data stream
|
||||||
|
* Add NL at the end of the device_driver_deprecation_data.json file
|
||||||
|
to be POSIX compatible as expected.
|
||||||
|
---
|
||||||
|
.../files/device_driver_deprecation_data.json | 3 +-
|
||||||
|
etc/leapp/files/pes-events.json | 1 -
|
||||||
|
etc/leapp/files/repomap.json | 104 +++++++++++++++++-
|
||||||
|
.../common/libraries/config/__init__.py | 2 +-
|
||||||
|
4 files changed, 103 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/etc/leapp/files/device_driver_deprecation_data.json b/etc/leapp/files/device_driver_deprecation_data.json
|
||||||
|
index 7d5f5c74..c570f8d4 100644
|
||||||
|
--- a/etc/leapp/files/device_driver_deprecation_data.json
|
||||||
|
+++ b/etc/leapp/files/device_driver_deprecation_data.json
|
||||||
|
@@ -1,6 +1,5 @@
|
||||||
|
{
|
||||||
|
"provided_data_streams": [
|
||||||
|
- "2.0",
|
||||||
|
"3.0"
|
||||||
|
],
|
||||||
|
"data": [
|
||||||
|
@@ -5058,4 +5057,4 @@
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
-}
|
||||||
|
\ No newline at end of file
|
||||||
|
+}
|
||||||
|
diff --git a/etc/leapp/files/pes-events.json b/etc/leapp/files/pes-events.json
|
||||||
|
index c89a1547..5b4b4f87 100644
|
||||||
|
--- a/etc/leapp/files/pes-events.json
|
||||||
|
+++ b/etc/leapp/files/pes-events.json
|
||||||
|
@@ -500347,7 +500347,6 @@ null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"provided_data_streams": [
|
||||||
|
-"2.0",
|
||||||
|
"3.0"
|
||||||
|
],
|
||||||
|
"timestamp": "202401101404Z"
|
||||||
|
diff --git a/etc/leapp/files/repomap.json b/etc/leapp/files/repomap.json
|
||||||
|
index 9b73f2d7..1c97b7de 100644
|
||||||
|
--- a/etc/leapp/files/repomap.json
|
||||||
|
+++ b/etc/leapp/files/repomap.json
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
{
|
||||||
|
- "datetime": "202307241553Z",
|
||||||
|
+ "datetime": "202401171742Z",
|
||||||
|
"version_format": "1.2.0",
|
||||||
|
"mapping": [
|
||||||
|
{
|
||||||
|
@@ -225,6 +225,12 @@
|
||||||
|
"target": [
|
||||||
|
"rhel9-rhui-google-compute-engine-leapp"
|
||||||
|
]
|
||||||
|
+ },
|
||||||
|
+ {
|
||||||
|
+ "source": "rhel8-rhui-custom-client-at-alibaba",
|
||||||
|
+ "target": [
|
||||||
|
+ "rhel9-rhui-custom-client-at-alibaba"
|
||||||
|
+ ]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
@@ -2855,6 +2861,14 @@
|
||||||
|
"channel": "ga",
|
||||||
|
"repo_type": "rpm"
|
||||||
|
},
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-rhel-9-for-aarch64-baseos-rhui-rpms",
|
||||||
|
+ "arch": "aarch64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
+ },
|
||||||
|
{
|
||||||
|
"major_version": "9",
|
||||||
|
"repoid": "rhui-rhel-9-for-x86_64-baseos-e4s-rhui-rpms",
|
||||||
|
@@ -2870,6 +2884,14 @@
|
||||||
|
"channel": "ga",
|
||||||
|
"repo_type": "rpm",
|
||||||
|
"rhui": "google"
|
||||||
|
+ },
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-rhel-9-for-x86_64-baseos-rhui-rpms",
|
||||||
|
+ "arch": "x86_64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
@@ -3059,6 +3081,14 @@
|
||||||
|
"channel": "ga",
|
||||||
|
"repo_type": "rpm"
|
||||||
|
},
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-rhel-9-for-aarch64-appstream-rhui-rpms",
|
||||||
|
+ "arch": "aarch64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
+ },
|
||||||
|
{
|
||||||
|
"major_version": "9",
|
||||||
|
"repoid": "rhui-rhel-9-for-x86_64-appstream-e4s-rhui-rpms",
|
||||||
|
@@ -3074,6 +3104,14 @@
|
||||||
|
"channel": "ga",
|
||||||
|
"repo_type": "rpm",
|
||||||
|
"rhui": "google"
|
||||||
|
+ },
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-rhel-9-for-x86_64-appstream-rhui-rpms",
|
||||||
|
+ "arch": "x86_64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
@@ -3188,6 +3226,14 @@
|
||||||
|
"channel": "ga",
|
||||||
|
"repo_type": "rpm"
|
||||||
|
},
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-codeready-builder-for-rhel-9-aarch64-rhui-rpms",
|
||||||
|
+ "arch": "aarch64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
+ },
|
||||||
|
{
|
||||||
|
"major_version": "9",
|
||||||
|
"repoid": "rhui-codeready-builder-for-rhel-9-x86_64-rhui-rpms",
|
||||||
|
@@ -3195,6 +3241,14 @@
|
||||||
|
"channel": "ga",
|
||||||
|
"repo_type": "rpm",
|
||||||
|
"rhui": "google"
|
||||||
|
+ },
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-codeready-builder-for-rhel-9-x86_64-rhui-rpms",
|
||||||
|
+ "arch": "x86_64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
@@ -3301,6 +3355,14 @@
|
||||||
|
"repo_type": "rpm",
|
||||||
|
"rhui": "aws"
|
||||||
|
},
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-rhel-9-for-aarch64-supplementary-rhui-rpms",
|
||||||
|
+ "arch": "aarch64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
+ },
|
||||||
|
{
|
||||||
|
"major_version": "9",
|
||||||
|
"repoid": "rhui-rhel-9-for-x86_64-supplementary-rhui-rpms",
|
||||||
|
@@ -3308,6 +3370,14 @@
|
||||||
|
"channel": "ga",
|
||||||
|
"repo_type": "rpm",
|
||||||
|
"rhui": "google"
|
||||||
|
+ },
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-rhel-9-for-x86_64-supplementary-rhui-rpms",
|
||||||
|
+ "arch": "x86_64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
@@ -3687,6 +3757,14 @@
|
||||||
|
"channel": "ga",
|
||||||
|
"repo_type": "rpm",
|
||||||
|
"rhui": "google"
|
||||||
|
+ },
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-rhel-9-for-x86_64-highavailability-rhui-rpms",
|
||||||
|
+ "arch": "x86_64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
@@ -3788,10 +3866,30 @@
|
||||||
|
"rhui": "google"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
+ },
|
||||||
|
+ {
|
||||||
|
+ "pesid": "rhel9-rhui-custom-client-at-alibaba",
|
||||||
|
+ "entries": [
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-custom-rhui_client_at_alibaba-rhel-9",
|
||||||
|
+ "arch": "aarch64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
+ },
|
||||||
|
+ {
|
||||||
|
+ "major_version": "9",
|
||||||
|
+ "repoid": "rhui-custom-rhui_client_at_alibaba-rhel-9",
|
||||||
|
+ "arch": "x86_64",
|
||||||
|
+ "channel": "ga",
|
||||||
|
+ "repo_type": "rpm",
|
||||||
|
+ "rhui": "alibaba"
|
||||||
|
+ }
|
||||||
|
+ ]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"provided_data_streams": [
|
||||||
|
- "2.0",
|
||||||
|
"3.0"
|
||||||
|
]
|
||||||
|
-}
|
||||||
|
\ No newline at end of file
|
||||||
|
+}
|
||||||
|
diff --git a/repos/system_upgrade/common/libraries/config/__init__.py b/repos/system_upgrade/common/libraries/config/__init__.py
|
||||||
|
index b3697a4d..9757948e 100644
|
||||||
|
--- a/repos/system_upgrade/common/libraries/config/__init__.py
|
||||||
|
+++ b/repos/system_upgrade/common/libraries/config/__init__.py
|
||||||
|
@@ -3,7 +3,7 @@ from leapp.libraries.stdlib import api
|
||||||
|
|
||||||
|
# The devel variable for target product channel can also contain 'beta'
|
||||||
|
SUPPORTED_TARGET_CHANNELS = {'ga', 'e4s', 'eus', 'aus'}
|
||||||
|
-CONSUMED_DATA_STREAM_ID = '2.0'
|
||||||
|
+CONSUMED_DATA_STREAM_ID = '3.0'
|
||||||
|
|
||||||
|
|
||||||
|
def get_env(name, default=None):
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
@ -0,0 +1,38 @@
|
|||||||
|
From f0ff88658cfa5fb4c766fb2cc44dc93fbe08958d Mon Sep 17 00:00:00 2001
|
||||||
|
From: "jinkangkang.jkk" <jinkangkang.jkk@alibaba-inc.com>
|
||||||
|
Date: Wed, 29 Nov 2023 11:18:11 +0800
|
||||||
|
Subject: [PATCH 64/66] Cover upgrades RHEL 8 to RHEL 9 using RHUI on Alibaba
|
||||||
|
cloud
|
||||||
|
|
||||||
|
Note the repomap.json file does not cover yet mapping of repositories
|
||||||
|
between RHEL 8 and RHEL 9 for aarch64 (ARM). This will be covered
|
||||||
|
by further update of the file.
|
||||||
|
---
|
||||||
|
repos/system_upgrade/common/libraries/rhui.py | 11 +++++++++++
|
||||||
|
1 file changed, 11 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/repos/system_upgrade/common/libraries/rhui.py b/repos/system_upgrade/common/libraries/rhui.py
|
||||||
|
index b31eba0b..2dfb209c 100644
|
||||||
|
--- a/repos/system_upgrade/common/libraries/rhui.py
|
||||||
|
+++ b/repos/system_upgrade/common/libraries/rhui.py
|
||||||
|
@@ -481,6 +481,17 @@ RHUI_CLOUD_MAP = {
|
||||||
|
('leapp-google-sap.repo', YUM_REPOS_PATH)
|
||||||
|
],
|
||||||
|
},
|
||||||
|
+ 'alibaba': {
|
||||||
|
+ 'src_pkg': 'aliyun_rhui_rhel8',
|
||||||
|
+ 'target_pkg': 'aliyun_rhui_rhel9',
|
||||||
|
+ 'leapp_pkg': 'leapp-rhui-alibaba',
|
||||||
|
+ 'leapp_pkg_repo': 'leapp-alibaba.repo',
|
||||||
|
+ 'files_map': [
|
||||||
|
+ ('content.crt', RHUI_PKI_PRODUCT_DIR),
|
||||||
|
+ ('key.pem', RHUI_PKI_DIR),
|
||||||
|
+ ('leapp-alibaba.repo', YUM_REPOS_PATH)
|
||||||
|
+ ],
|
||||||
|
+ },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
@ -0,0 +1,49 @@
|
|||||||
|
From a9e48f836e3bcc4e89f26c25a94b35195db2c043 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Petr Stodulka <pstodulk@redhat.com>
|
||||||
|
Date: Wed, 23 Aug 2023 12:04:05 +0200
|
||||||
|
Subject: [PATCH 65/66] load data files: do not try to download data files when
|
||||||
|
missing
|
||||||
|
|
||||||
|
As the leapp upgrade data files are nowadays part of the install rpm,
|
||||||
|
there is no need to download them anymore. Also, we do not have any
|
||||||
|
plans to provide the updated data files anywhere out of the rpm.
|
||||||
|
|
||||||
|
From that point, do not try to download provided data files anymore.
|
||||||
|
---
|
||||||
|
repos/system_upgrade/common/libraries/fetch.py | 5 ++++-
|
||||||
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/repos/system_upgrade/common/libraries/fetch.py b/repos/system_upgrade/common/libraries/fetch.py
|
||||||
|
index 1ca26170..42fcb74c 100644
|
||||||
|
--- a/repos/system_upgrade/common/libraries/fetch.py
|
||||||
|
+++ b/repos/system_upgrade/common/libraries/fetch.py
|
||||||
|
@@ -20,6 +20,7 @@ def _get_hint():
|
||||||
|
rpmname = 'leapp-upgrade-el{}toel{}'.format(get_source_major_version(), get_target_major_version())
|
||||||
|
hint = (
|
||||||
|
'All official data files are nowadays part of the installed rpms.'
|
||||||
|
+ ' That is the only official resource of actual official data files for in-place upgrades.'
|
||||||
|
' This issue is usually encountered when the data files are incorrectly customized, replaced, or removed'
|
||||||
|
' (e.g. by custom scripts).'
|
||||||
|
' In case you want to recover the original file, remove it (if still exists)'
|
||||||
|
@@ -33,7 +34,9 @@ def _raise_error(local_path, details):
|
||||||
|
"""
|
||||||
|
If the file acquisition fails in any way, throw an informative error to stop the actor.
|
||||||
|
"""
|
||||||
|
+ rpmname = 'leapp-upgrade-el{}toel{}'.format(get_source_major_version(), get_target_major_version())
|
||||||
|
summary = 'Data file {lp} is missing or invalid.'.format(lp=local_path)
|
||||||
|
+
|
||||||
|
raise StopActorExecutionError(summary, details={'details': details, 'hint': _get_hint()})
|
||||||
|
|
||||||
|
|
||||||
|
@@ -174,7 +177,7 @@ def load_data_asset(actor_requesting_asset,
|
||||||
|
|
||||||
|
try:
|
||||||
|
# The asset family ID has the form (major, minor), include only `major` in the URL
|
||||||
|
- raw_asset_contents = read_or_fetch(asset_filename, data_stream=data_stream_major)
|
||||||
|
+ raw_asset_contents = read_or_fetch(asset_filename, data_stream=data_stream_major, allow_download=False)
|
||||||
|
asset_contents = json.loads(raw_asset_contents)
|
||||||
|
except ValueError:
|
||||||
|
msg = 'The {0} file (at {1}) does not contain a valid JSON object.'.format(asset_fulltext_name, asset_filename)
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
319
0066-upgrade-data-files-loading-update-error-msgs-and-rep.patch
Normal file
319
0066-upgrade-data-files-loading-update-error-msgs-and-rep.patch
Normal file
@ -0,0 +1,319 @@
|
|||||||
|
From 353cd03d5339a6f3905f8bc4f067e0758f6e1d78 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Petr Stodulka <pstodulk@redhat.com>
|
||||||
|
Date: Wed, 17 Jan 2024 21:46:19 +0100
|
||||||
|
Subject: [PATCH 66/66] upgrade data files loading: update error msgs and
|
||||||
|
repors + minor changes
|
||||||
|
|
||||||
|
Updated number of error messages and reports to be sure that users
|
||||||
|
know what files are actually problematic. Original errors and reports
|
||||||
|
usually didn't contain the full path to an upgrade data file due to
|
||||||
|
possibility to download the file from a server. However, the posibility
|
||||||
|
to download fresh data files from a requested server is not expected
|
||||||
|
to support in the current state as the data files are part of provided
|
||||||
|
packages.
|
||||||
|
|
||||||
|
I've been thinking quite long time whether to actually drop
|
||||||
|
or deprecate bigger part of the code to simplify the whole solution,
|
||||||
|
as currently it's not planned to have a possibility to download
|
||||||
|
some data files from servers in future. However, thinking about
|
||||||
|
upcoming challenges, I am not totally persuaded that we will not
|
||||||
|
revive that functionality in future, or that we will not want to
|
||||||
|
use it for something little bit different. From that POV (and late
|
||||||
|
phase of development prior the planned release) I think it will be
|
||||||
|
better to preserve it for now and raise a discussion about it later.
|
||||||
|
|
||||||
|
Other changes in this PR:
|
||||||
|
* drop hardcoded name of the leapp-upgrade-elXtoelY rpm and use
|
||||||
|
the leapp.libraries.common.rpms.get_leapp_packages() function
|
||||||
|
* replace REPOSITORY group by SANITY; it was originally a mixture
|
||||||
|
of both and SANITY fits better to me from this point
|
||||||
|
* the check of consumed data sets could produce report with empty
|
||||||
|
links, as the original article(s) we referred to have been obsoleted;
|
||||||
|
so added filter for missing URLs
|
||||||
|
|
||||||
|
Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
|
||||||
|
---
|
||||||
|
.../libraries/check_consumed_assets.py | 31 ++++++++++++++++---
|
||||||
|
.../deviceanddriverdeprecationdataload.py | 3 ++
|
||||||
|
.../libraries/pes_event_parsing.py | 24 +++++++++-----
|
||||||
|
.../libraries/repositoriesmapping.py | 21 +++++++------
|
||||||
|
.../system_upgrade/common/libraries/fetch.py | 28 ++++++++++-------
|
||||||
|
5 files changed, 75 insertions(+), 32 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/repos/system_upgrade/common/actors/checkconsumedassets/libraries/check_consumed_assets.py b/repos/system_upgrade/common/actors/checkconsumedassets/libraries/check_consumed_assets.py
|
||||||
|
index f5998de0..1558c2fc 100644
|
||||||
|
--- a/repos/system_upgrade/common/actors/checkconsumedassets/libraries/check_consumed_assets.py
|
||||||
|
+++ b/repos/system_upgrade/common/actors/checkconsumedassets/libraries/check_consumed_assets.py
|
||||||
|
@@ -4,10 +4,27 @@ from collections import defaultdict, namedtuple
|
||||||
|
from leapp import reporting
|
||||||
|
from leapp.libraries.common.config import get_consumed_data_stream_id
|
||||||
|
from leapp.libraries.common.fetch import ASSET_PROVIDED_DATA_STREAMS_FIELD
|
||||||
|
+from leapp.libraries.common.rpms import get_leapp_packages, LeappComponents
|
||||||
|
from leapp.libraries.stdlib import api
|
||||||
|
from leapp.models import ConsumedDataAsset
|
||||||
|
|
||||||
|
|
||||||
|
+def _get_hint():
|
||||||
|
+ hint = (
|
||||||
|
+ 'All official assets (data files) are part of the installed rpms these days.'
|
||||||
|
+ ' This issue is usually encountered when the data files are incorrectly'
|
||||||
|
+ ' customized, replaced, or removed. '
|
||||||
|
+ ' In case you want to recover the original files, remove them (if they still exist)'
|
||||||
|
+ ' and reinstall the following rpms: {rpms}.\n'
|
||||||
|
+ 'The listed assets (data files) are usually inside the /etc/leapp/files/'
|
||||||
|
+ ' directory.'
|
||||||
|
+ .format(
|
||||||
|
+ rpms=', '.join(get_leapp_packages(component=LeappComponents.REPOSITORY))
|
||||||
|
+ )
|
||||||
|
+ )
|
||||||
|
+ return hint
|
||||||
|
+
|
||||||
|
+
|
||||||
|
def compose_summary_for_incompatible_assets(assets, incompatibility_reason):
|
||||||
|
if not assets:
|
||||||
|
return []
|
||||||
|
@@ -69,13 +86,16 @@ def report_incompatible_assets(assets):
|
||||||
|
summary_lines += compose_summary_for_incompatible_assets(incompatible_assets, reason)
|
||||||
|
|
||||||
|
for asset in incompatible_assets:
|
||||||
|
- doc_url_to_title[asset.docs_url].append(asset.docs_title)
|
||||||
|
+ if asset.docs_url:
|
||||||
|
+ # Add URLs only when they are specified. docs_url could be empty string
|
||||||
|
+ doc_url_to_title[asset.docs_url].append(asset.docs_title)
|
||||||
|
|
||||||
|
report_parts = [
|
||||||
|
reporting.Title(title),
|
||||||
|
reporting.Summary('\n'.join(summary_lines)),
|
||||||
|
reporting.Severity(reporting.Severity.HIGH),
|
||||||
|
- reporting.Groups([reporting.Groups.INHIBITOR, reporting.Groups.REPOSITORY]),
|
||||||
|
+ reporting.Remediation(hint=_get_hint()),
|
||||||
|
+ reporting.Groups([reporting.Groups.INHIBITOR, reporting.Groups.SANITY]),
|
||||||
|
]
|
||||||
|
|
||||||
|
report_parts += make_report_entries_with_unique_urls(docs_url_to_title_map)
|
||||||
|
@@ -101,13 +121,16 @@ def report_malformed_assets(malformed_assets):
|
||||||
|
details = ' - The asset file {filename} contains invalid value in its "{data_streams_field}"'
|
||||||
|
details = details.format(filename=asset.filename, data_streams_field=ASSET_PROVIDED_DATA_STREAMS_FIELD)
|
||||||
|
summary_lines.append(details)
|
||||||
|
- docs_url_to_title_map[asset.docs_url].append(asset.docs_title)
|
||||||
|
+ if asset.docs_url:
|
||||||
|
+ # Add URLs only when they are specified. docs_url could be empty string
|
||||||
|
+ docs_url_to_title_map[asset.docs_url].append(asset.docs_title)
|
||||||
|
|
||||||
|
report_parts = [
|
||||||
|
reporting.Title(title),
|
||||||
|
reporting.Summary('\n'.join(summary_lines)),
|
||||||
|
+ reporting.Remediation(hint=_get_hint()),
|
||||||
|
reporting.Severity(reporting.Severity.HIGH),
|
||||||
|
- reporting.Groups([reporting.Groups.INHIBITOR, reporting.Groups.REPOSITORY]),
|
||||||
|
+ reporting.Groups([reporting.Groups.INHIBITOR, reporting.Groups.SANITY]),
|
||||||
|
]
|
||||||
|
|
||||||
|
report_parts += make_report_entries_with_unique_urls(docs_url_to_title_map)
|
||||||
|
diff --git a/repos/system_upgrade/common/actors/loaddevicedriverdeprecationdata/libraries/deviceanddriverdeprecationdataload.py b/repos/system_upgrade/common/actors/loaddevicedriverdeprecationdata/libraries/deviceanddriverdeprecationdataload.py
|
||||||
|
index 3caa4e0a..f422c2c3 100644
|
||||||
|
--- a/repos/system_upgrade/common/actors/loaddevicedriverdeprecationdata/libraries/deviceanddriverdeprecationdataload.py
|
||||||
|
+++ b/repos/system_upgrade/common/actors/loaddevicedriverdeprecationdata/libraries/deviceanddriverdeprecationdataload.py
|
||||||
|
@@ -13,6 +13,9 @@ def process():
|
||||||
|
supported_device_types = set(DeviceDriverDeprecationEntry.device_type.serialize()['choices'])
|
||||||
|
|
||||||
|
data_file_name = 'device_driver_deprecation_data.json'
|
||||||
|
+ # NOTE(pstodulk): load_data_assert raises StopActorExecutionError, see
|
||||||
|
+ # the code for more info. Keeping the handling on the framework in such
|
||||||
|
+ # a case as we have no work to do in such a case here.
|
||||||
|
deprecation_data = fetch.load_data_asset(api.current_actor(),
|
||||||
|
data_file_name,
|
||||||
|
asset_fulltext_name='Device driver deprecation data',
|
||||||
|
diff --git a/repos/system_upgrade/common/actors/peseventsscanner/libraries/pes_event_parsing.py b/repos/system_upgrade/common/actors/peseventsscanner/libraries/pes_event_parsing.py
|
||||||
|
index 35bcec73..f24dda68 100644
|
||||||
|
--- a/repos/system_upgrade/common/actors/peseventsscanner/libraries/pes_event_parsing.py
|
||||||
|
+++ b/repos/system_upgrade/common/actors/peseventsscanner/libraries/pes_event_parsing.py
|
||||||
|
@@ -8,7 +8,7 @@ from leapp import reporting
|
||||||
|
from leapp.exceptions import StopActorExecution
|
||||||
|
from leapp.libraries.common import fetch
|
||||||
|
from leapp.libraries.common.config import architecture
|
||||||
|
-from leapp.libraries.common.config.version import get_source_major_version, get_target_major_version
|
||||||
|
+from leapp.libraries.common.rpms import get_leapp_packages, LeappComponents
|
||||||
|
from leapp.libraries.stdlib import api
|
||||||
|
|
||||||
|
# NOTE(mhecko): The modulestream field contains a set of modulestreams until the very end when we generate a Package
|
||||||
|
@@ -67,6 +67,9 @@ def get_pes_events(pes_json_directory, pes_json_filename):
|
||||||
|
:return: List of Event tuples, where each event contains event type and input/output pkgs
|
||||||
|
"""
|
||||||
|
try:
|
||||||
|
+ # NOTE(pstodulk): load_data_assert raises StopActorExecutionError, see
|
||||||
|
+ # the code for more info. Keeping the handling on the framework in such
|
||||||
|
+ # a case as we have no work to do in such a case here.
|
||||||
|
events_data = fetch.load_data_asset(api.current_actor(),
|
||||||
|
pes_json_filename,
|
||||||
|
asset_fulltext_name='PES events file',
|
||||||
|
@@ -83,22 +86,27 @@ def get_pes_events(pes_json_directory, pes_json_filename):
|
||||||
|
events_matching_arch = [e for e in all_events if not e.architectures or arch in e.architectures]
|
||||||
|
return events_matching_arch
|
||||||
|
except (ValueError, KeyError):
|
||||||
|
- rpmname = 'leapp-upgrade-el{}toel{}'.format(get_source_major_version(), get_target_major_version())
|
||||||
|
- title = 'Missing/Invalid PES data file ({}/{})'.format(pes_json_directory, pes_json_filename)
|
||||||
|
+ local_path = os.path.join(pes_json_directory, pes_json_filename)
|
||||||
|
+ title = 'Missing/Invalid PES data file ({})'.format(local_path)
|
||||||
|
summary = (
|
||||||
|
'All official data files are nowadays part of the installed rpms.'
|
||||||
|
' This issue is usually encountered when the data files are incorrectly customized, replaced, or removed'
|
||||||
|
' (e.g. by custom scripts).'
|
||||||
|
- ' In case you want to recover the original file, remove it (if still exists)'
|
||||||
|
- ' and reinstall the {} rpm.'
|
||||||
|
- .format(rpmname)
|
||||||
|
+ )
|
||||||
|
+ hint = (
|
||||||
|
+ ' In case you want to recover the original {lp} file, remove it (if it still exists)'
|
||||||
|
+ ' and reinstall the following rpms: {rpms}.'
|
||||||
|
+ .format(
|
||||||
|
+ lp=local_path,
|
||||||
|
+ rpms=', '.join(get_leapp_packages(component=LeappComponents.REPOSITORY))
|
||||||
|
+ )
|
||||||
|
)
|
||||||
|
reporting.create_report([
|
||||||
|
reporting.Title(title),
|
||||||
|
reporting.Summary(summary),
|
||||||
|
+ reporting.Remediation(hint=hint),
|
||||||
|
reporting.Severity(reporting.Severity.HIGH),
|
||||||
|
- reporting.Groups([reporting.Groups.SANITY]),
|
||||||
|
- reporting.Groups([reporting.Groups.INHIBITOR]),
|
||||||
|
+ reporting.Groups([reporting.Groups.SANITY, reporting.Groups.INHIBITOR]),
|
||||||
|
reporting.RelatedResource('file', os.path.join(pes_json_directory, pes_json_filename))
|
||||||
|
])
|
||||||
|
raise StopActorExecution()
|
||||||
|
diff --git a/repos/system_upgrade/common/actors/repositoriesmapping/libraries/repositoriesmapping.py b/repos/system_upgrade/common/actors/repositoriesmapping/libraries/repositoriesmapping.py
|
||||||
|
index 6f2b2e0f..8045634e 100644
|
||||||
|
--- a/repos/system_upgrade/common/actors/repositoriesmapping/libraries/repositoriesmapping.py
|
||||||
|
+++ b/repos/system_upgrade/common/actors/repositoriesmapping/libraries/repositoriesmapping.py
|
||||||
|
@@ -4,6 +4,7 @@ from collections import defaultdict
|
||||||
|
from leapp.exceptions import StopActorExecutionError
|
||||||
|
from leapp.libraries.common.config.version import get_source_major_version, get_target_major_version
|
||||||
|
from leapp.libraries.common.fetch import load_data_asset
|
||||||
|
+from leapp.libraries.common.rpms import get_leapp_packages, LeappComponents
|
||||||
|
from leapp.libraries.stdlib import api
|
||||||
|
from leapp.models import PESIDRepositoryEntry, RepoMapEntry, RepositoriesMapping
|
||||||
|
from leapp.models.fields import ModelViolationError
|
||||||
|
@@ -130,29 +131,31 @@ class RepoMapData(object):
|
||||||
|
|
||||||
|
|
||||||
|
def _inhibit_upgrade(msg):
|
||||||
|
- rpmname = 'leapp-upgrade-el{}toel{}'.format(get_source_major_version(), get_target_major_version())
|
||||||
|
+ local_path = os.path.join('/etc/leapp/file', REPOMAP_FILE)
|
||||||
|
hint = (
|
||||||
|
'All official data files are nowadays part of the installed rpms.'
|
||||||
|
' This issue is usually encountered when the data files are incorrectly customized, replaced, or removed'
|
||||||
|
' (e.g. by custom scripts).'
|
||||||
|
- ' In case you want to recover the original file, remove it (if still exists)'
|
||||||
|
- ' and reinstall the {} rpm.'
|
||||||
|
- .format(rpmname)
|
||||||
|
+ ' In case you want to recover the original {lp} file, remove the current one (if it still exists)'
|
||||||
|
+ ' and reinstall the following packages: {rpms}.'
|
||||||
|
+ .format(
|
||||||
|
+ lp=local_path,
|
||||||
|
+ rpms=', '.join(get_leapp_packages(component=LeappComponents.REPOSITORY))
|
||||||
|
+ )
|
||||||
|
)
|
||||||
|
raise StopActorExecutionError(msg, details={'hint': hint})
|
||||||
|
|
||||||
|
|
||||||
|
def _read_repofile(repofile):
|
||||||
|
- # NOTE: what about catch StopActorExecution error when the file cannot be
|
||||||
|
- # obtained -> then check whether old_repomap file exists and in such a case
|
||||||
|
- # inform user they have to provide the new repomap.json file (we have the
|
||||||
|
- # warning now only which could be potentially overlooked)
|
||||||
|
+ # NOTE(pstodulk): load_data_assert raises StopActorExecutionError, see
|
||||||
|
+ # the code for more info. Keeping the handling on the framework in such
|
||||||
|
+ # a case as we have no work to do in such a case here.
|
||||||
|
repofile_data = load_data_asset(api.current_actor(),
|
||||||
|
repofile,
|
||||||
|
asset_fulltext_name='Repositories mapping',
|
||||||
|
docs_url='',
|
||||||
|
docs_title='')
|
||||||
|
- return repofile_data # If the file does not contain a valid json then load_asset will do a stop actor execution
|
||||||
|
+ return repofile_data
|
||||||
|
|
||||||
|
|
||||||
|
def scan_repositories(read_repofile_func=_read_repofile):
|
||||||
|
diff --git a/repos/system_upgrade/common/libraries/fetch.py b/repos/system_upgrade/common/libraries/fetch.py
|
||||||
|
index 42fcb74c..82bf4ff3 100644
|
||||||
|
--- a/repos/system_upgrade/common/libraries/fetch.py
|
||||||
|
+++ b/repos/system_upgrade/common/libraries/fetch.py
|
||||||
|
@@ -7,7 +7,7 @@ import requests
|
||||||
|
from leapp import models
|
||||||
|
from leapp.exceptions import StopActorExecutionError
|
||||||
|
from leapp.libraries.common.config import get_consumed_data_stream_id, get_env
|
||||||
|
-from leapp.libraries.common.config.version import get_source_major_version, get_target_major_version
|
||||||
|
+from leapp.libraries.common.rpms import get_leapp_packages, LeappComponents
|
||||||
|
from leapp.libraries.stdlib import api
|
||||||
|
|
||||||
|
SERVICE_HOST_DEFAULT = "https://cert.cloud.redhat.com"
|
||||||
|
@@ -16,16 +16,18 @@ MAX_ATTEMPTS = 3
|
||||||
|
ASSET_PROVIDED_DATA_STREAMS_FIELD = 'provided_data_streams'
|
||||||
|
|
||||||
|
|
||||||
|
-def _get_hint():
|
||||||
|
- rpmname = 'leapp-upgrade-el{}toel{}'.format(get_source_major_version(), get_target_major_version())
|
||||||
|
+def _get_hint(local_path):
|
||||||
|
hint = (
|
||||||
|
- 'All official data files are nowadays part of the installed rpms.'
|
||||||
|
- ' That is the only official resource of actual official data files for in-place upgrades.'
|
||||||
|
+ 'All official data files are part of the installed rpms these days.'
|
||||||
|
+ ' The rpm is the only official source of the official data files for in-place upgrades.'
|
||||||
|
' This issue is usually encountered when the data files are incorrectly customized, replaced, or removed'
|
||||||
|
' (e.g. by custom scripts).'
|
||||||
|
- ' In case you want to recover the original file, remove it (if still exists)'
|
||||||
|
- ' and reinstall the {} rpm.'
|
||||||
|
- .format(rpmname)
|
||||||
|
+ ' In case you want to recover the original {lp} file, remove the current one (if it still exists)'
|
||||||
|
+ ' and reinstall the following packages: {rpms}.'
|
||||||
|
+ .format(
|
||||||
|
+ lp=local_path,
|
||||||
|
+ rpms=', '.join(get_leapp_packages(component=LeappComponents.REPOSITORY))
|
||||||
|
+ )
|
||||||
|
)
|
||||||
|
return hint
|
||||||
|
|
||||||
|
@@ -34,10 +36,9 @@ def _raise_error(local_path, details):
|
||||||
|
"""
|
||||||
|
If the file acquisition fails in any way, throw an informative error to stop the actor.
|
||||||
|
"""
|
||||||
|
- rpmname = 'leapp-upgrade-el{}toel{}'.format(get_source_major_version(), get_target_major_version())
|
||||||
|
summary = 'Data file {lp} is missing or invalid.'.format(lp=local_path)
|
||||||
|
|
||||||
|
- raise StopActorExecutionError(summary, details={'details': details, 'hint': _get_hint()})
|
||||||
|
+ raise StopActorExecutionError(summary, details={'details': details, 'hint': _get_hint(local_path)})
|
||||||
|
|
||||||
|
|
||||||
|
def _request_data(service_path, cert, proxies, timeout=REQUEST_TIMEOUT):
|
||||||
|
@@ -148,6 +149,7 @@ def load_data_asset(actor_requesting_asset,
|
||||||
|
docs_title):
|
||||||
|
"""
|
||||||
|
Load the content of the data asset with given asset_filename
|
||||||
|
+ and produce :class:`leapp.model.ConsumedDataAsset` message.
|
||||||
|
|
||||||
|
:param Actor actor_requesting_asset: The actor instance requesting the asset file. It is necessary for the actor
|
||||||
|
to be able to produce ConsumedDataAsset message in order for leapp to be able
|
||||||
|
@@ -157,6 +159,10 @@ def load_data_asset(actor_requesting_asset,
|
||||||
|
:param str docs_url: Docs url to provide if an asset is malformed or outdated.
|
||||||
|
:param str docs_title: Title of the documentation to where `docs_url` points to.
|
||||||
|
:returns: A dict with asset contents (a parsed JSON), or None if the asset was outdated.
|
||||||
|
+ :raises StopActorExecutionError: In following cases:
|
||||||
|
+ * ConsumedDataAsset is not specified in the produces tuple of the actor_requesting_asset actor
|
||||||
|
+ * The content of the required data file is not valid JSON format
|
||||||
|
+ * The required data cannot be obtained (e.g. due to missing file)
|
||||||
|
"""
|
||||||
|
|
||||||
|
# Check that the actor that is attempting to obtain the asset meets the contract to call this function
|
||||||
|
@@ -167,7 +173,7 @@ def load_data_asset(actor_requesting_asset,
|
||||||
|
error_hint = {'hint': ('Read documentation at the following link for more information about how to retrieve '
|
||||||
|
'the valid file: {0}'.format(docs_url))}
|
||||||
|
else:
|
||||||
|
- error_hint = {'hint': _get_hint()}
|
||||||
|
+ error_hint = {'hint': _get_hint(os.path.join('/etc/leapp/files', asset_filename))}
|
||||||
|
|
||||||
|
data_stream_id = get_consumed_data_stream_id()
|
||||||
|
data_stream_major = data_stream_id.split('.', 1)[0]
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
@ -42,7 +42,7 @@ py2_byte_compile "%1" "%2"}
|
|||||||
|
|
||||||
Name: leapp-repository
|
Name: leapp-repository
|
||||||
Version: 0.19.0
|
Version: 0.19.0
|
||||||
Release: 7%{?dist}
|
Release: 8%{?dist}
|
||||||
Summary: Repositories for leapp
|
Summary: Repositories for leapp
|
||||||
|
|
||||||
License: ASL 2.0
|
License: ASL 2.0
|
||||||
@ -119,6 +119,13 @@ Patch0059: 0059-Introduce-custom-modifications-tracking.patch
|
|||||||
Patch0060: 0060-Rework-_copy_decouple-to-follow-relative-symlinks-an.patch
|
Patch0060: 0060-Rework-_copy_decouple-to-follow-relative-symlinks-an.patch
|
||||||
Patch0061: 0061-Update-the-data-files-pes-repomap-dddd-CTC2-0.patch
|
Patch0061: 0061-Update-the-data-files-pes-repomap-dddd-CTC2-0.patch
|
||||||
|
|
||||||
|
# CTC2-1
|
||||||
|
Patch0062: 0062-Use-happy_path-instead-e2e-for-public-clouds.patch
|
||||||
|
Patch0063: 0063-Update-upgrade-data-bump-required-data-stream-to-3.0.patch
|
||||||
|
Patch0064: 0064-Cover-upgrades-RHEL-8-to-RHEL-9-using-RHUI-on-Alibab.patch
|
||||||
|
Patch0065: 0065-load-data-files-do-not-try-to-download-data-files-wh.patch
|
||||||
|
Patch0066: 0066-upgrade-data-files-loading-update-error-msgs-and-rep.patch
|
||||||
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
%{summary}
|
%{summary}
|
||||||
@ -331,6 +338,11 @@ Requires: python3-gobject-base
|
|||||||
%patch0059 -p1
|
%patch0059 -p1
|
||||||
%patch0060 -p1
|
%patch0060 -p1
|
||||||
%patch0061 -p1
|
%patch0061 -p1
|
||||||
|
%patch0062 -p1
|
||||||
|
%patch0063 -p1
|
||||||
|
%patch0064 -p1
|
||||||
|
%patch0065 -p1
|
||||||
|
%patch0066 -p1
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -408,6 +420,14 @@ done;
|
|||||||
# no files here
|
# no files here
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jan 18 2024 Petr Stodulka <pstodulk@redhat.com> - 0.19.0-8
|
||||||
|
- Do not try to download data files anymore when missing as the service
|
||||||
|
is obsoleted since the data is part of installed packages
|
||||||
|
- Update error messages and reports when installed upgrade data files
|
||||||
|
are malformed or missing to instruct user how to resolve it
|
||||||
|
- Update the leapp upgrade data files - bump data stream to "3.0"
|
||||||
|
- Resolves: RHEL-18298
|
||||||
|
|
||||||
* Fri Jan 12 2024 Petr Stodulka <pstodulk@redhat.com> - 0.19.0-7
|
* Fri Jan 12 2024 Petr Stodulka <pstodulk@redhat.com> - 0.19.0-7
|
||||||
- Add detection of possible usage of OpenSSL IBMCA engine on IBM Z machines
|
- Add detection of possible usage of OpenSSL IBMCA engine on IBM Z machines
|
||||||
- Add detection of modified /etc/pki/tls/openssl.cnf file
|
- Add detection of modified /etc/pki/tls/openssl.cnf file
|
||||||
|
Loading…
Reference in New Issue
Block a user