forked from rpms/leapp-repository
Update Vendors patch against upstream c4f3ace1ebb909dc53796e16959a2459a15d9d74 (0.23.0-1)
The package version 0.23.0-1.elevate.3
This commit is contained in:
parent
2f853fc90e
commit
31fc535305
@ -1,3 +1,95 @@
|
|||||||
|
diff --git a/.github/workflows/codespell.yml b/.github/workflows/codespell.yml
|
||||||
|
index 3e595e32..4b07e4b3 100644
|
||||||
|
--- a/.github/workflows/codespell.yml
|
||||||
|
+++ b/.github/workflows/codespell.yml
|
||||||
|
@@ -14,7 +14,7 @@ jobs:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- - uses: actions/checkout@v4
|
||||||
|
+ - uses: actions/checkout@v5
|
||||||
|
- uses: codespell-project/actions-codespell@v2
|
||||||
|
with:
|
||||||
|
ignore_words_list: ro,fo,couldn,repositor,zeor,bootup
|
||||||
|
diff --git a/.github/workflows/differential-shellcheck.yml b/.github/workflows/differential-shellcheck.yml
|
||||||
|
index e1bafb93..6c81713c 100644
|
||||||
|
--- a/.github/workflows/differential-shellcheck.yml
|
||||||
|
+++ b/.github/workflows/differential-shellcheck.yml
|
||||||
|
@@ -19,7 +19,7 @@ jobs:
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Repository checkout
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
+ uses: actions/checkout@v5
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml
|
||||||
|
index ed82e0e5..d1b8fb2a 100644
|
||||||
|
--- a/.github/workflows/unit-tests.yml
|
||||||
|
+++ b/.github/workflows/unit-tests.yml
|
||||||
|
@@ -19,40 +19,40 @@ jobs:
|
||||||
|
- name: 'Unit tests (python:3.12; repos:el9toel10,common)'
|
||||||
|
python: python3.12
|
||||||
|
repos: 'el9toel10,common'
|
||||||
|
- container: ubi9
|
||||||
|
+ container: el9
|
||||||
|
- name: 'Linters (python:3.12; repos:el9toel10,common)'
|
||||||
|
python: python3.12
|
||||||
|
repos: 'el9toel10,common'
|
||||||
|
- container: ubi9-lint
|
||||||
|
+ container: el9-lint
|
||||||
|
- name: 'Unit tests (python:3.9; repos:el9toel10,common)'
|
||||||
|
python: python3.9
|
||||||
|
repos: 'el9toel10,common'
|
||||||
|
- container: ubi9
|
||||||
|
+ container: el9
|
||||||
|
- name: 'Linters (python:3.9; repos:el9toel10,common)'
|
||||||
|
python: python3.9
|
||||||
|
repos: 'el9toel10,common'
|
||||||
|
- container: ubi9-lint
|
||||||
|
+ container: el9-lint
|
||||||
|
# 8to9
|
||||||
|
- name: 'Unit tests (python:3.9; repos:el8toel9,common)'
|
||||||
|
python: python3.9
|
||||||
|
repos: 'el8toel9,common'
|
||||||
|
- container: ubi9
|
||||||
|
+ container: el9
|
||||||
|
- name: 'Linters (python:3.9; repos:el8toel9,common)'
|
||||||
|
python: python3.9
|
||||||
|
repos: 'el8toel9,common'
|
||||||
|
- container: ubi9-lint
|
||||||
|
+ container: el9-lint
|
||||||
|
- name: 'Unit tests (python:3.6; repos:el8toel9,common)'
|
||||||
|
python: python3.6
|
||||||
|
repos: 'el8toel9,common'
|
||||||
|
- container: ubi8
|
||||||
|
+ container: el8
|
||||||
|
- name: 'Linters (python:3.6; repos:el8toel9,common)'
|
||||||
|
python: python3.6
|
||||||
|
repos: 'el8toel9,common'
|
||||||
|
- container: ubi8-lint
|
||||||
|
+ container: el8-lint
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
+ uses: actions/checkout@v5
|
||||||
|
with:
|
||||||
|
# NOTE(ivasilev) fetch-depth 0 is critical here as leapp deps discovery depends on specific substring in
|
||||||
|
# commit message and default 1 option will get us just merge commit which has an unrelevant message.
|
||||||
|
@@ -63,4 +63,10 @@ jobs:
|
||||||
|
run: |
|
||||||
|
git branch -f main origin/main
|
||||||
|
- name: ${{matrix.scenarios.name}}
|
||||||
|
- run: script -e -c /bin/bash -c 'TERM=xterm podman build --security-opt=seccomp=unconfined -t leapp-tests -f utils/container-tests/Containerfile.${{matrix.scenarios.container}} utils/container-tests && PYTHON_VENV=${{matrix.scenarios.python}} REPOSITORIES=${{matrix.scenarios.repos}} podman run --security-opt=seccomp=unconfined --rm -ti -v ${PWD}:/payload --env=PYTHON_VENV --env=REPOSITORIES leapp-tests'
|
||||||
|
+ run: |
|
||||||
|
+ script -e -c /bin/bash -c \
|
||||||
|
+ 'TERM=xterm \
|
||||||
|
+ podman build -t leapp-tests -f utils/container-tests/ci/Containerfile.${{matrix.scenarios.container}} . && \
|
||||||
|
+ PYTHON_VENV=${{matrix.scenarios.python}} \
|
||||||
|
+ REPOSITORIES=${{matrix.scenarios.repos}} \
|
||||||
|
+ podman run --rm -ti -v ${PWD}:/payload --env=PYTHON_VENV --env=REPOSITORIES leapp-tests'
|
||||||
diff --git a/.gitignore b/.gitignore
|
diff --git a/.gitignore b/.gitignore
|
||||||
index 0bb92d3d..a04c7ded 100644
|
index 0bb92d3d..a04c7ded 100644
|
||||||
--- a/.gitignore
|
--- a/.gitignore
|
||||||
@ -10,6 +102,126 @@ index 0bb92d3d..a04c7ded 100644
|
|||||||
|
|
||||||
# pycharm
|
# pycharm
|
||||||
.idea
|
.idea
|
||||||
|
diff --git a/Makefile b/Makefile
|
||||||
|
index 81b16376..754c2c63 100644
|
||||||
|
--- a/Makefile
|
||||||
|
+++ b/Makefile
|
||||||
|
@@ -51,7 +51,7 @@ _COPR_CONFIG=$${COPR_CONFIG:-~/.config/copr_rh_oamg.conf}
|
||||||
|
_CONTAINER_TOOL=$${CONTAINER_TOOL:-podman}
|
||||||
|
|
||||||
|
# container to run tests in
|
||||||
|
-_TEST_CONTAINER=$${TEST_CONTAINER:-rhel8}
|
||||||
|
+_TEST_CONTAINER=$${TEST_CONTAINER:-el8}
|
||||||
|
|
||||||
|
# In case just specific CHROOTs should be used for the COPR build, you can
|
||||||
|
# set the multiple CHROOTs separated by comma in the COPR_CHROOT envar, e.g.
|
||||||
|
@@ -129,7 +129,7 @@ help:
|
||||||
|
@echo " test lint source code and run tests"
|
||||||
|
@echo " test_no_lint run tests without linting the source code"
|
||||||
|
@echo " test_container run lint and tests in container"
|
||||||
|
- @echo " - default container is 'rhel8'"
|
||||||
|
+ @echo " - default container is 'el8'"
|
||||||
|
@echo " - can be changed by setting TEST_CONTAINER env"
|
||||||
|
@echo " test_container_all run lint and tests in all available containers"
|
||||||
|
@echo " test_container_no_lint run tests without linting in container, see test_container"
|
||||||
|
@@ -164,9 +164,9 @@ help:
|
||||||
|
@echo " PR=7 SUFFIX='my_additional_suffix' make <target>"
|
||||||
|
@echo " MR=6 COPR_CONFIG='path/to/the/config/copr/file' make <target>"
|
||||||
|
@echo " ACTOR=<actor> TEST_LIBS=y make test"
|
||||||
|
- @echo " BUILD_CONTAINER=rhel8 make build_container"
|
||||||
|
- @echo " TEST_CONTAINER=f34 make test_container"
|
||||||
|
- @echo " CONTAINER_TOOL=docker TEST_CONTAINER=rhel8 make test_container_no_lint"
|
||||||
|
+ @echo " BUILD_CONTAINER=el8 make build_container"
|
||||||
|
+ @echo " TEST_CONTAINER=f42 make test_container"
|
||||||
|
+ @echo " CONTAINER_TOOL=docker TEST_CONTAINER=el8 make test_container_no_lint"
|
||||||
|
@echo ""
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@@ -252,10 +252,10 @@ build_container:
|
||||||
|
echo "--- Build RPM ${PKGNAME}-${VERSION}-${RELEASE}.el$(DIST_VERSION).rpm in container ---";
|
||||||
|
case "$(BUILD_CONTAINER)" in \
|
||||||
|
el8) \
|
||||||
|
- CONT_FILE="utils/container-builds/Containerfile.ubi8"; \
|
||||||
|
+ CONT_FILE="utils/container-builds/Containerfile.el8"; \
|
||||||
|
;; \
|
||||||
|
el9) \
|
||||||
|
- CONT_FILE="utils/container-builds/Containerfile.ubi9"; \
|
||||||
|
+ CONT_FILE="utils/container-builds/Containerfile.el9"; \
|
||||||
|
;; \
|
||||||
|
"") \
|
||||||
|
echo "BUILD_CONTAINER must be set"; \
|
||||||
|
@@ -379,7 +379,6 @@ test_no_lint:
|
||||||
|
done; \
|
||||||
|
$(_PYTHON_VENV) -m pytest $(REPORT_ARG) $(TEST_PATHS) $(LIBRARY_PATH) $(PYTEST_ARGS)
|
||||||
|
|
||||||
|
-
|
||||||
|
test: lint test_no_lint
|
||||||
|
|
||||||
|
# container images act like a cache so that dependencies can only be downloaded once
|
||||||
|
@@ -416,7 +415,7 @@ lint_container:
|
||||||
|
@_TEST_CONT_TARGET="lint" $(MAKE) test_container
|
||||||
|
|
||||||
|
lint_container_all:
|
||||||
|
- @for container in "f34" "rhel8" "rhel9"; do \
|
||||||
|
+ @for container in f42 el{8,9}; do \
|
||||||
|
TEST_CONTAINER=$$container $(MAKE) lint_container || exit 1; \
|
||||||
|
done
|
||||||
|
|
||||||
|
@@ -426,20 +425,20 @@ lint_container_all:
|
||||||
|
# because e.g RHEL8 to RHEL9 IPU must work on python3.6 and python3.9.
|
||||||
|
test_container:
|
||||||
|
@case $(_TEST_CONTAINER) in \
|
||||||
|
- f34) \
|
||||||
|
- export CONT_FILE="utils/container-tests/Containerfile.f34"; \
|
||||||
|
- export _VENV="python3.9"; \
|
||||||
|
+ f42) \
|
||||||
|
+ export CONT_FILE="utils/container-tests/Containerfile.f42"; \
|
||||||
|
+ export _VENV="python3.13"; \
|
||||||
|
;; \
|
||||||
|
- rhel8) \
|
||||||
|
- export CONT_FILE="utils/container-tests/Containerfile.rhel8"; \
|
||||||
|
+ el8) \
|
||||||
|
+ export CONT_FILE="utils/container-tests/Containerfile.el8"; \
|
||||||
|
export _VENV="python3.6"; \
|
||||||
|
;; \
|
||||||
|
- rhel9) \
|
||||||
|
- export CONT_FILE="utils/container-tests/Containerfile.rhel9"; \
|
||||||
|
+ el9) \
|
||||||
|
+ export CONT_FILE="utils/container-tests/Containerfile.el9"; \
|
||||||
|
export _VENV="python3.9"; \
|
||||||
|
;; \
|
||||||
|
*) \
|
||||||
|
- echo "Error: Available containers are: f34, rhel8, rhel9"; exit 1; \
|
||||||
|
+ echo "Error: Available containers are: f42, el8, el9"; exit 1; \
|
||||||
|
;; \
|
||||||
|
esac; \
|
||||||
|
export TEST_IMAGE="leapp-repo-tests-$(_TEST_CONTAINER)"; \
|
||||||
|
@@ -471,7 +470,7 @@ test_container:
|
||||||
|
exit $$res
|
||||||
|
|
||||||
|
test_container_all:
|
||||||
|
- @for container in "f34" "rhel8" "rhel9"; do \
|
||||||
|
+ @for container in "f42" "el8" "el9"; do \
|
||||||
|
TEST_CONTAINER=$$container $(MAKE) test_container || exit 1; \
|
||||||
|
done
|
||||||
|
|
||||||
|
@@ -479,14 +478,13 @@ test_container_no_lint:
|
||||||
|
@_TEST_CONT_TARGET="test_no_lint" $(MAKE) test_container
|
||||||
|
|
||||||
|
test_container_all_no_lint:
|
||||||
|
- @for container in "f34" "rhel8" "rhel9"; do \
|
||||||
|
+ @for container in f42 el{8,9}; do \
|
||||||
|
TEST_CONTAINER=$$container $(MAKE) test_container_no_lint || exit 1; \
|
||||||
|
done
|
||||||
|
|
||||||
|
# clean all testing and building containers and their images
|
||||||
|
clean_containers:
|
||||||
|
- @for i in "leapp-repo-tests-f34" "leapp-repo-tests-rhel8" \
|
||||||
|
- "leapp-repo-tests-rhel9" "leapp-repo-build-el8"; do \
|
||||||
|
+ @for i in leapp-repo-tests-f42 leapp-repo-tests-el{8,9} leapp-repo-build-el{8,9}; do \
|
||||||
|
$(_CONTAINER_TOOL) kill "$$i-cont" || :; \
|
||||||
|
$(_CONTAINER_TOOL) rm "$$i-cont" || :; \
|
||||||
|
$(_CONTAINER_TOOL) rmi "$$i" || :; \
|
||||||
diff --git a/ci/.gitignore b/ci/.gitignore
|
diff --git a/ci/.gitignore b/ci/.gitignore
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 00000000..e6f97f0f
|
index 00000000..e6f97f0f
|
||||||
@ -3421,6 +3633,22 @@ index 00000000..370758e6
|
|||||||
+ end
|
+ end
|
||||||
+ end
|
+ end
|
||||||
+end
|
+end
|
||||||
|
diff --git a/commands/tests/test_upgrade_paths.py b/commands/tests/test_upgrade_paths.py
|
||||||
|
index 89b5eb71..9bdf5792 100644
|
||||||
|
--- a/commands/tests/test_upgrade_paths.py
|
||||||
|
+++ b/commands/tests/test_upgrade_paths.py
|
||||||
|
@@ -42,6 +42,11 @@ def test_get_target_version(mock_open, monkeypatch):
|
||||||
|
},
|
||||||
|
)
|
||||||
|
def test_get_target_release(mock_open, monkeypatch): # do not remove mock_open
|
||||||
|
+ # Make it look like it's RHEL even on centos, because that's what the test
|
||||||
|
+ # assumes.
|
||||||
|
+ # Otherwise the test, when ran on Centos, fails because it works
|
||||||
|
+ # with MAJOR.MINOR version format while Centos uses MAJOR format.
|
||||||
|
+ monkeypatch.setattr(command_utils, 'get_distro_id', lambda: 'rhel')
|
||||||
|
monkeypatch.setattr(command_utils, 'get_os_release_version_id', lambda x: '8.6')
|
||||||
|
|
||||||
|
# make sure env var LEAPP_DEVEL_TARGET_RELEASE takes precedence
|
||||||
diff --git a/etc/leapp/transaction/to_reinstall b/etc/leapp/transaction/to_reinstall
|
diff --git a/etc/leapp/transaction/to_reinstall b/etc/leapp/transaction/to_reinstall
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 00000000..c6694a8e
|
index 00000000..c6694a8e
|
||||||
@ -3844,6 +4072,19 @@ index 366b5cab..d2bf7313 100644
|
|||||||
-After=basic.target sysroot.mount
|
-After=basic.target sysroot.mount
|
||||||
+After=basic.target sysroot.mount initrd-fs.target
|
+After=basic.target sysroot.mount initrd-fs.target
|
||||||
AllowIsolate=yes
|
AllowIsolate=yes
|
||||||
|
diff --git a/repos/system_upgrade/common/actors/createresumeservice/tests/test_createresumeservice.py b/repos/system_upgrade/common/actors/createresumeservice/tests/test_createresumeservice.py
|
||||||
|
index 5302cdd2..c1cefc37 100644
|
||||||
|
--- a/repos/system_upgrade/common/actors/createresumeservice/tests/test_createresumeservice.py
|
||||||
|
+++ b/repos/system_upgrade/common/actors/createresumeservice/tests/test_createresumeservice.py
|
||||||
|
@@ -6,7 +6,7 @@ import pytest
|
||||||
|
|
||||||
|
@pytest.mark.skipif(os.getuid() != 0, reason='User is not a root')
|
||||||
|
@pytest.mark.skipif(
|
||||||
|
- distro.linux_distribution()[0] == 'Fedora',
|
||||||
|
+ distro.id() == 'fedora',
|
||||||
|
reason='default.target.wants does not exists on Fedora distro',
|
||||||
|
)
|
||||||
|
def test_create_resume_service(current_actor_context):
|
||||||
diff --git a/repos/system_upgrade/common/actors/distributionsignedrpmscanner/actor.py b/repos/system_upgrade/common/actors/distributionsignedrpmscanner/actor.py
|
diff --git a/repos/system_upgrade/common/actors/distributionsignedrpmscanner/actor.py b/repos/system_upgrade/common/actors/distributionsignedrpmscanner/actor.py
|
||||||
index 003f3fc5..9e7bbf4a 100644
|
index 003f3fc5..9e7bbf4a 100644
|
||||||
--- a/repos/system_upgrade/common/actors/distributionsignedrpmscanner/actor.py
|
--- a/repos/system_upgrade/common/actors/distributionsignedrpmscanner/actor.py
|
||||||
@ -6618,6 +6859,34 @@ index c076fe6b..2455a2f6 100644
|
|||||||
UPGRADE_BLS_DIR = '/boot/upgrade-loader'
|
UPGRADE_BLS_DIR = '/boot/upgrade-loader'
|
||||||
|
|
||||||
CONTAINER_DOWNLOAD_DIR = '/tmp_pkg_download_dir'
|
CONTAINER_DOWNLOAD_DIR = '/tmp_pkg_download_dir'
|
||||||
|
diff --git a/repos/system_upgrade/el8toel9/actors/networkmanagerconnectionscanner/tests/unit_test_networkmanagerconnectionscanner.py b/repos/system_upgrade/el8toel9/actors/networkmanagerconnectionscanner/tests/unit_test_networkmanagerconnectionscanner.py
|
||||||
|
index 46af07c1..7558b307 100644
|
||||||
|
--- a/repos/system_upgrade/el8toel9/actors/networkmanagerconnectionscanner/tests/unit_test_networkmanagerconnectionscanner.py
|
||||||
|
+++ b/repos/system_upgrade/el8toel9/actors/networkmanagerconnectionscanner/tests/unit_test_networkmanagerconnectionscanner.py
|
||||||
|
@@ -1,4 +1,5 @@
|
||||||
|
import errno
|
||||||
|
+import sys
|
||||||
|
import textwrap
|
||||||
|
|
||||||
|
import pytest
|
||||||
|
@@ -57,7 +58,16 @@ def test_no_conf(monkeypatch):
|
||||||
|
assert not api.produce.called
|
||||||
|
|
||||||
|
|
||||||
|
-@pytest.mark.skipif(not nmconnscanner.libnm_available, reason="NetworkManager g-ir not installed")
|
||||||
|
+@pytest.mark.skipif(
|
||||||
|
+ sys.version_info.major != 3 or sys.version_info.minor != 6,
|
||||||
|
+ # On Python > 3.6 the GLib and NM libraries apparently behave differently and
|
||||||
|
+ # the test fails. Let's skip it since the actor it's only ever run with
|
||||||
|
+ # Python3.6 (el8toel9 repo and FactsPhase)
|
||||||
|
+ reason="Only runs on Python 3.6",
|
||||||
|
+)
|
||||||
|
+@pytest.mark.skipif(
|
||||||
|
+ not nmconnscanner.libnm_available, reason="NetworkManager g-ir not installed"
|
||||||
|
+)
|
||||||
|
def test_nm_conn(monkeypatch):
|
||||||
|
"""
|
||||||
|
Check a basic keyfile
|
||||||
diff --git a/repos/system_upgrade/el8toel9/actors/removeupgradeefientry/libraries/removeupgradeefientry.py b/repos/system_upgrade/el8toel9/actors/removeupgradeefientry/libraries/removeupgradeefientry.py
|
diff --git a/repos/system_upgrade/el8toel9/actors/removeupgradeefientry/libraries/removeupgradeefientry.py b/repos/system_upgrade/el8toel9/actors/removeupgradeefientry/libraries/removeupgradeefientry.py
|
||||||
index daa7b2ca..dd604d8b 100644
|
index daa7b2ca..dd604d8b 100644
|
||||||
--- a/repos/system_upgrade/el8toel9/actors/removeupgradeefientry/libraries/removeupgradeefientry.py
|
--- a/repos/system_upgrade/el8toel9/actors/removeupgradeefientry/libraries/removeupgradeefientry.py
|
||||||
@ -6649,3 +6918,332 @@ index daa7b2ca..dd604d8b 100644
|
|||||||
|
|
||||||
|
|
||||||
def get_workaround_efi_info():
|
def get_workaround_efi_info():
|
||||||
|
diff --git a/repos/system_upgrade/el9toel10/actors/sssd/sssdchecks/libraries/sssdchecks.py b/repos/system_upgrade/el9toel10/actors/sssd/sssdchecks/libraries/sssdchecks.py
|
||||||
|
index 0a86fa7b..cb95026c 100644
|
||||||
|
--- a/repos/system_upgrade/el9toel10/actors/sssd/sssdchecks/libraries/sssdchecks.py
|
||||||
|
+++ b/repos/system_upgrade/el9toel10/actors/sssd/sssdchecks/libraries/sssdchecks.py
|
||||||
|
@@ -15,8 +15,8 @@ def check_config(model):
|
||||||
|
'SSSD\'s sss_ssh_knownhostsproxy tool is replaced by the more '
|
||||||
|
'reliable sss_ssh_knownhosts tool. SSH\'s configuration will be updated '
|
||||||
|
'to reflect this by updating every mention of sss_ssh_knownhostsproxy by '
|
||||||
|
- 'the corresponding mention of sss_ssh_knownhosts, even those commented out.\n'
|
||||||
|
- 'SSSD\'s ssh service will be enabled if not already done.\n'
|
||||||
|
+ 'the corresponding mention of sss_ssh_knownhosts, even those commented out. '
|
||||||
|
+ 'SSSD\'s ssh service will be enabled if not already done.\n\n'
|
||||||
|
'The following files will be updated:{}{}'.format(
|
||||||
|
FMT_LIST_SEPARATOR,
|
||||||
|
FMT_LIST_SEPARATOR.join(model.sssd_config_files + model.ssh_config_files)
|
||||||
|
diff --git a/repos/system_upgrade/el9toel10/actors/sssd/sssdfacts/libraries/sssdfacts.py b/repos/system_upgrade/el9toel10/actors/sssd/sssdfacts/libraries/sssdfacts.py
|
||||||
|
index 0ae9d93f..7d343229 100644
|
||||||
|
--- a/repos/system_upgrade/el9toel10/actors/sssd/sssdfacts/libraries/sssdfacts.py
|
||||||
|
+++ b/repos/system_upgrade/el9toel10/actors/sssd/sssdfacts/libraries/sssdfacts.py
|
||||||
|
@@ -19,7 +19,10 @@ def _does_file_contain_expression(file_path, expression):
|
||||||
|
)
|
||||||
|
return False
|
||||||
|
except OSError as e:
|
||||||
|
- raise StopActorExecutionError('Could not open file ' + file_path, details={'details': str(e)})
|
||||||
|
+ raise StopActorExecutionError(
|
||||||
|
+ 'Could not open configuration file',
|
||||||
|
+ details={'details': 'Coudn\'t open {} file with error: {}.'.format(file_path, str(e))}
|
||||||
|
+ )
|
||||||
|
|
||||||
|
|
||||||
|
def _look_for_files(expression: str, path_list: list[str]) -> list[str]:
|
||||||
|
diff --git a/repos/system_upgrade/el9toel10/actors/sssd/sssdupdate/libraries/sssdupdate.py b/repos/system_upgrade/el9toel10/actors/sssd/sssdupdate/libraries/sssdupdate.py
|
||||||
|
index 6d745ead..5b96bcc6 100644
|
||||||
|
--- a/repos/system_upgrade/el9toel10/actors/sssd/sssdupdate/libraries/sssdupdate.py
|
||||||
|
+++ b/repos/system_upgrade/el9toel10/actors/sssd/sssdupdate/libraries/sssdupdate.py
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
import os
|
||||||
|
import re
|
||||||
|
|
||||||
|
-from leapp.exceptions import StopActorExecutionError
|
||||||
|
+from leapp.libraries.stdlib import api
|
||||||
|
|
||||||
|
|
||||||
|
def _process_knownhosts(line: str) -> str:
|
||||||
|
@@ -29,30 +29,26 @@ def _process_enable_svc(line: str) -> str:
|
||||||
|
|
||||||
|
|
||||||
|
def _update_file(filename, process_function):
|
||||||
|
- newname = filename + '.new'
|
||||||
|
- oldname = filename + '.old'
|
||||||
|
+ newname = '{}.leappnew'.format(filename)
|
||||||
|
+ oldname = '{}.leappsave'.format(filename)
|
||||||
|
try:
|
||||||
|
- with open(filename, 'r') as input_file, open(newname, 'x') as output_file:
|
||||||
|
+ with open(filename, 'r') as input_file, open(newname, 'w') as output_file:
|
||||||
|
istat = os.fstat(input_file.fileno())
|
||||||
|
os.fchmod(output_file.fileno(), istat.st_mode)
|
||||||
|
for line in input_file:
|
||||||
|
try:
|
||||||
|
output_file.write(process_function(line))
|
||||||
|
except OSError as e:
|
||||||
|
- raise StopActorExecutionError('Failed to write to {}'.format(newname),
|
||||||
|
- details={'details': str(e)})
|
||||||
|
+ api.current_logger().warning('Failed to write to {}'.format(newname), details={'details': str(e)})
|
||||||
|
|
||||||
|
- except FileExistsError as e:
|
||||||
|
- raise StopActorExecutionError('Temporary file already exists: {}'.format(newname),
|
||||||
|
- details={'details': str(e)})
|
||||||
|
except OSError as e:
|
||||||
|
try:
|
||||||
|
os.unlink(newname)
|
||||||
|
except FileNotFoundError:
|
||||||
|
pass
|
||||||
|
- raise StopActorExecutionError('Failed to access the required files', details={'details': str(e)})
|
||||||
|
+ api.current_logger().error('Failed to access the required files', details={'details': str(e)})
|
||||||
|
|
||||||
|
- # Let's make sure the old configuration is preserverd if something goes wrong
|
||||||
|
+ # Let's make sure the old configuration is preserved if something goes wrong
|
||||||
|
os.replace(filename, oldname)
|
||||||
|
os.replace(newname, filename)
|
||||||
|
os.unlink(oldname)
|
||||||
|
diff --git a/utils/container-builds/Containerfile.centos7 b/utils/container-builds/Containerfile.centos7
|
||||||
|
deleted file mode 100644
|
||||||
|
index af00eddb..00000000
|
||||||
|
--- a/utils/container-builds/Containerfile.centos7
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,15 +0,0 @@
|
||||||
|
-FROM centos:7
|
||||||
|
-
|
||||||
|
-VOLUME /repo
|
||||||
|
-
|
||||||
|
-# mirror.centos.org is dead, comment out mirrorlist and set baseurl to vault.centos.org
|
||||||
|
-RUN sed -i s/mirror.centos.org/vault.centos.org/ /etc/yum.repos.d/CentOS-*.repo
|
||||||
|
-RUN sed -i s/^#\s*baseurl=http/baseurl=http/ /etc/yum.repos.d/CentOS-*.repo
|
||||||
|
-RUN sed -i s/^mirrorlist=http/#mirrorlist=http/ /etc/yum.repos.d/CentOS-*.repo
|
||||||
|
-
|
||||||
|
-RUN yum update -y && \
|
||||||
|
- yum install -y rpm-build python-devel make git
|
||||||
|
-
|
||||||
|
-WORKDIR /repo
|
||||||
|
-ENV DIST_VERSION 7
|
||||||
|
-ENTRYPOINT make _build_local
|
||||||
|
diff --git a/utils/container-builds/Containerfile.ubi8 b/utils/container-builds/Containerfile.el8
|
||||||
|
similarity index 100%
|
||||||
|
rename from utils/container-builds/Containerfile.ubi8
|
||||||
|
rename to utils/container-builds/Containerfile.el8
|
||||||
|
diff --git a/utils/container-builds/Containerfile.ubi9 b/utils/container-builds/Containerfile.el9
|
||||||
|
similarity index 100%
|
||||||
|
rename from utils/container-builds/Containerfile.ubi9
|
||||||
|
rename to utils/container-builds/Containerfile.el9
|
||||||
|
diff --git a/utils/container-tests/Containerfile.el8 b/utils/container-tests/Containerfile.el8
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..b92e8742
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/utils/container-tests/Containerfile.el8
|
||||||
|
@@ -0,0 +1,24 @@
|
||||||
|
+FROM centos:8
|
||||||
|
+
|
||||||
|
+RUN sed -i s/mirror.centos.org/vault.centos.org/ /etc/yum.repos.d/CentOS-*.repo
|
||||||
|
+RUN sed -i s/^#\s*baseurl=http/baseurl=http/ /etc/yum.repos.d/CentOS-*.repo
|
||||||
|
+RUN sed -i s/^mirrorlist=http/#mirrorlist=http/ /etc/yum.repos.d/CentOS-*.repo
|
||||||
|
+
|
||||||
|
+VOLUME /repo
|
||||||
|
+
|
||||||
|
+RUN dnf update -y && \
|
||||||
|
+ dnf install -y git make rsync \
|
||||||
|
+ python3-virtualenv python3-setuptools python3-pip \
|
||||||
|
+ python3-gobject NetworkManager-libnm
|
||||||
|
+
|
||||||
|
+ENV PYTHON_VENV python3.6
|
||||||
|
+
|
||||||
|
+COPY . /repocopy
|
||||||
|
+
|
||||||
|
+WORKDIR /repocopy
|
||||||
|
+
|
||||||
|
+RUN rm -rf tut*
|
||||||
|
+
|
||||||
|
+RUN make clean && make install-deps-fedora
|
||||||
|
+
|
||||||
|
+WORKDIR /
|
||||||
|
diff --git a/utils/container-tests/Containerfile.rhel9 b/utils/container-tests/Containerfile.el9
|
||||||
|
similarity index 100%
|
||||||
|
rename from utils/container-tests/Containerfile.rhel9
|
||||||
|
rename to utils/container-tests/Containerfile.el9
|
||||||
|
diff --git a/utils/container-tests/Containerfile.f34 b/utils/container-tests/Containerfile.f42
|
||||||
|
similarity index 84%
|
||||||
|
rename from utils/container-tests/Containerfile.f34
|
||||||
|
rename to utils/container-tests/Containerfile.f42
|
||||||
|
index a9346635..46f0f63a 100644
|
||||||
|
--- a/utils/container-tests/Containerfile.f34
|
||||||
|
+++ b/utils/container-tests/Containerfile.f42
|
||||||
|
@@ -1,11 +1,11 @@
|
||||||
|
-FROM fedora:34
|
||||||
|
+FROM fedora:42
|
||||||
|
|
||||||
|
VOLUME /repo
|
||||||
|
|
||||||
|
RUN dnf update -y && \
|
||||||
|
dnf install -y findutils make rsync python3-gobject-base NetworkManager-libnm
|
||||||
|
|
||||||
|
-ENV PYTHON_VENV python3.9
|
||||||
|
+ENV PYTHON_VENV python3.13
|
||||||
|
|
||||||
|
COPY . /repocopy
|
||||||
|
|
||||||
|
diff --git a/utils/container-tests/Containerfile.rhel7 b/utils/container-tests/Containerfile.rhel7
|
||||||
|
deleted file mode 100644
|
||||||
|
index 0a0c384a..00000000
|
||||||
|
--- a/utils/container-tests/Containerfile.rhel7
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,24 +0,0 @@
|
||||||
|
-FROM registry.access.redhat.com/ubi7/ubi:7.9
|
||||||
|
-
|
||||||
|
-VOLUME /repo
|
||||||
|
-
|
||||||
|
-RUN yum update -y && \
|
||||||
|
- yum install -y python-virtualenv python-setuptools make git rsync
|
||||||
|
-
|
||||||
|
-# see ./Containerfile.ubi7 for explanation
|
||||||
|
-RUN yum -y install python27-python-pip && \
|
||||||
|
- scl enable python27 -- pip install -U --target /usr/lib/python2.7/site-packages/ pip==20.3.0 && \
|
||||||
|
- python -m pip install --ignore-installed pip==20.3.4 ipaddress virtualenv
|
||||||
|
-
|
||||||
|
-ENV PYTHON_VENV python2.7
|
||||||
|
-
|
||||||
|
-COPY . /repocopy
|
||||||
|
-
|
||||||
|
-WORKDIR /repocopy
|
||||||
|
-
|
||||||
|
-RUN rm -rf tut*
|
||||||
|
-
|
||||||
|
-RUN make clean && make install-deps
|
||||||
|
-
|
||||||
|
-WORKDIR /
|
||||||
|
-
|
||||||
|
diff --git a/utils/container-tests/Containerfile.rhel8 b/utils/container-tests/Containerfile.rhel8
|
||||||
|
deleted file mode 100644
|
||||||
|
index 6f21839b..00000000
|
||||||
|
--- a/utils/container-tests/Containerfile.rhel8
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,18 +0,0 @@
|
||||||
|
-FROM registry.access.redhat.com/ubi8/ubi:latest
|
||||||
|
-
|
||||||
|
-VOLUME /repo
|
||||||
|
-
|
||||||
|
-RUN dnf update -y && \
|
||||||
|
- dnf install -y python3-virtualenv python3-setuptools python3-pip make git rsync
|
||||||
|
-
|
||||||
|
-ENV PYTHON_VENV python3.6
|
||||||
|
-
|
||||||
|
-COPY . /repocopy
|
||||||
|
-
|
||||||
|
-WORKDIR /repocopy
|
||||||
|
-
|
||||||
|
-RUN rm -rf tut*
|
||||||
|
-
|
||||||
|
-RUN make clean && make install-deps-fedora
|
||||||
|
-
|
||||||
|
-WORKDIR /
|
||||||
|
diff --git a/utils/container-tests/Containerfile.ubi7 b/utils/container-tests/Containerfile.ubi7
|
||||||
|
deleted file mode 100644
|
||||||
|
index 44625a76..00000000
|
||||||
|
--- a/utils/container-tests/Containerfile.ubi7
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,25 +0,0 @@
|
||||||
|
-FROM registry.access.redhat.com/ubi7/ubi:7.9
|
||||||
|
-
|
||||||
|
-VOLUME /payload
|
||||||
|
-
|
||||||
|
-RUN yum update -y && \
|
||||||
|
- yum install python-virtualenv python-setuptools make git -y
|
||||||
|
-
|
||||||
|
-# NOTE(ivasilev,pstodulk) We need at least pip v10.0.1, however centos:7
|
||||||
|
-# provides just v8.1.2 (via EPEL). So do this: install epel repos -> install
|
||||||
|
-# python2-pip -> use pip to update to specific pip version we require. period
|
||||||
|
-# NOTE(pstodulk) I see we take care about pip for py3 inside the Makefile,
|
||||||
|
-# however I am afraid of additional possible troubles in future because of the
|
||||||
|
-# archaic pip3 version (v9.0.1). As we want to run tests for Py2 and Py3 in ci
|
||||||
|
-# always anyway, let's put py3 installation here as well..
|
||||||
|
-# Dropped Python3 as it is now added in its own container on RHEL8
|
||||||
|
-
|
||||||
|
-# This is some trickery: We install python27-python-pip from the scl, use the scl to bootstrap the python
|
||||||
|
-# module of pip version 20.3.0 and then make it update to 20.3.4 resulting the 'pip' command to be available.
|
||||||
|
-# The --target approach doesn't add it, but at least we now have pip 20.3.4 installed ;-)
|
||||||
|
-RUN yum -y install python27-python-pip && \
|
||||||
|
- scl enable python27 -- pip install -U --target /usr/lib/python2.7/site-packages/ pip==20.3.0 && \
|
||||||
|
- python -m pip install --ignore-installed pip==20.3.4 ipaddress virtualenv
|
||||||
|
-
|
||||||
|
-WORKDIR /payload
|
||||||
|
-ENTRYPOINT make install-deps && make test_no_lint
|
||||||
|
diff --git a/utils/container-tests/Containerfile.ubi7-lint b/utils/container-tests/Containerfile.ubi7-lint
|
||||||
|
deleted file mode 100644
|
||||||
|
index ed548985..00000000
|
||||||
|
--- a/utils/container-tests/Containerfile.ubi7-lint
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,25 +0,0 @@
|
||||||
|
-FROM registry.access.redhat.com/ubi7/ubi:7.9
|
||||||
|
-
|
||||||
|
-VOLUME /payload
|
||||||
|
-
|
||||||
|
-RUN yum update -y && \
|
||||||
|
- yum install python-virtualenv python-setuptools make git -y
|
||||||
|
-
|
||||||
|
-# NOTE(ivasilev,pstodulk) We need at least pip v10.0.1, however centos:7
|
||||||
|
-# provides just v8.1.2 (via EPEL). So do this: install epel repos -> install
|
||||||
|
-# python2-pip -> use pip to update to specific pip version we require. period
|
||||||
|
-# NOTE(pstodulk) I see we take care about pip for py3 inside the Makefile,
|
||||||
|
-# however I am afraid of additional possible troubles in future because of the
|
||||||
|
-# archaic pip3 version (v9.0.1). As we want to run tests for Py2 and Py3 in ci
|
||||||
|
-# always anyway, let's put py3 installation here as well..
|
||||||
|
-# Dropped Python3 as it is now added in its own container on RHEL8
|
||||||
|
-
|
||||||
|
-# This is some trickery: We install python27-python-pip from the scl, use the scl to bootstrap the python
|
||||||
|
-# module of pip version 20.3.0 and then make it update to 20.3.4 resulting the 'pip' command to be available.
|
||||||
|
-# The --target approach doesn't add it, but at least we now have pip 20.3.4 installed ;-)
|
||||||
|
-RUN yum -y install python27-python-pip && \
|
||||||
|
- scl enable python27 -- pip install -U --target /usr/lib/python2.7/site-packages/ pip==20.3.0 && \
|
||||||
|
- python -m pip install --ignore-installed pip==20.3.4 ipaddress virtualenv
|
||||||
|
-
|
||||||
|
-WORKDIR /payload
|
||||||
|
-ENTRYPOINT make install-deps && make lint
|
||||||
|
diff --git a/utils/container-tests/Containerfile.ubi8 b/utils/container-tests/Containerfile.ubi8
|
||||||
|
deleted file mode 100644
|
||||||
|
index 4da60c18..00000000
|
||||||
|
--- a/utils/container-tests/Containerfile.ubi8
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,9 +0,0 @@
|
||||||
|
-FROM registry.access.redhat.com/ubi8/ubi:latest
|
||||||
|
-
|
||||||
|
-VOLUME /payload
|
||||||
|
-
|
||||||
|
-RUN dnf update -y && \
|
||||||
|
- dnf install python3-virtualenv python3-setuptools python3-pip make git -y
|
||||||
|
-
|
||||||
|
-WORKDIR /payload
|
||||||
|
-ENTRYPOINT make install-deps && make test_no_lint
|
||||||
|
diff --git a/utils/container-tests/ci/Containerfile.el8 b/utils/container-tests/ci/Containerfile.el8
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..4a19092e
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/utils/container-tests/ci/Containerfile.el8
|
||||||
|
@@ -0,0 +1,15 @@
|
||||||
|
+FROM centos:8
|
||||||
|
+
|
||||||
|
+RUN sed -i s/mirror.centos.org/vault.centos.org/ /etc/yum.repos.d/CentOS-*.repo
|
||||||
|
+RUN sed -i s/^#\s*baseurl=http/baseurl=http/ /etc/yum.repos.d/CentOS-*.repo
|
||||||
|
+RUN sed -i s/^mirrorlist=http/#mirrorlist=http/ /etc/yum.repos.d/CentOS-*.repo
|
||||||
|
+
|
||||||
|
+VOLUME /payload
|
||||||
|
+
|
||||||
|
+RUN dnf update -y && \
|
||||||
|
+ dnf install -y make git \
|
||||||
|
+ python3-virtualenv python3-setuptools python3-pip \
|
||||||
|
+ python3-gobject NetworkManager-libnm
|
||||||
|
+
|
||||||
|
+WORKDIR /payload
|
||||||
|
+ENTRYPOINT make install-deps && make test_no_lint
|
||||||
|
diff --git a/utils/container-tests/Containerfile.ubi8-lint b/utils/container-tests/ci/Containerfile.el8-lint
|
||||||
|
similarity index 100%
|
||||||
|
rename from utils/container-tests/Containerfile.ubi8-lint
|
||||||
|
rename to utils/container-tests/ci/Containerfile.el8-lint
|
||||||
|
diff --git a/utils/container-tests/Containerfile.ubi9 b/utils/container-tests/ci/Containerfile.el9
|
||||||
|
similarity index 100%
|
||||||
|
rename from utils/container-tests/Containerfile.ubi9
|
||||||
|
rename to utils/container-tests/ci/Containerfile.el9
|
||||||
|
diff --git a/utils/container-tests/Containerfile.ubi9-lint b/utils/container-tests/ci/Containerfile.el9-lint
|
||||||
|
similarity index 100%
|
||||||
|
rename from utils/container-tests/Containerfile.ubi9-lint
|
||||||
|
rename to utils/container-tests/ci/Containerfile.el9-lint
|
||||||
|
@ -53,7 +53,7 @@ py2_byte_compile "%1" "%2"}
|
|||||||
Epoch: 1
|
Epoch: 1
|
||||||
Name: leapp-repository
|
Name: leapp-repository
|
||||||
Version: 0.23.0
|
Version: 0.23.0
|
||||||
Release: 1%{?dist}.elevate.2
|
Release: 1%{?dist}.elevate.3
|
||||||
Summary: Repositories for leapp
|
Summary: Repositories for leapp
|
||||||
|
|
||||||
License: ASL 2.0
|
License: ASL 2.0
|
||||||
@ -350,6 +350,9 @@ fi
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Oct 10 2025 Yuriy Kohut <ykohut@almalinux.org> - 0.23.0-1.elevate.3
|
||||||
|
- ELevate vendors support for upstream 0.23.0-1 version (c4f3ace1ebb909dc53796e16959a2459a15d9d74)
|
||||||
|
|
||||||
* Tue Sep 30 2025 Yuriy Kohut <ykohut@almalinux.org> - 0.23.0-1.elevate.2
|
* Tue Sep 30 2025 Yuriy Kohut <ykohut@almalinux.org> - 0.23.0-1.elevate.2
|
||||||
- ELevate vendors support for upstream 0.23.0-1 version (47fce173e75408d9a7a26225d389161caf72e244)
|
- ELevate vendors support for upstream 0.23.0-1 version (47fce173e75408d9a7a26225d389161caf72e244)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user