pcs-0.12.0a1-1

- Rebased to the latest sources (see CHANGELOG.md)
  Resolves: RHEL-29739, RHEL-34783, RHEL-38480, RHEL-38484, RHEL-38486
- Fixed grammatical error in pcs-web-ui
  Resolves: RHEL-38496

- Support tilde in version - for correct sorting of prerelease upstream version by RPM - %{version} expands with the tilde, use %{clean_version} to get upstream version
- Added pkgconfig file for pcs
- Added previously omitted autotools as build dependencies
- Changed BuildRequires for cluster stack components to use pkgconfig virtual provides to prevent breakage if pkgconfig is ever moved to a different package
- Removed BuildRequires: python3-wheel - we are not building wheels with setuptools
- Removed BuildRequires: nodejs-npm from main package and fixed the name in cockpit-ha-cluster subpackage - the idea is that BuildRequires become Requires of the srpm which are then used during the main build phase when subpackages are built (so BuildRequires are effectively inherited by this logic)
- Bumped minimum python and ruby versions
This commit is contained in:
Michal Pospisil 2024-06-21 20:27:55 +02:00
parent 16034a47b3
commit 2fd81b454f
6 changed files with 67 additions and 56 deletions

1
.gitignore vendored
View File

@ -33,3 +33,4 @@
/pcs-web-ui-0.1.19.tar.gz
/pcs-web-ui-node-modules-0.1.19.tar.xz
/pcs-5b7d498915e0cc876b29fe9ebd709c061ac754db.tar.gz
/pcs-0.12.0a1.tar.gz

View File

@ -1,8 +1,7 @@
From 83a69bddcafcbfb945734621cb3cddc479e5e132 Mon Sep 17 00:00:00 2001
From 7bfa2ad4f4f5f59fd501b0cec23cdc489f90a09e Mon Sep 17 00:00:00 2001
From: Michal Pospisil <mpospisi@redhat.com>
Date: Thu, 23 May 2024 17:22:12 +0200
Subject: [PATCH 1/2] do not support cluster setup with udp(u) transport in
RHEL10
Subject: [PATCH] do not support cluster setup with udp(u) transport in RHEL10
---
pcs/pcs.8.in | 2 ++

View File

@ -0,0 +1,30 @@
From ead22ee414ba35546701d6bb85504af12fd6501e Mon Sep 17 00:00:00 2001
From: Michal Pospisil <mpospisi@redhat.com>
Date: Tue, 28 May 2024 16:06:53 +0200
Subject: [PATCH] fix grammatical error
---
.../app/view/cluster/share/utilization/UtilizationView.tsx | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/packages/app/src/app/view/cluster/share/utilization/UtilizationView.tsx b/packages/app/src/app/view/cluster/share/utilization/UtilizationView.tsx
index 3b140975..a8c7494c 100644
--- a/packages/app/src/app/view/cluster/share/utilization/UtilizationView.tsx
+++ b/packages/app/src/app/view/cluster/share/utilization/UtilizationView.tsx
@@ -29,11 +29,11 @@ export const UtilizationView = (props: {
).toLowerCase() === "default" && (
<Alert
isInline
- title="Utilization attributes has no effect"
+ title="Utilization attributes have no effect"
variant="warning"
>
<p>
- Utilization attributes has no effect because the cluster
+ Utilization attributes have no effect because the cluster
property placement-strategy is
{clusterProperties["placement-strategy"]
? " set to value default. "
--
2.45.1

View File

@ -1,6 +1,6 @@
Name: pcs
Version: 0.11.7
Release: 5%{?dist}
Version: 0.12.0~a1
Release: 1%{?dist}
# https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuidelines/
# https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing#Good_Licenses
# GPL-2.0-only: pcs
@ -19,9 +19,11 @@ Summary: Pacemaker/Corosync Configuration System
# Building only for architectures with pacemaker and corosync available
ExclusiveArch: x86_64 s390x ppc64le aarch64
# Remove a tilde used by RPM to get the correct upstream version
%global clean_version %(echo %{version} | sed 's/~//')
# When specifying a commit, use its long hash
# %%global version_or_commit %%{version}
%global version_or_commit 5b7d498915e0cc876b29fe9ebd709c061ac754db
%global version_or_commit %{clean_version}
# %%global version_or_commit 5b7d498915e0cc876b29fe9ebd709c061ac754db
%global pcs_source_name %{name}-%{version_or_commit}
# ui_commit can be determined by hash, tag or branch
@ -78,7 +80,7 @@ ExclusiveArch: x86_64 s390x ppc64le aarch64
%global pkg_cockpit_ha_cluster cockpit-ha-cluster
# prepend v for folder in GitHub link when using tagged tarball
%if "%{version}" == "%{version_or_commit}"
%if "%{clean_version}" == "%{version_or_commit}"
%global v_prefix v
%endif
@ -115,25 +117,29 @@ Source101: https://github.com/ClusterLabs/pcs-web-ui/releases/download/%{ui_comm
# pcs patches: <= 200
# Patch1: name.patch
Patch1: do-not-support-cluster-setup-with-udp-u-transport.patch
Patch2: support-bundling-pycurl.patch
# ui patches: >200
# Patch201: name-web-ui.patch
Patch201: fix-grammatical-error.patch
# git for patches
BuildRequires: git-core
# for building pcs tarballs
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: make
# printf from coreutils is used in makefile, head is used in spec
BuildRequires: coreutils
# python for pcs
BuildRequires: python3 >= 3.9
BuildRequires: python3 >= 3.12
BuildRequires: python3-cryptography
BuildRequires: python3-dateutil >= 2.7.0
BuildRequires: python3-devel
BuildRequires: python3-lxml
BuildRequires: python3-pip
BuildRequires: python3-pyparsing
# pcs build backend is setuptools
BuildRequires: python3-setuptools
# for building bundled python packages
BuildRequires: python3-wheel
@ -162,29 +168,29 @@ BuildRequires: pam
# for working with qdevice certificates (certutil) - used in configure.ac
BuildRequires: nss-tools
# for building web ui
BuildRequires: nodejs-npm
# cluster stack packages for pkg-config
BuildRequires: booth
BuildRequires: corosync-qdevice-devel
BuildRequires: corosynclib-devel >= 3.0
# corosync has different package names on distributions but all provide
# corosync-devel
# corosync and pacemaker need versions and it's not working in virtual provides
BuildRequires: corosync-devel >= 3.0
BuildRequires: pacemaker-libs-devel >= %{required_pacemaker_version}
BuildRequires: sbd
BuildRequires: pkgconfig(booth)
BuildRequires: pkgconfig(corosync-qdevice)
BuildRequires: pkgconfig(sbd)
# for validating cockpit-ha-cluster metainfo
BuildRequires: libappstream-glib
# python and libraries for pcs, setuptools for pcs entrypoint
Requires: python3 >= 3.9
Requires: python3 >= 3.12
Requires: python3-cryptography
Requires: python3-dateutil >= 2.7.0
Requires: python3-lxml
Requires: python3-pyparsing
Requires: python3-setuptools
# ruby and gems for pcsd
Requires: ruby >= 2.5.0
Requires: ruby >= 3.3.0
Requires: rubygems
Requires: rubygem-json
Requires: rubygem-rexml
@ -263,7 +269,7 @@ URL: https://github.com/ClusterLabs/pcs-web-ui
BuildArch: noarch
BuildRequires: make
BuildRequires: npm
BuildRequires: nodejs-npm
Requires: pcs = %{version}-%{release}
Requires: cockpit-bridge
@ -329,18 +335,18 @@ update_times_patch(){
%autosetup -D -T -b 100 -a 101 -S git -n %{ui_src_name} -N
%autopatch -p1 -m 201
# update_times_patch %%{PATCH201}
update_times_patch %{PATCH201}
# patch pcs sources
%autosetup -S git -n %{pcs_source_name} -N
%autopatch -p1 -M 200
# update_times_patch %%{PATCH1}
update_times_patch %{PATCH1}
update_times_patch %{PATCH2}
# generate .tarball-version if building from an untagged commit, not a released version
# autogen uses git-version-gen which uses .tarball-version for generating version number
%if "%{version}" != "%{version_or_commit}"
echo "%version+$(echo "%{version_or_commit}" | head -c 8)" > %{_builddir}/%{pcs_source_name}/.tarball-version
%if "%{clean_version}" != "%{version_or_commit}"
echo "%{clean_version}+$(echo "%{version_or_commit}" | head -c 8)" > %{_builddir}/%{pcs_source_name}/.tarball-version
%endif
# prepare dirs/files necessary for building python bundles
@ -584,6 +590,7 @@ run_all_tests
%{_sbindir}/pcs
%{_sbindir}/pcsd
%{_libdir}/pcs/*
%{_libdir}/pkgconfig/pcs.pc
%{_libdir}/pcsd/*
%{_unitdir}/pcsd.service
%{_unitdir}/pcsd-ruby.service
@ -626,6 +633,12 @@ run_all_tests
%changelog
* Fri Jun 21 2024 Michal Pospíšil <mpospisi@redhat.com> - 0.12.0a1-1
- Rebased to the latest sources (see CHANGELOG.md)
Resolves: RHEL-29739, RHEL-34783, RHEL-38480, RHEL-38484, RHEL-38486
- Fixed grammatical error in pcs-web-ui
Resolves: RHEL-38496
* Thu May 23 2024 Michal Pospíšil <mpospisi@redhat.com> - 0.11.7-5
- Rebased to the latest sources (see CHANGELOG.md)
Resolves: RHEL-34783, RHEL-34792, RHEL-35428, RHEL-35670, RHEL-36612, RHEL-38478, RHEL-38479, RHEL-38481, RHEL-38487, RHEL-38489, RHEL-38491

View File

@ -21,4 +21,4 @@ SHA512 (webrick-1.8.1.gem) = 3bf45e3a52190dccaa6e883923448b745a420eff2a1533eacdd
SHA512 (tornado-6.4.0.tar.gz) = dc584acc14d93c7109e4744b690641ae318ee9ad2c42a4c3560c315fa8654de3a64574c7187f5afdbde2906b7cccf5725f45462e710effb6f025e5ec1a3810d4
SHA512 (pcs-web-ui-0.1.19.tar.gz) = 3aa407f2e90f236324949d33f6ee4701c1d4898deeed2fa0d3367f9a1a0d0687e44b966c106ff772e450c51be36abd3f17656432b5da4d0c9f1a80e6f80866c6
SHA512 (pcs-web-ui-node-modules-0.1.19.tar.xz) = 206658b964a3b1a6c7c4b171d6686ef9097ee7c36720088cdc220c50e44d09d58fb4d1aac8e2eb7bb44267f581b666d38b3148352f2f235b477e8a7ab7ee8551
SHA512 (pcs-5b7d498915e0cc876b29fe9ebd709c061ac754db.tar.gz) = dfb891b3c0e635e6f87fe9d7fec2ee1b10c3fee9fd683dfd8e52fd5b53de1c328c2a4c056ccf2bb0d8c6bc6ebd522dd95304b6bbbbc671302ad34e4df48b37cd
SHA512 (pcs-0.12.0a1.tar.gz) = 1c455dcb24bc6ab0cac0c879f932d54ad8b36c0a937557a1e873ad9442e85ff81cae23c57236c6421cc5d1c36027d583b987e21a4ad80321728090498ef8f30c

View File

@ -1,32 +0,0 @@
From 9585ee5285201828a67ffb15e4609d7523255c35 Mon Sep 17 00:00:00 2001
From: Michal Pospisil <mpospisi@redhat.com>
Date: Thu, 23 May 2024 17:23:57 +0200
Subject: [PATCH 2/2] support bundling pycurl
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index b4ef2682..0f0ed255 100644
--- a/configure.ac
+++ b/configure.ac
@@ -339,7 +339,6 @@ if test "x$tests_only" != "xyes"; then
fi
PCS_CHECK_PYMOD([cryptography])
PCS_CHECK_PYMOD([lxml])
- PCS_CHECK_PYMOD([pycurl])
PCS_CHECK_PYMOD([pyparsing])
# those are kind of problematic.
@@ -352,6 +351,7 @@ if test "x$tests_only" != "xyes"; then
if test "x$bundle_module" = "xyes" && test "x$cache_only" = "xyes"; then
PCS_CHECK_PYMOD([setuptools-scm])
fi
+ PCS_CHECK_PYMOD([pycurl], [], [yes])
# special case, because we need to download from github
AC_PIP_MODULE([pyagentx])
--
2.45.1