Compare commits

..

No commits in common. "c8" and "a9" have entirely different histories.
c8 ... a9

7 changed files with 471 additions and 510 deletions

19
.gitignore vendored
View File

@ -1,22 +1,19 @@
SOURCES/HAM-logo.png
SOURCES/backports-3.24.1.gem SOURCES/backports-3.24.1.gem
SOURCES/childprocess-4.1.0.gem
SOURCES/dacite-1.8.1.tar.gz SOURCES/dacite-1.8.1.tar.gz
SOURCES/dataclasses-0.8.tar.gz
SOURCES/ethon-0.16.0.gem SOURCES/ethon-0.16.0.gem
SOURCES/ffi-1.16.3.gem SOURCES/ffi-1.16.3.gem
SOURCES/json-2.6.3.gem SOURCES/mustermann-3.0.0.gem
SOURCES/mustermann-2.0.2.gem
SOURCES/nio4r-2.5.9.gem SOURCES/nio4r-2.5.9.gem
SOURCES/open4-1.3.4-1.gem SOURCES/pcs-0.11.7.tar.gz
SOURCES/pcs-0.10.18.tar.gz SOURCES/pcs-web-ui-0.1.18.tar.gz
SOURCES/pcs-web-ui-node-modules-0.1.18.tar.xz
SOURCES/puma-6.4.0.gem SOURCES/puma-6.4.0.gem
SOURCES/pyagentx-0.4.pcs.2.tar.gz SOURCES/pyagentx-0.4.pcs.2.tar.gz
SOURCES/python-dateutil-2.8.2.tar.gz
SOURCES/rack-2.2.8.1.gem SOURCES/rack-2.2.8.1.gem
SOURCES/rack-protection-2.2.4.gem SOURCES/rack-protection-3.1.0.gem
SOURCES/rack-test-2.1.0.gem SOURCES/rack-test-2.1.0.gem
SOURCES/rexml-3.3.6.gem
SOURCES/ruby2_keywords-0.0.5.gem SOURCES/ruby2_keywords-0.0.5.gem
SOURCES/sinatra-2.2.4.gem SOURCES/sinatra-3.1.0.gem
SOURCES/tilt-2.3.0.gem SOURCES/tilt-2.3.0.gem
SOURCES/tornado-6.1.0.tar.gz SOURCES/tornado-6.3.3.tar.gz

View File

@ -1,22 +1,19 @@
679a4ce22a33ffd4d704261a17c00cff98d9499a SOURCES/HAM-logo.png
0ef72a288913e220695ad62718aeb75171924028 SOURCES/backports-3.24.1.gem 0ef72a288913e220695ad62718aeb75171924028 SOURCES/backports-3.24.1.gem
81639c8886342e01d189c10a6beab6ad0526dc4e SOURCES/childprocess-4.1.0.gem
07b26abbf7ff0dcba5c7f9e814ff7eebafefb058 SOURCES/dacite-1.8.1.tar.gz 07b26abbf7ff0dcba5c7f9e814ff7eebafefb058 SOURCES/dacite-1.8.1.tar.gz
8b7598273d2ae6dad2b88466aefac55071a41926 SOURCES/dataclasses-0.8.tar.gz
5b56a68268708c474bef04550639ded3add5e946 SOURCES/ethon-0.16.0.gem 5b56a68268708c474bef04550639ded3add5e946 SOURCES/ethon-0.16.0.gem
10e4cf0e11ef4581ec4ad5fe2cdf3c78b6077d39 SOURCES/ffi-1.16.3.gem 10e4cf0e11ef4581ec4ad5fe2cdf3c78b6077d39 SOURCES/ffi-1.16.3.gem
6d78f730b7f3b25fb3f93684fe1364acf58bce6b SOURCES/json-2.6.3.gem e892678aaf02ccb27f3a6cd58482cda00aea6ce8 SOURCES/mustermann-3.0.0.gem
f5f804366823c1126791dfefd98dd0539563785c SOURCES/mustermann-2.0.2.gem
2f65d371f5f37460ad74afcedcb97d2b41a46806 SOURCES/nio4r-2.5.9.gem 2f65d371f5f37460ad74afcedcb97d2b41a46806 SOURCES/nio4r-2.5.9.gem
41a7fe9f8e3e02da5ae76c821b89c5b376a97746 SOURCES/open4-1.3.4-1.gem 3aec6fd614169e4d0272a71eb3688ad3a54f91b3 SOURCES/pcs-0.11.7.tar.gz
b3cd873042b17021355b68f1f7aa313f0c1f3fee SOURCES/pcs-0.10.18.tar.gz 59d3e570bcbb7b3bcb2b9bf519425b2036e0faad SOURCES/pcs-web-ui-0.1.18.tar.gz
252cc42bf9715209c67981da06f2791a91c2f3fb SOURCES/pcs-web-ui-node-modules-0.1.18.tar.xz
d6049c4555f3c9d198e6eb1d7e53ce9b68e175ff SOURCES/puma-6.4.0.gem d6049c4555f3c9d198e6eb1d7e53ce9b68e175ff SOURCES/puma-6.4.0.gem
3176b2f2b332c2b6bf79fe882e83feecf3d3f011 SOURCES/pyagentx-0.4.pcs.2.tar.gz 3176b2f2b332c2b6bf79fe882e83feecf3d3f011 SOURCES/pyagentx-0.4.pcs.2.tar.gz
c2ba10c775b7a52a4b57cac4d4110a0c0f812a82 SOURCES/python-dateutil-2.8.2.tar.gz
fcdee79d1b0bb7e3666bad96321fc124bc8215e9 SOURCES/rack-2.2.8.1.gem fcdee79d1b0bb7e3666bad96321fc124bc8215e9 SOURCES/rack-2.2.8.1.gem
5347315a7283f0b04443e924ed4eaa17807432c8 SOURCES/rack-protection-2.2.4.gem d34d1d308e3a1028c85bd0a7e4ba1d4f1ec0f725 SOURCES/rack-protection-3.1.0.gem
ae09ea83748b55875edc3708fffba90db180cb8e SOURCES/rack-test-2.1.0.gem ae09ea83748b55875edc3708fffba90db180cb8e SOURCES/rack-test-2.1.0.gem
89f8446e89976f3677767d426a4edc6ccba574be SOURCES/rexml-3.3.6.gem
d017b9e4d1978e0b3ccc3e2a31493809e4693cd3 SOURCES/ruby2_keywords-0.0.5.gem d017b9e4d1978e0b3ccc3e2a31493809e4693cd3 SOURCES/ruby2_keywords-0.0.5.gem
fa6a6c98f885e93f54c23dd0454cae906e82c31b SOURCES/sinatra-2.2.4.gem cd57dfa17b103c514dd0b107ebda6ee4bfb6b0d4 SOURCES/sinatra-3.1.0.gem
4a38a9a55887b2882182a2c5771e592efe514e5e SOURCES/tilt-2.3.0.gem 4a38a9a55887b2882182a2c5771e592efe514e5e SOURCES/tilt-2.3.0.gem
c23c617c7a0205e465bebad5b8cdf289ae8402a2 SOURCES/tornado-6.1.0.tar.gz 4db49c4d5570e6fdc7ec845335bb341ebd5346a7 SOURCES/tornado-6.3.3.tar.gz

View File

@ -1,55 +0,0 @@
From 957856a556f5ed92129ce602538c3df3aebce7a3 Mon Sep 17 00:00:00 2001
From: Ivan Devat <idevat@redhat.com>
Date: Tue, 5 Dec 2023 15:18:35 +0100
Subject: [PATCH 2/2] disable alternative webui routes
This commit is intended to be downstream only.
The new web ui was part of rhel8 as a technical preview. But new web ui
is now the main in rhel9 and there is no need to keep it in rhel8.
To prevent unnecessary maintenance burden it is disabled now.
No handler code is removed, just routing disabled.
---
pcs/daemon/run.py | 26 ++++++++++++++++----------
1 file changed, 16 insertions(+), 10 deletions(-)
diff --git a/pcs/daemon/run.py b/pcs/daemon/run.py
index 7fdeda2a..0a6b1b21 100644
--- a/pcs/daemon/run.py
+++ b/pcs/daemon/run.py
@@ -81,16 +81,22 @@ def configure_app(
routes.extend(
# old web ui by default
[(r"/", RedirectHandler, dict(url="/manage"))]
- + [(r"/ui", RedirectHandler, dict(url="/ui/"))]
- + ui.get_routes(
- url_prefix="/ui/",
- app_dir=os.path.join(public_dir, "ui"),
- fallback_page_path=os.path.join(
- public_dir,
- "ui_instructions.html",
- ),
- session_storage=session_storage,
- )
+ # The following disabled routes was for the new web ui. The new
+ # web ui was here as a technical preview. But new web ui is now
+ # the main in rhel9 and there is no need to keep it in rhel8.
+ # To prevent unnecessary maintenance burden it is disabled now.
+ # No handler code is removed, just routing disabled.
+ #
+ # + [(r"/ui", RedirectHandler, dict(url="/ui/"))]
+ # + ui.get_routes(
+ # url_prefix="/ui/",
+ # app_dir=os.path.join(public_dir, "ui"),
+ # fallback_page_path=os.path.join(
+ # public_dir,
+ # "ui_instructions.html",
+ # ),
+ # session_storage=session_storage,
+ # )
+ sinatra_ui.get_routes(
session_storage, ruby_pcsd_wrapper, public_dir
)
--
2.43.0

View File

@ -0,0 +1,34 @@
From 2fc4a70cb977b646befa059b99ceabe368f27229 Mon Sep 17 00:00:00 2001
From: Miroslav Lisik <mlisik@redhat.com>
Date: Thu, 21 Mar 2024 13:32:10 +0100
Subject: [PATCH] Use 'forkserver' process creation method for multiprocessing
* 'fork' method could cause deadlock in multiprocessing.pool.Pool on
terminate (https://github.com/python/cpython/issues/73945)
* https://docs.python.org/3/library/multiprocessing.html#contexts-and-start-methods
---
pcs/daemon/run.py | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/pcs/daemon/run.py b/pcs/daemon/run.py
index 5fa083fd5..cecce750f 100644
--- a/pcs/daemon/run.py
+++ b/pcs/daemon/run.py
@@ -1,3 +1,4 @@
+import multiprocessing as mp
import os
import signal
import socket
@@ -157,6 +158,12 @@ def _print_version(argv: StringCollection) -> None:
def main(argv=None) -> None:
+ # set the way how processes are started
+ # https://docs.python.org/3/library/multiprocessing.html#contexts-and-start-methods
+ # avoid deadlock in multiprocessing.pool.Pool on terminate
+ # https://github.com/python/cpython/issues/73945
+ mp.set_start_method(method="forkserver")
+
argv = argv if argv is not None else sys.argv[1:]
if "--version" in argv:
_print_version(argv)

View File

@ -1,53 +1,38 @@
From 854efcf148c82e5a5e4f0afd71cc3333ea4a8ce4 Mon Sep 17 00:00:00 2001 From cf1e0cc06a94804a4a98a12ee06d09e5786bad1b Mon Sep 17 00:00:00 2001
From: Ivan Devat <idevat@redhat.com> From: Ivan Devat <idevat@redhat.com>
Date: Tue, 20 Nov 2018 15:03:56 +0100 Date: Tue, 20 Nov 2018 15:03:56 +0100
Subject: [PATCH 1/2] do not support cluster setup with udp(u) transport Subject: [PATCH] do not support cluster setup with udp(u) transport in RHEL9
--- ---
pcs/pcs.8.in | 2 ++ pcs/pcs.8.in | 2 ++
pcs/usage.py | 1 + pcs/usage.py | 1 +
pcsd/public/css/style.css | 3 +++ 2 files changed, 3 insertions(+)
3 files changed, 6 insertions(+)
diff --git a/pcs/pcs.8.in b/pcs/pcs.8.in diff --git a/pcs/pcs.8.in b/pcs/pcs.8.in
index d504e8b4..93202d05 100644 index 55f4b4a9..8cc9360d 100644
--- a/pcs/pcs.8.in --- a/pcs/pcs.8.in
+++ b/pcs/pcs.8.in +++ b/pcs/pcs.8.in
@@ -438,6 +438,8 @@ By default, encryption is enabled with cipher=aes256 and hash=sha256. To disable @@ -479,6 +479,8 @@ By default, encryption is enabled with cipher=aes256 and hash=sha256. To disable
Transports udp and udpu: Transports udp and udpu:
.br .br
+WARNING: These transports are not supported in RHEL 8. +WARNING: These transports are not supported in RHEL 9.
+.br +.br
These transports are limited to one address per node. They do not support traffic encryption nor compression. These transports are limited to one address per node. They do not support traffic encryption nor compression.
.br .br
Transport options are: ip_version, netmtu Transport options are: ip_version, netmtu
diff --git a/pcs/usage.py b/pcs/usage.py diff --git a/pcs/usage.py b/pcs/usage.py
index f4b84202..ee10370a 100644 index cc6c5803..a7d4b24b 100644
--- a/pcs/usage.py --- a/pcs/usage.py
+++ b/pcs/usage.py +++ b/pcs/usage.py
@@ -1038,6 +1038,7 @@ Commands: @@ -1482,6 +1482,7 @@ Commands:
hash=sha256. To disable encryption, set cipher=none and hash=none. hash=sha256. To disable encryption, set cipher=none and hash=none.
Transports udp and udpu: Transports udp and udpu:
+ WARNING: These transports are not supported in RHEL 8. + WARNING: These transports are not supported in RHEL 9.
These transports are limited to one address per node. They do not These transports are limited to one address per node. They do not
support traffic encryption nor compression. support traffic encryption nor compression.
Transport options are: Transport options are:
diff --git a/pcsd/public/css/style.css b/pcsd/public/css/style.css
index 2f26e831..a7702ac4 100644
--- a/pcsd/public/css/style.css
+++ b/pcsd/public/css/style.css
@@ -949,6 +949,9 @@ table.args-table td.reg {
width: 6ch;
text-align: right;
}
+#csetup-transport .transport-types {
+ display: none;
+}
#csetup-transport-options.udp .knet-only,
#csetup-transport-options.knet .without-knet
{
-- --
2.43.0 2.43.0

View File

@ -0,0 +1,40 @@
From 1fa3faf5afde712abd4362fd80b148e363bc3c84 Mon Sep 17 00:00:00 2001
From: Miroslav Lisik <mlisik@redhat.com>
Date: Fri, 22 Mar 2024 15:01:19 +0100
Subject: [PATCH] fix logging handlers imports
* https://stackoverflow.com/questions/64951836/python-logging-attributeerror-module-logging-has-no-attribute-handlers/65814814#65814814
---
pcs/daemon/async_tasks/worker/logging.py | 3 ++-
pcs/daemon/log.py | 1 +
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/pcs/daemon/async_tasks/worker/logging.py b/pcs/daemon/async_tasks/worker/logging.py
index cf5fb2872..1319d6512 100644
--- a/pcs/daemon/async_tasks/worker/logging.py
+++ b/pcs/daemon/async_tasks/worker/logging.py
@@ -1,4 +1,5 @@
import logging
+import logging.handlers
import multiprocessing as mp
import os
@@ -44,7 +45,7 @@ def setup_worker_logger(queue: mp.Queue) -> logging.Logger:
logger = logging.getLogger(WORKER_LOGGER)
logger.setLevel(logging.DEBUG)
- queue_handler = logging.handlers.QueueHandler(queue) # type: ignore
+ queue_handler = logging.handlers.QueueHandler(queue)
logger.addHandler(queue_handler)
return logger
diff --git a/pcs/daemon/log.py b/pcs/daemon/log.py
index 07ca764a9..a38cbbdf0 100644
--- a/pcs/daemon/log.py
+++ b/pcs/daemon/log.py
@@ -1,4 +1,5 @@
import logging
+import logging.handlers
LOGGER_NAMES = [
"pcs.daemon",

File diff suppressed because it is too large Load Diff