diff --git a/.gitignore b/.gitignore index d3cf60c..4e54968 100644 --- a/.gitignore +++ b/.gitignore @@ -33,3 +33,4 @@ /sinatra-contrib-1.4.4.gem /sinatra-sugar-0.5.1.gem /pcsd-bundle-config-1 +/pcs-0.9.150.tar.gz diff --git a/fedfix.patch b/fedfix.patch index d68fdd2..d42ccc2 100644 --- a/fedfix.patch +++ b/fedfix.patch @@ -1,20 +1,20 @@ -From 16b05cae25afdd208fc9d0d9f77db22d54dbb27a Mon Sep 17 00:00:00 2001 +From f4d4f7be4db101dafb7fc026824e7b215bb2f292 Mon Sep 17 00:00:00 2001 From: Tomas Jelinek -Date: Wed, 17 Feb 2016 13:08:18 +0100 +Date: Mon, 11 Apr 2016 10:52:30 +0200 Subject: [PATCH] fedfix --- pcsd/Gemfile | 16 +--------------- pcsd/Gemfile.lock | 26 -------------------------- pcsd/Makefile | 4 ++-- - pcsd/ssl.rb | 4 ++-- - 4 files changed, 5 insertions(+), 45 deletions(-) + pcsd/ssl.rb | 2 +- + 4 files changed, 4 insertions(+), 44 deletions(-) diff --git a/pcsd/Gemfile b/pcsd/Gemfile -index fb97a1a..41987d4 100644 +index e851eaf..3d426d8 100644 --- a/pcsd/Gemfile +++ b/pcsd/Gemfile -@@ -1,21 +1,7 @@ +@@ -1,19 +1,5 @@ source 'https://rubygems.org' -source 'https://tojeline.fedorapeople.org/rubygems/' do @@ -29,8 +29,6 @@ index fb97a1a..41987d4 100644 -gem 'eventmachine' -gem 'rack-test' -gem 'backports' - gem 'sinatra-sugar' - gem 'monkey-lib' -gem 'rpam-ruby19', :platform => [:ruby_19, :ruby_20, :ruby_21, :ruby_22] -gem 'json' -gem 'multi_json' @@ -38,10 +36,10 @@ index fb97a1a..41987d4 100644 +gem 'rpam-ruby19' gem 'orderedhash' diff --git a/pcsd/Gemfile.lock b/pcsd/Gemfile.lock -index 3140d6f..723e644 100644 +index 575a014..fc61d83 100644 --- a/pcsd/Gemfile.lock +++ b/pcsd/Gemfile.lock -@@ -1,25 +1,10 @@ +@@ -1,23 +1,8 @@ GEM remote: https://rubygems.org/ - remote: https://tojeline.fedorapeople.org/rubygems/ @@ -49,8 +47,6 @@ index 3140d6f..723e644 100644 - backports (3.6.4) - eventmachine (1.0.7) - json (1.8.3) - monkey-lib (0.5.4) - backports - multi_json (1.11.1) - open4 (1.3.4) orderedhash (0.0.6) @@ -67,10 +63,10 @@ index 3140d6f..723e644 100644 sinatra-contrib (1.4.4) backports (>= 2.0) multi_json -@@ -30,24 +15,13 @@ GEM - sinatra-sugar (0.5.1) - monkey-lib (~> 0.5.0) - sinatra (~> 1.0) +@@ -25,22 +10,11 @@ GEM + rack-test + sinatra (~> 1.4.0) + tilt (>= 1.3, < 3) - tilt (1.4.1) PLATFORMS @@ -80,7 +76,6 @@ index 3140d6f..723e644 100644 - backports - eventmachine - json - monkey-lib - multi_json - open4 orderedhash @@ -90,10 +85,9 @@ index 3140d6f..723e644 100644 rpam-ruby19 - sinatra sinatra-contrib - sinatra-sugar - tilt diff --git a/pcsd/Makefile b/pcsd/Makefile -index e18d2df..60e2e12 100644 +index 8ae6bc4..1fdfea7 100644 --- a/pcsd/Makefile +++ b/pcsd/Makefile @@ -1,5 +1,5 @@ @@ -105,20 +99,18 @@ index e18d2df..60e2e12 100644 # RHEL6 needs special rpam-ruby19 gem to work with 1.8.7 # also bundler is not available on RHEL6 in rpm diff --git a/pcsd/ssl.rb b/pcsd/ssl.rb -index 2858574..68e1024 100644 +index f56c947..0ee8448 100644 --- a/pcsd/ssl.rb +++ b/pcsd/ssl.rb -@@ -48,8 +48,8 @@ end +@@ -95,7 +95,7 @@ else + end - webrick_options = { - :Port => 2224, -- :BindAddress => '::', -- :Host => '::', -+ :BindAddress => nil, -+ :Host => nil, - :SSLEnable => true, - :SSLVerifyClient => OpenSSL::SSL::VERIFY_NONE, - :SSLCertificate => OpenSSL::X509::Certificate.new(crt), + default_bind = true +-primary_addr = '::' ++primary_addr = nil + secondary_addrs = [] + if ENV['PCSD_BIND_ADDR'] + user_addrs = ENV['PCSD_BIND_ADDR'].split(',').collect { |x| x.strip() } -- 1.9.1 diff --git a/fix-makefile-for-python3.patch b/fix-makefile-for-python3.patch new file mode 100644 index 0000000..ebf0dc4 --- /dev/null +++ b/fix-makefile-for-python3.patch @@ -0,0 +1,79 @@ +From a575e14d20b8d63ebd998db8aa16b99abdb967c6 Mon Sep 17 00:00:00 2001 +From: Tomas Jelinek +Date: Mon, 11 Apr 2016 12:30:42 +0200 +Subject: [PATCH] fix makefile for python3 + +--- + Makefile | 20 ++++++++++++-------- + 1 file changed, 12 insertions(+), 8 deletions(-) + +diff --git a/Makefile b/Makefile +index d80f72b..89bb691 100644 +--- a/Makefile ++++ b/Makefile +@@ -4,6 +4,10 @@ DISTRO_DEBIAN := $(shell if [ -e /etc/debian_version ] ; then echo true; else ec + IS_DEBIAN=false + DISTRO_DEBIAN_VER_8=false + ++ifndef PYTHON ++ PYTHON=python ++endif ++ + ifeq ($(UNAME_OS_GNU),true) + ifeq ($(DISTRO_DEBIAN),true) + IS_DEBIAN=true +@@ -16,7 +20,7 @@ ifeq ($(UNAME_OS_GNU),true) + endif + + ifndef PYTHON_SITELIB +- PYTHON_SITELIB=$(shell python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") ++ PYTHON_SITELIB=$(shell $(PYTHON) -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") + endif + ifeq ($(PYTHON_SITELIB), /usr/lib/python2.6/dist-packages) + EXTRA_SETUP_OPTS="--install-layout=deb" +@@ -53,7 +57,7 @@ endif + MANDIR=/usr/share/man + + ifndef PREFIX +- PREFIX=$(shell prefix=`python -c "import sys; print(sys.prefix)"` || prefix="/usr"; echo $$prefix) ++ PREFIX=$(shell prefix=`$(PYTHON) -c "import sys; print(sys.prefix)"` || prefix="/usr"; echo $$prefix) + endif + + ifndef systemddir +@@ -73,7 +77,7 @@ ifndef install_settings + endif + + install: bash_completion +- python setup.py install --root=$(or ${DESTDIR}, /) ${EXTRA_SETUP_OPTS} ++ $(PYTHON) setup.py install --root=$(or ${DESTDIR}, /) ${EXTRA_SETUP_OPTS} + mkdir -p ${DESTDIR}${PREFIX}/sbin/ + mv ${DESTDIR}${PREFIX}/bin/pcs ${DESTDIR}${PREFIX}/sbin/pcs + install -D pcs/bash_completion.d.pcs ${DESTDIR}/etc/bash_completion.d/pcs +@@ -85,7 +89,7 @@ ifeq ($(IS_DEBIAN),true) + sed s/DEB_HOST_MULTIARCH/${DEB_HOST_MULTIARCH}/g pcs/settings.py.debian > $$tmp_settings; \ + install -m644 $$tmp_settings ${DESTDIR}${PYTHON_SITELIB}/pcs/settings.py; \ + rm -f $$tmp_settings +- python -m compileall -fl ${DESTDIR}${PYTHON_SITELIB}/pcs/settings.py ++ $(PYTHON) -m compileall -fl ${DESTDIR}${PYTHON_SITELIB}/pcs/settings.py + endif + endif + +@@ -146,11 +150,11 @@ endif + rm -rf ${DESTDIR}/var/lib/pcsd + + tarball: bash_completion +- python setup.py sdist --formats=tar +- python maketarballs.py ++ $(PYTHON) setup.py sdist --formats=tar ++ $(PYTHON) maketarballs.py + + newversion: +- python newversion.py ++ $(PYTHON) newversion.py + + bash_completion: +- cd pcs ; python -c 'import usage; usage.sub_generate_bash_completion()' > bash_completion.d.pcs ; cd .. ++ cd pcs ; $(PYTHON) -c 'import usage; usage.sub_generate_bash_completion()' > bash_completion.d.pcs ; cd .. +-- +2.5.5 + diff --git a/pcs.spec b/pcs.spec index f456b90..3ff29f4 100644 --- a/pcs.spec +++ b/pcs.spec @@ -1,6 +1,6 @@ Name: pcs -Version: 0.9.149 -Release: 2%{?dist} +Version: 0.9.150 +Release: 1%{?dist} License: GPLv2 URL: http://github.com/feist/pcs Group: System Environment/Base @@ -9,35 +9,36 @@ Summary: Pacemaker Configuration System Source0: https://github.com/feist/%{name}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz Source1: pcsd-bundle-config-1 Patch0: fedfix.patch +Patch1: fix-makefile-for-python3.patch -Source2: https://rubygems.org/downloads/monkey-lib-0.5.4.gem -Source3: https://rubygems.org/downloads/orderedhash-0.0.6.gem -Source4: https://rubygems.org/downloads/rpam-ruby19-1.2.1.gem -Source5: https://rubygems.org/downloads/sinatra-contrib-1.4.4.gem -Source6: https://rubygems.org/downloads/sinatra-sugar-0.5.1.gem +Source2: https://rubygems.org/downloads/orderedhash-0.0.6.gem +Source3: https://rubygems.org/downloads/rpam-ruby19-1.2.1.gem +Source4: https://rubygems.org/downloads/sinatra-contrib-1.4.4.gem -BuildRequires: python2-devel ruby ruby-devel pam-devel python rubygem-bundler +BuildRequires: python3 python3-devel python3-setuptools +BuildRequires: ruby ruby-devel rubygem-bundler rubygem-io-console +# pcsd gems start BuildRequires: rubygem-sinatra rubygem-rack rubygem-rack-protection rubygem-tilt BuildRequires: rubygem-eventmachine rubygem-rack-test rubygem-multi_json rubygem-json BuildRequires: rubygem-open4 rubygem-backports +# pcsd gems end +BuildRequires: pam-devel # for post, preun and postun macros BuildRequires: systemd # for UpdateTimestamps sanitization function BuildRequires: diffstat -Requires: pacemaker ruby python +Requires: pacemaker ruby python3 Requires: psmisc openssl Requires: python-clufter => 0.55.0 -Requires: python-lxml +Requires: python3-lxml Requires: rubygem-sinatra rubygem-rack rubygem-rack-protection rubygem-tilt Requires: rubygem-eventmachine rubygem-rack-test rubygem-multi_json rubygem-json Requires: rubygem-open4 rubygem-backports -Provides: bundled(rubygem-monkey-lib) = 0.5.4 Provides: bundled(rubygem-orderedhash) = 0.0.6 Provides: bundled(rubygem-rpam-ruby19) = 1.2.1 Provides: bundled(rubygem-sinatra-contrib) = 1.4.4 -Provides: bundled(rubygem-sinatra-sugar) = 0.5.1 %description pcs is a corosync and pacemaker configuration tool. It permits users to @@ -62,6 +63,8 @@ UpdateTimestamps() { %patch0 -p1 UpdateTimestamps -p1 %{PATCH0} +%patch1 -p1 +UpdateTimestamps -p1 %{PATCH1} mkdir -p pcsd/.bundle cp -f %SOURCE1 pcsd/.bundle/config @@ -69,17 +72,14 @@ mkdir -p pcsd/vendor/cache cp -f %SOURCE2 pcsd/vendor/cache cp -f %SOURCE3 pcsd/vendor/cache cp -f %SOURCE4 pcsd/vendor/cache -cp -f %SOURCE5 pcsd/vendor/cache -cp -f %SOURCE6 pcsd/vendor/cache %build %install rm -rf $RPM_BUILD_ROOT pwd -make install DESTDIR=$RPM_BUILD_ROOT PYTHON_SITELIB=%{python_sitelib} -make install_pcsd DESTDIR=$RPM_BUILD_ROOT PYTHON_SITELIB=%{python_sitelib} hdrdir="%{_includedir}" rubyhdrdir="%{_includedir}" includedir="%{_includedir}" -chmod 755 $RPM_BUILD_ROOT/%{python_sitelib}/pcs/pcs.py +make install DESTDIR=$RPM_BUILD_ROOT PYTHON_SITELIB=%{python3_sitelib} PYTHON=%{__python3} +make install_pcsd DESTDIR=$RPM_BUILD_ROOT hdrdir="%{_includedir}" rubyhdrdir="%{_includedir}" includedir="%{_includedir}" # quickfix for rubygems issue # https://bugzilla.redhat.com/show_bug.cgi?id=1299835 cd $RPM_BUILD_ROOT/usr/lib/pcsd/vendor/bundle/ruby @@ -98,9 +98,8 @@ ln -s 2.3.0/specifications specifications %systemd_postun_with_restart pcsd.service %files -%defattr(-,root,root,-) -%{python_sitelib}/pcs -%{python_sitelib}/pcs-%{version}-py2.*.egg-info +%{python3_sitelib}/pcs +%{python3_sitelib}/pcs-%{version}-py3.*.egg-info /usr/sbin/pcs /usr/lib/pcsd/* /usr/lib/pcsd/.bundle/config @@ -110,15 +109,25 @@ ln -s 2.3.0/specifications specifications /etc/bash_completion.d/pcs /etc/logrotate.d/pcsd %dir /var/log/pcsd -/etc/sysconfig/pcsd +%config(noreplace) /etc/sysconfig/pcsd %{_mandir}/man8/pcs.* %exclude /usr/lib/pcsd/*.debian %exclude /usr/lib/pcsd/.gitignore %exclude /usr/lib/pcsd/test +%exclude /usr/lib/pcsd/pcsd.service +%exclude /usr/lib/pcsd/pcsd.conf +%exclude %{python3_sitelib}/pcs/bash_completion.d.pcs +%exclude %{python3_sitelib}/pcs/pcs.8 +%exclude %{python3_sitelib}/pcs/pcs %doc COPYING README %changelog +* Mon Apr 11 2016 Tomas Jelinek - 0.9.150-1 +- Re-synced to upstream sources +- Make pcs depend on python3 +- Spec file cleanup + * Tue Feb 23 2016 Tomas Jelinek - 0.9.149-2 - Fixed rubygems issues which prevented pcsd from starting - Added missing python-lxml dependency diff --git a/sources b/sources index 499929d..4e2d02b 100644 --- a/sources +++ b/sources @@ -1,7 +1,6 @@ 9ff7cd69ee65fb7c201924473321a987 pcs-0.9.149.tar.gz -385ac54687bd3986c3898c5acf62324a monkey-lib-0.5.4.gem 1668db3c807839d5ff3f90d0d6c4dadb orderedhash-0.0.6.gem e4538ac4d9f20d3720c9fc73a0c58f6c rpam-ruby19-1.2.1.gem aa1f67aac4d19f000297c91782d0b747 sinatra-contrib-1.4.4.gem -7852bd3b21c568b548808c13092b8645 sinatra-sugar-0.5.1.gem 2c8c658b54face6f08f47cbdf848eeae pcsd-bundle-config-1 +53c6497971da685228b674b0eb91d4f2 pcs-0.9.150.tar.gz