commit:     8c4cb3a14c9af037b8c4d9663d733c776932cb9a
Author:     Andrea Postiglione <andrea.postiglione <AT> gmail <DOT> com>
AuthorDate: Sat Mar 20 11:40:36 2021 +0000
Commit:     Andrea Postiglione <andrea.postiglione <AT> gmail <DOT> com>
CommitDate: Sat Mar 20 11:40:36 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=8c4cb3a1

sys-cluster/pcs-0.10.8 version bump

Signed-off-by: Andrea Postiglione <andrea.postiglione <AT> gmail.com>

 sys-cluster/pcs/Manifest                  |   1 +
 sys-cluster/pcs/files/openrc-0.10.8.patch | 437 ++++++++++++++++++++++++++++++
 sys-cluster/pcs/pcs-0.10.8.ebuild         | 112 ++++++++
 3 files changed, 550 insertions(+)

diff --git a/sys-cluster/pcs/Manifest b/sys-cluster/pcs/Manifest
index ecae6dae..79ce84ca 100644
--- a/sys-cluster/pcs/Manifest
+++ b/sys-cluster/pcs/Manifest
@@ -1 +1,2 @@
 DIST pcs-0.10.7.tar.gz 1818215 BLAKE2B 
345ba114f92c1f555a948b1f6eafb532056d3196c9f0cf3007d7d27d8a8957c886f3a5ab2519e0922908c3d11ed9dc54632376d5556f6b1dc5dfb035bcfda4bf
 SHA512 
c76a11fa162258ee311dcceca50674d7638396880596a826a711d944aab421ed06a6c4eb41f9dc997c01b72bce73c98c4f7be3fcd8fafb8ae16902f6a1e0c521
+DIST pcs-0.10.8.tar.gz 1852902 BLAKE2B 
ef023ca27c2dbd1d765e1d68f67a55c79f57b1dbc7d571b8f21e1c30f8a8510b1148459a0e683c682fb969c7635ef726c8e227b995d1a35dfd27894f40bdaa26
 SHA512 
8b9ba62279431e481d062e804d24480d2a274d2f4897a82149df6116ff3df2394d97a3ee77a6dee4c563d915bab0142124a8942524fcc4e894912086e865353c

diff --git a/sys-cluster/pcs/files/openrc-0.10.8.patch 
b/sys-cluster/pcs/files/openrc-0.10.8.patch
new file mode 100644
index 00000000..ad73352f
--- /dev/null
+++ b/sys-cluster/pcs/files/openrc-0.10.8.patch
@@ -0,0 +1,437 @@
+diff -uPNr pcs-0.10.7/pcs/lib/external.py pcs-0.10.7-openrc/pcs/lib/external.py
+--- pcs-0.10.7/pcs/lib/external.py     2020-12-15 17:02:49.055879169 +0100
++++ pcs-0.10.7-openrc/pcs/lib/external.py      2020-12-15 21:13:41.878627331 
+0100
+@@ -13,8 +13,8 @@
+ from pcs.lib.errors import LibraryError
+ 
+ 
+-_chkconfig = settings.chkconfig_binary
+-_service = settings.service_binary
++_rc_config = settings.rc_config_binary
++_rc_service = settings.rc_service_binary
+ _systemctl = settings.systemctl_binary
+ 
+ 
+@@ -192,7 +192,7 @@
+             [_systemctl, "disable", _get_service_name(service, instance)]
+         )
+     else:
+-        stdout, stderr, retval = runner.run([_chkconfig, service, "off"])
++        stdout, stderr, retval = runner.run([_rc_config, 'delete', service, 
"default"])
+     if retval != 0:
+         raise DisableServiceError(
+             service, join_multilines([stderr, stdout]), instance
+@@ -214,7 +214,7 @@
+             [_systemctl, "enable", _get_service_name(service, instance)]
+         )
+     else:
+-        stdout, stderr, retval = runner.run([_chkconfig, service, "on"])
++        stdout, stderr, retval = runner.run([_rc_config, 'add', service, 
"default"])
+     if retval != 0:
+         raise EnableServiceError(
+             service, join_multilines([stderr, stdout]), instance
+@@ -234,7 +234,7 @@
+             [_systemctl, "start", _get_service_name(service, instance)]
+         )
+     else:
+-        stdout, stderr, retval = runner.run([_service, service, "start"])
++        stdout, stderr, retval = runner.run([_rc_service, service, "start"])
+     if retval != 0:
+         raise StartServiceError(
+             service, join_multilines([stderr, stdout]), instance
+@@ -254,7 +254,7 @@
+             [_systemctl, "stop", _get_service_name(service, instance)]
+         )
+     else:
+-        stdout, stderr, retval = runner.run([_service, service, "stop"])
++        stdout, stderr, retval = runner.run([_rc_service, service, "stop"])
+     if retval != 0:
+         raise StopServiceError(
+             service, join_multilines([stderr, stdout]), instance
+@@ -295,8 +295,12 @@
+             [_systemctl, "is-enabled", _get_service_name(service, instance)]
+         )
+     else:
+-        dummy_stdout, dummy_stderr, retval = runner.run([_chkconfig, service])
+-
++        stdout, dummy_stderr, dummy_retval = runner.run([_rc_config, 'list', 
'default'])
++        retval = 1
++        for line in stdout.splitlines():
++            line = line.split(' ')[0]
++            if service == line:
++                retval = 0
+     return retval == 0
+ 
+ 
+@@ -316,7 +320,7 @@
+         )
+     else:
+         dummy_stdout, dummy_stderr, retval = runner.run(
+-            [_service, service, "status"]
++            [_rc_service, service, "status"]
+         )
+ 
+     return retval == 0
+@@ -344,8 +348,7 @@
+     """
+     if is_systemctl():
+         return []
+-
+-    stdout, dummy_stderr, return_code = runner.run([_chkconfig])
++    stdout, dummy_stderr, return_code = runner.run([_rc_config, "list"])
+     if return_code != 0:
+         return []
+ 
+diff -uPNr pcs-0.10.7/pcs/settings_default.py 
pcs-0.10.7-openrc/pcs/settings_default.py
+--- pcs-0.10.7/pcs/settings_default.py 2020-12-15 17:02:49.056879154 +0100
++++ pcs-0.10.7-openrc/pcs/settings_default.py  2020-12-16 21:59:28.541361537 
+0100
+@@ -1,8 +1,8 @@
+ import os.path
+ 
+ systemctl_binary = "/bin/systemctl"
+-chkconfig_binary = "/sbin/chkconfig"
+-service_binary = "/sbin/service"
++rc_config_binary = "/usr/bin/rc-config"
++rc_service_binary = "/sbin/rc-service"
+ pacemaker_binaries = "/usr/sbin/"
+ crm_resource_binary = os.path.join(pacemaker_binaries, "crm_resource")
+ corosync_binaries = "/usr/sbin/"
+@@ -41,7 +41,7 @@
+ crm_mon_schema = "/usr/share/pacemaker/crm_mon.rng"
+ agent_metadata_schema = "/usr/share/resource-agents/ra-api-1.dtd"
+ pcsd_var_location = "/var/lib/pcsd/"
+-pcsd_ruby_socket = "/run/pcsd-ruby.socket"
++pcsd_ruby_socket = "/run/pcsd-daemon.socket"
+ pcsd_cert_location = os.path.join(pcsd_var_location, "pcsd.crt")
+ pcsd_key_location = os.path.join(pcsd_var_location, "pcsd.key")
+ pcsd_known_hosts_location = os.path.join(pcsd_var_location, "known-hosts")
+@@ -59,7 +59,7 @@
+ pacemaker_gname = "haclient"
+ sbd_binary = "/usr/sbin/sbd"
+ sbd_watchdog_default = "/dev/watchdog"
+-sbd_config = "/etc/sysconfig/sbd"
++sbd_config = "/etc/default/sbd"
+ # this limit is also mentioned in docs, change there as well
+ sbd_max_device_num = 3
+ # message types are also mentioned in docs, change there as well
+diff -uPNr pcs-0.10.7/pcs/settings.py.debian 
pcs-0.10.7-openrc/pcs/settings.py.debian
+--- pcs-0.10.7/pcs/settings.py.debian  2020-12-15 17:02:49.055879169 +0100
++++ pcs-0.10.7-openrc/pcs/settings.py.debian   2020-12-16 09:36:10.493104892 
+0100
+@@ -1,10 +1,10 @@
+ from pcs.settings_default import *
+-service_binary = "/usr/sbin/service"
++rc-service_binary = "/sbin/rc-service"
+ corosync_log_file = "/var/log/corosync/corosync.log"
+-pacemaker_schedulerd = "/usr/lib/pacemaker/pacemaker-schedulerd"
+-pacemaker_controld = "/usr/lib/pacemaker/pacemaker-controld"
+-pacemaker_based = "/usr/lib/pacemaker/pacemaker-based"
+-pacemaker_fenced = "/usr/lib/pacemaker/pacemaker-fenced"
++pacemaker_schedulerd = "/usr/libexec/pacemaker/pacemaker-schedulerd"
++pacemaker_controld = "/usr/libexec/pacemaker/pacemaker-controld"
++pacemaker_based = "/usr/libexec/pacemaker/pacemaker-based"
++pacemaker_fenced = "/usr/libexec/pacemaker/pacemaker-fenced"
+ pcsd_exec_location = "/usr/share/pcsd/"
+ pcsd_gem_path = None
+ pcsd_config = "/etc/default/pcsd"
+diff -uPNr pcs-0.10.7/pcs/utils.py pcs-0.10.7-openrc/pcs/utils.py
+--- pcs-0.10.7/pcs/utils.py    2020-12-15 17:02:49.056879154 +0100
++++ pcs-0.10.7-openrc/pcs/utils.py     2020-12-16 21:57:09.487686936 +0100
+@@ -2187,7 +2187,7 @@
+         )
+     else:
+         stdout, stderr, retval = cmd_runner().run(
+-            [settings.service_binary, service, "start"]
++            [settings.rc_service_binary, service, "start"]
+         )
+     return join_multilines([stderr, stdout]), retval
+ 
+@@ -2202,7 +2202,7 @@
+         )
+     else:
+         stdout, stderr, retval = cmd_runner().run(
+-            [settings.service_binary, service, "stop"]
++            [settings.rc_service_binary, service, "stop"]
+         )
+     return join_multilines([stderr, stdout]), retval
+ 
+diff -uPNr pcs-0.10.7/pcsd/pcs.rb pcs-0.10.7-openrc/pcsd/pcs.rb
+--- pcs-0.10.7/pcsd/pcs.rb     2020-12-15 17:02:49.063879050 +0100
++++ pcs-0.10.7-openrc/pcsd/pcs.rb      2020-12-16 21:54:52.337982100 +0100
+@@ -1708,11 +1708,22 @@
+ def is_service_enabled?(service)
+   if ISSYSTEMCTL
+     cmd = ['systemctl', 'is-enabled', "#{service}.service"]
++    _, _, retcode = run_cmd(PCSAuth.getSuperuserAuth(), *cmd)
++    return (retcode == 0)
+   else
+-    cmd = ['chkconfig', service]
++    cmd = ['rc-config', 'list', 'default']
++    stdout, _, retcode = run_cmd(PCSAuth.getSuperuserAuth(), *cmd)
++    if retcode != 0
++      return false
++    end
++    stdout.each { |line|
++    line = line.split(' ')
++      if line[0] == service
++        return true
++      end
++    }
++  return false
+   end
+-  _, _, retcode = run_cmd(PCSAuth.getSuperuserAuth(), *cmd)
+-  return (retcode == 0)
+ end
+ 
+ def is_service_running?(service)
+@@ -1722,7 +1733,7 @@
+     # encoding/decoding errors. We are not interested in the lines anyway.
+     cmd = ['systemctl', 'status', '--lines=0', "#{service}.service"]
+   else
+-    cmd = ['service', service, 'status']
++    cmd = ['rc-service', service, 'status']
+   end
+   _, _, retcode = run_cmd(PCSAuth.getSuperuserAuth(), *cmd)
+   return (retcode == 0)
+@@ -1775,7 +1786,8 @@
+ class ServiceInstalledCheckerChkconfig < ServiceInstalledChecker
+   protected
+   def run_command
+-    return run_cmd(PCSAuth.getSuperuserAuth(), 'chkconfig')
++    cmd = ['rc-config', 'list']
++    return run_cmd(PCSAuth.getSuperuserAuth(), *cmd)
+   end
+ 
+   def contains_line_service?(line, service)
+@@ -1802,7 +1814,7 @@
+     cmd = ['systemctl', 'enable', "#{service}.service"]
+   else
+     # fails when the service is not installed
+-    cmd = ['chkconfig', service, 'on']
++    cmd = ['rc-config', 'add', service, 'default']
+   end
+   _, _, retcode = run_cmd(PCSAuth.getSuperuserAuth(), *cmd)
+   return (retcode == 0)
+@@ -1817,7 +1829,7 @@
+   if ISSYSTEMCTL
+     cmd = ['systemctl', 'disable', "#{service}.service"]
+   else
+-    cmd = ['chkconfig', service, 'off']
++    cmd = ['rc-config', 'delete', service, 'default']
+   end
+   _, _, retcode = run_cmd(PCSAuth.getSuperuserAuth(), *cmd)
+   return (retcode == 0)
+@@ -1827,7 +1839,7 @@
+   if ISSYSTEMCTL
+     cmd = ['systemctl', 'start', "#{service}.service"]
+   else
+-    cmd = ['service', service, 'start']
++    cmd = ['rc-service', service, 'start']
+   end
+   _, _, retcode = run_cmd(PCSAuth.getSuperuserAuth(), *cmd)
+   return (retcode == 0)
+@@ -1840,7 +1852,7 @@
+   if ISSYSTEMCTL
+     cmd = ['systemctl', 'stop', "#{service}.service"]
+   else
+-    cmd = ['service', service, 'stop']
++    cmd = ['rc-service', service, 'stop']
+   end
+   _, _, retcode = run_cmd(PCSAuth.getSuperuserAuth(), *cmd)
+   return (retcode == 0)
+diff -uPNr pcs-0.10.7/pcsd/settings.rb pcs-0.10.7-openrc/pcsd/settings.rb
+--- pcs-0.10.7/pcsd/settings.rb        2020-12-15 17:02:49.065879020 +0100
++++ pcs-0.10.7-openrc/pcsd/settings.rb 2020-12-16 09:26:46.782426991 +0100
+@@ -3,7 +3,7 @@
+ PCSD_EXEC_LOCATION = '/usr/lib/pcsd/'
+ PCSD_VAR_LOCATION = '/var/lib/pcsd/'
+ PCSD_DEFAULT_PORT = 2224
+-PCSD_RUBY_SOCKET = '/run/pcsd-ruby.socket'
++PCSD_RUBY_SOCKET = '/run/pcsd-daemon.socket'
+ 
+ CRT_FILE = PCSD_VAR_LOCATION + 'pcsd.crt'
+ KEY_FILE = PCSD_VAR_LOCATION + 'pcsd.key'
+diff -uPNr pcs-0.10.7/pcsd/settings.rb.debian 
pcs-0.10.7-openrc/pcsd/settings.rb.debian
+--- pcs-0.10.7/pcsd/settings.rb.debian 2020-12-15 17:02:49.065879020 +0100
++++ pcs-0.10.7-openrc/pcsd/settings.rb.debian  2020-12-16 18:52:24.289921676 
+0100
+@@ -3,7 +3,7 @@
+ PCSD_EXEC_LOCATION = '/usr/share/pcsd/'
+ PCSD_VAR_LOCATION = '/var/lib/pcsd/'
+ PCSD_DEFAULT_PORT = 2224
+-PCSD_RUBY_SOCKET = '/run/pcsd-ruby.socket'
++PCSD_RUBY_SOCKET = '/run/pcsd-daemon.socket'
+ 
+ CRT_FILE = PCSD_VAR_LOCATION + 'pcsd.crt'
+ KEY_FILE = PCSD_VAR_LOCATION + 'pcsd.key'
+diff -uPNr pcs-0.10.7/pcs_test/tier0/lib/test_external.py 
pcs-0.10.7-openrc/pcs_test/tier0/lib/test_external.py
+--- pcs-0.10.7/pcs_test/tier0/lib/test_external.py     2020-12-15 
17:02:49.061879080 +0100
++++ pcs-0.10.7-openrc/pcs_test/tier0/lib/test_external.py      2020-12-16 
21:52:40.531155033 +0100
+@@ -16,8 +16,8 @@
+ import pcs.lib.external as lib
+ 
+ 
+-_chkconfig = settings.chkconfig_binary
+-_service = settings.service_binary
++_rc_config = settings.rc_config_binary
++_rc_service = settings.rc_service_binary
+ _systemctl = settings.systemctl_binary
+ 
+ 
+@@ -415,7 +415,7 @@
+             self.mock_runner, self.service, None
+         )
+         self.mock_runner.run.assert_called_once_with(
+-            [_chkconfig, self.service, "off"]
++            [_rc_config, "delete", self.service, "default"]
+         )
+ 
+     def test_not_systemctl_failed(self, mock_is_installed, mock_systemctl):
+@@ -430,7 +430,7 @@
+             self.mock_runner, self.service, None
+         )
+         self.mock_runner.run.assert_called_once_with(
+-            [_chkconfig, self.service, "off"]
++            [_rc_config, "delete", self.service, "default"]
+         )
+ 
+     def test_systemctl_not_installed(self, mock_is_installed, mock_systemctl):
+@@ -480,7 +480,7 @@
+             self.mock_runner, self.service, instance
+         )
+         self.mock_runner.run.assert_called_once_with(
+-            [_chkconfig, self.service, "off"]
++            [_rc_config, "delete", self.service, "default"]
+         )
+ 
+ 
+@@ -514,7 +514,7 @@
+         self.mock_runner.run.return_value = ("", "", 0)
+         lib.enable_service(self.mock_runner, self.service)
+         self.mock_runner.run.assert_called_once_with(
+-            [_chkconfig, self.service, "on"]
++            [_rc_config, "add", self.service, "default"]
+         )
+ 
+     def test_not_systemctl_failed(self, mock_systemctl):
+@@ -525,7 +525,7 @@
+             lambda: lib.enable_service(self.mock_runner, self.service),
+         )
+         self.mock_runner.run.assert_called_once_with(
+-            [_chkconfig, self.service, "on"]
++            [_rc_config, "add", self.service, "default"]
+         )
+ 
+     def test_instance_systemctl(self, mock_systemctl):
+@@ -545,7 +545,7 @@
+         self.mock_runner.run.return_value = ("", "", 0)
+         lib.enable_service(self.mock_runner, self.service, instance="test")
+         self.mock_runner.run.assert_called_once_with(
+-            [_chkconfig, self.service, "on"]
++            [_rc_config, "add", self.service, "default"]
+         )
+ 
+ 
+@@ -579,7 +579,7 @@
+         self.mock_runner.run.return_value = ("Starting...", "", 0)
+         lib.start_service(self.mock_runner, self.service)
+         self.mock_runner.run.assert_called_once_with(
+-            [_service, self.service, "start"]
++            [_rc_service, self.service, "start"]
+         )
+ 
+     def test_not_systemctl_failed(self, mock_systemctl):
+@@ -590,7 +590,7 @@
+             lambda: lib.start_service(self.mock_runner, self.service),
+         )
+         self.mock_runner.run.assert_called_once_with(
+-            [_service, self.service, "start"]
++            [_rc_service, self.service, "start"]
+         )
+ 
+     def test_instance_systemctl(self, mock_systemctl):
+@@ -610,7 +610,7 @@
+         self.mock_runner.run.return_value = ("Starting...", "", 0)
+         lib.start_service(self.mock_runner, self.service, instance="test")
+         self.mock_runner.run.assert_called_once_with(
+-            [_service, self.service, "start"]
++            [_rc_service, self.service, "start"]
+         )
+ 
+ 
+@@ -644,7 +644,7 @@
+         self.mock_runner.run.return_value = ("Stopping...", "", 0)
+         lib.stop_service(self.mock_runner, self.service)
+         self.mock_runner.run.assert_called_once_with(
+-            [_service, self.service, "stop"]
++            [_rc_service, self.service, "stop"]
+         )
+ 
+     def test_not_systemctl_failed(self, mock_systemctl):
+@@ -655,7 +655,7 @@
+             lambda: lib.stop_service(self.mock_runner, self.service),
+         )
+         self.mock_runner.run.assert_called_once_with(
+-            [_service, self.service, "stop"]
++            [_rc_service, self.service, "stop"]
+         )
+ 
+     def test_instance_systemctl(self, mock_systemctl):
+@@ -671,7 +671,7 @@
+         self.mock_runner.run.return_value = ("Stopping...", "", 0)
+         lib.stop_service(self.mock_runner, self.service, instance="test")
+         self.mock_runner.run.assert_called_once_with(
+-            [_service, self.service, "stop"]
++            [_rc_service, self.service, "stop"]
+         )
+ 
+ 
+@@ -734,13 +734,13 @@
+         mock_systemctl.return_value = False
+         self.mock_runner.run.return_value = ("", "", 0)
+         self.assertTrue(lib.is_service_enabled(self.mock_runner, 
self.service))
+-        self.mock_runner.run.assert_called_once_with([_chkconfig, 
self.service])
++        self.mock_runner.run.assert_called_once_with([_rc_config, 
self.service])
+ 
+     def test_not_systemctl_disabled(self, mock_systemctl):
+         mock_systemctl.return_value = False
+         self.mock_runner.run.return_value = ("", "", 3)
+         self.assertFalse(lib.is_service_enabled(self.mock_runner, 
self.service))
+-        self.mock_runner.run.assert_called_once_with([_chkconfig, 
self.service])
++        self.mock_runner.run.assert_called_once_with([_rc_config, 
self.service])
+ 
+ 
+ @mock.patch("pcs.lib.external.is_systemctl")
+@@ -770,7 +770,7 @@
+         self.mock_runner.run.return_value = ("is running", "", 0)
+         self.assertTrue(lib.is_service_running(self.mock_runner, 
self.service))
+         self.mock_runner.run.assert_called_once_with(
+-            [_service, self.service, "status"]
++            [_rc_service, self.service, "status"]
+         )
+ 
+     def test_not_systemctl_not_running(self, mock_systemctl):
+@@ -778,7 +778,7 @@
+         self.mock_runner.run.return_value = ("is stopped", "", 3)
+         self.assertFalse(lib.is_service_running(self.mock_runner, 
self.service))
+         self.mock_runner.run.assert_called_once_with(
+-            [_service, self.service, "status"]
++            [_rc_service, self.service, "status"]
+         )
+ 
+ 
+@@ -942,14 +942,14 @@
+             ["pcsd", "sbd", "pacemaker"],
+         )
+         self.assertEqual(mock_is_systemctl.call_count, 1)
+-        self.mock_runner.run.assert_called_once_with([_chkconfig])
++        self.mock_runner.run.assert_called_once_with([_rc_config])
+ 
+     def test_failed(self, mock_is_systemctl):
+         mock_is_systemctl.return_value = False
+         self.mock_runner.run.return_value = ("stdout", "failed", 1)
+         self.assertEqual(lib.get_non_systemd_services(self.mock_runner), [])
+         self.assertEqual(mock_is_systemctl.call_count, 1)
+-        self.mock_runner.run.assert_called_once_with([_chkconfig])
++        self.mock_runner.run.assert_called_once_with([_rc_config])
+ 
+     def test_systemd(self, mock_is_systemctl):
+         mock_is_systemctl.return_value = True

diff --git a/sys-cluster/pcs/pcs-0.10.8.ebuild 
b/sys-cluster/pcs/pcs-0.10.8.ebuild
new file mode 100644
index 00000000..687d1fda
--- /dev/null
+++ b/sys-cluster/pcs/pcs-0.10.8.ebuild
@@ -0,0 +1,112 @@
+# Copyright 2019-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+USE_RUBY="ruby25 ruby26"
+inherit distutils-r1 ruby-ng systemd
+
+DESCRIPTION="Pacemaker/Corosync Configuration System"
+HOMEPAGE="https://github.com/ClusterLabs/pcs";
+SRC_URI="https://github.com/ClusterLabs/pcs/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="snmp systemd"
+
+DEPEND="
+       dev-libs/libffi
+       media-libs/fontconfig
+       sys-apps/coreutils
+"
+RDEPEND="
+       ${DEPEND}
+       dev-libs/openssl
+       dev-python/distro[${PYTHON_USEDEP}]
+       dev-python/dacite[${PYTHON_USEDEP}]
+       dev-python/lxml[${PYTHON_USEDEP}]
+       dev-python/pycurl[${PYTHON_USEDEP}]
+       dev-python/pyopenssl[${PYTHON_USEDEP}]
+       dev-python/pyparsing[${PYTHON_USEDEP}]
+       dev-python/python-dateutil[${PYTHON_USEDEP}]
+       >=sys-cluster/corosync-3.0
+       >=sys-cluster/pacemaker-2.0
+       sys-libs/pam
+       sys-process/psmisc
+       >=www-servers/tornado-6.0[${PYTHON_USEDEP}]
+       <www-servers/tornado-7.0[${PYTHON_USEDEP}]
+"
+
+ruby_add_rdepend "
+       dev-ruby/backports
+       dev-ruby/bundler
+       dev-ruby/ethon
+       dev-ruby/highline
+       dev-ruby/json
+       dev-ruby/multi_json
+       dev-ruby/open4
+       dev-ruby/rack
+       dev-ruby/rack-protection
+       dev-ruby/rack-test
+       dev-ruby/rubygems
+       dev-ruby/sinatra
+       dev-ruby/thin
+       dev-ruby/thor
+       dev-ruby/tilt
+"
+
+PATCHES=( "${FILESDIR}/remove-ruby-bundle-path.patch" 
"${FILESDIR}/openrc-0.10.8.patch" )
+
+S="${WORKDIR}/all/${P}"
+
+src_compile() {
+       return
+}
+
+src_install() {
+       # pre-create directory that is needed by 'make install'
+       dodir "/usr/lib/pcs"
+       # install files using 'make install'
+       emake install \
+               SYSTEMCTL_OVERRIDE=$(use systemd) \
+               DESTDIR="${D}" \
+               CONF_DIR="/etc/default/" \
+               PREFIX="${EPREFIX}/usr/" \
+               BUNDLE_INSTALL_PYAGENTX=false \
+               BUNDLE_TO_INSTALL=false \
+               BUILD_GEMS=false
+
+       # mark log directories to be kept
+       keepdir /var/log/pcsd
+       keepdir /var/lib/pcsd
+
+       # symlink the /usr/lib/pcs/pcs to /usr/sbin/pcs for pcsd
+       dosym ../../sbin/pcs "${EPREFIX}/usr/lib/pcs/pcs"
+
+       # use Debian style systemd unit (with config in /etc/default/pcsd)
+       if use systemd ; then
+               systemd_newunit "${S}/pcsd/pcsd.service.debian" "pcsd.service"
+               systemd_newunit "${S}/pcsd/pcsd-ruby.service" 
"pcsd-daemon.service"
+       fi
+       # custom service file for openRC
+       newinitd "${FILESDIR}/pcsd.initd" pcsd || die
+       newinitd "${FILESDIR}/pcsd-daemon.initd" pcsd-daemon || die
+
+       # move config files to right places - we use debian-style /etc/default
+       cp -a "${S}/pcs/settings.py.debian" "${D}/usr/lib/pcs/settings.py"
+       cp -a "${S}/pcsd/settings.rb.debian" "${D}/usr/lib/pcsd/settings.rb"
+
+       # unless support for SNMP was requested remove SNMP related files
+       if ! use snmp; then
+               rm -rf "${D}/usr/share/snmp"
+               rm -rf "${D}/usr/lib64/python*/site-packages/pcs/snmp" #FIXME
+               rm "${D}/usr/share/man/man8/pcs_snmp_agent.8"
+               rm "${D}/usr/lib/pcs/pcs_snmp_agent"
+               rm "${D}/etc/default/pcs_snmp_agent"
+       fi
+
+       python_foreach_impl python_optimize
+}

Reply via email to