Compare commits

...

22 commits

Author SHA1 Message Date
Michael Banck 941e358015 Setting distribution to unreleased 2023-02-17 09:34:22 +01:00
Michael Banck e3e474e941 Final changelog for patroni_3.0.1-1 2023-02-17 09:34:22 +01:00
Michael Banck a20c84dccc * debian/control (Uploaders): Updated. 2023-02-17 09:33:41 +01:00
Michael Banck 237a471872 * New upstream release. 2023-02-16 17:08:18 +01:00
Michael Banck 1696b49173 Setting distribution to unreleased 2023-01-31 22:28:26 +01:00
Michael Banck 6080e04541 Final changelog for patroni_3.0.0-1 2023-01-31 22:28:26 +01:00
Michael Banck 3fa4d74c3d * debian/control (Depends): Removed obsolete lsb-base. 2023-01-31 20:21:17 +01:00
Michael Banck fc47254fde * debian/patches/regression_tests_skip_citus_test.patch: New patch, skips
the citus unit test for now as it fails on some configurations.
2023-01-31 09:23:08 +01:00
Michael Banck 8325643e03 * debian/tests/control: Add procps as dependency and skip DCS failsafe mode
acceptance tests on zookeeper.
2023-01-30 22:47:40 +01:00
Michael Banck f27a4dcb87 * debian/patches/acceptance_tests_system_patroni.patch: Refreshed.
* debian/patches/avoid_overwriting_configuration_during_boostrap.patch:
    Likewise.
2023-01-30 11:20:34 +01:00
Michael Banck 9a65ac8b54 * New major upstream release. 2023-01-30 11:19:38 +01:00
Michael Banck 2a3aed8b82 Setting distribution to unreleased 2023-01-23 21:25:15 +01:00
Michael Banck e33cc5df37 Final changelog for patroni_2.1.7-1 2023-01-23 21:25:15 +01:00
Michael Banck 2f75f4a6fe * debian/patches/acceptance_tests_reenable_etcdv2.patch: Removed, no longer
needed.
  * debian/patches/compatibility_with_old_modules.patch: Likewise.
2023-01-23 14:39:22 +01:00
Michael Banck 0528d0d46c * New upstream release. 2023-01-23 14:34:52 +01:00
Michael Banck cc4a79a666 Setting distribution to unreleased 2023-01-08 22:06:34 +01:00
Michael Banck 783a564fbd Final changelog for patroni_2.1.6-2 2023-01-08 22:06:34 +01:00
Michael Banck edaa60c5be Add changelog entry 2023-01-08 22:05:59 +01:00
Michael Banck 60c9d2c9de * debian/tests/acceptance: Only stop etcd if DCS is etcd or etcd3. 2023-01-08 22:03:01 +01:00
Michael Banck d1ffa2f934 Merge branch 'master' into 'master'
Ensure no etcd server is running before acceptance tests

See merge request postgresql/patroni!2
2023-01-08 21:01:36 +00:00
Shengjing Zhu b4db543273 Ensure no etcd server is running before acceptance tests
Otherwise acceptance tests can't spin up new etcd server which use
same port.

Closes: #1027707
2023-01-08 15:02:54 +08:00
Michael Banck 46ccaa2b8e Setting distribution to unreleased 2023-01-04 10:52:54 +01:00
10 changed files with 81 additions and 133 deletions

44
debian/changelog vendored
View file

@ -1,3 +1,47 @@
patroni (3.0.1-2) UNRELEASED; urgency=medium
-- Debian PostgreSQL Maintainers <team+postgresql@tracker.debian.org> Fri, 17 Feb 2023 09:34:22 +0100
patroni (3.0.1-1) unstable; urgency=medium
* New upstream release.
* debian/control (Uploaders): Updated.
-- Michael Banck <mbanck@debian.org> Fri, 17 Feb 2023 09:33:48 +0100
patroni (3.0.0-1) unstable; urgency=medium
* New major upstream release.
* debian/patches/acceptance_tests_system_patroni.patch: Refreshed.
* debian/patches/avoid_overwriting_configuration_during_boostrap.patch:
Likewise.
* debian/tests/control: Add procps as dependency and skip DCS failsafe mode
acceptance tests on zookeeper.
* debian/patches/regression_tests_skip_citus_test.patch: New patch, skips
the citus unit test for now as it fails on some configurations.
* debian/control (Depends): Removed obsolete lsb-base.
-- Michael Banck <michael.banck@credativ.de> Tue, 31 Jan 2023 22:27:24 +0100
patroni (2.1.7-1) unstable; urgency=medium
* New upstream release.
* debian/patches/acceptance_tests_reenable_etcdv2.patch: Removed, no longer
needed.
* debian/patches/compatibility_with_old_modules.patch: Likewise.
-- Michael Banck <michael.banck@credativ.de> Mon, 23 Jan 2023 21:24:46 +0100
patroni (2.1.6-2) unstable; urgency=medium
[ Shengjing Zhu ]
* debian/tests/acceptance: Ensure no etcd server is running before acceptance
tests. Otherwise, acceptance tests can't spin up a new etcd server which
uses the same port (Closes: #1027707).
-- Michael Banck <michael.banck@credativ.de> Sun, 08 Jan 2023 22:06:02 +0100
patroni (2.1.6-1) unstable; urgency=medium
* New upstream release.

4
debian/control vendored
View file

@ -2,7 +2,7 @@ Source: patroni
Section: database
Priority: optional
Maintainer: Debian PostgreSQL Maintainers <team+postgresql@tracker.debian.org>
Uploaders: Michael Banck <michael.banck@credativ.de>,
Uploaders: Michael Banck <mbanck@debian.org>,
Adrian Vondendriesch <adrian.vondendriesch@credativ.de>,
Build-Depends:
debhelper (>= 10),
@ -46,7 +46,7 @@ Homepage: https://github.com/zalando/patroni
Package: patroni
Architecture: all
Depends: ${misc:Depends}, ${python3:Depends}, lsb-base (>= 3.0-6), python3-psycopg2,
Depends: ${misc:Depends}, ${python3:Depends}, python3-psycopg2,
python3-etcd (>= 0.4.3) | python3-consul (>= 0.7.0) | python3-kazoo |
python3-kubernetes | python3-pysyncobj, python3-cdiff
Recommends: iproute2

View file

@ -1,11 +0,0 @@
--- ./features/environment.py.orig 2023-01-02 12:29:07.053058799 +0100
+++ ./features/environment.py 2023-01-02 12:30:04.865314768 +0100
@@ -441,7 +441,7 @@
self._client_cls = client_cls
def _start(self):
- return subprocess.Popen(["etcd", "--data-dir", self._work_directory],
+ return subprocess.Popen(["etcd", "--enable-v2", "--data-dir", self._work_directory],
stdout=self._log, stderr=subprocess.STDOUT)
def _is_running(self):

View file

@ -2,7 +2,7 @@ Index: patroni/features/environment.py
===================================================================
--- patroni.orig/features/environment.py
+++ patroni/features/environment.py
@@ -147,7 +147,7 @@ class PatroniController(AbstractControll
@@ -150,7 +150,7 @@ class PatroniController(AbstractControll
if os.name == 'nt':
env['BEHAVE_DEBUG'] = 'true'
patroni = subprocess.Popen([sys.executable, '-m', 'coverage', 'run',

View file

@ -17,11 +17,11 @@ Date: Fri Jul 29 14:55:15 2022 +0200
Close #2370
diff --git a/patroni/postgresql/config.py b/patroni/postgresql/config.py
index 9314315..976cf48 100644
--- a/patroni/postgresql/config.py
+++ b/patroni/postgresql/config.py
@@ -362,7 +362,7 @@ class ConfigHandler(object):
Index: patroni/patroni/postgresql/config.py
===================================================================
--- patroni.orig/patroni/postgresql/config.py
+++ patroni/patroni/postgresql/config.py
@@ -355,7 +355,7 @@ class ConfigHandler(object):
try:
for f in self._configuration_to_save:
config_file = os.path.join(self._config_dir, f)
@ -30,7 +30,7 @@ index 9314315..976cf48 100644
if os.path.isfile(config_file):
shutil.copy(config_file, backup_file)
except IOError:
@@ -374,7 +374,7 @@ class ConfigHandler(object):
@@ -367,7 +367,7 @@ class ConfigHandler(object):
try:
for f in self._configuration_to_save:
config_file = os.path.join(self._config_dir, f)

View file

@ -1,108 +0,0 @@
From 78c9a2fe6cd0deb4cd46b54001049cd8a239d82f Mon Sep 17 00:00:00 2001
From: Alexander Kukushkin <cyberdemn@gmail.com>
Date: Tue, 3 Jan 2023 15:22:49 +0100
Subject: [PATCH 1/2] Compatibility with some old modules
- old click differently handles argument names
- old pytest doesn't like `from mock import call`
Close: https://github.com/zalando/patroni/issues/2508
Close: https://github.com/zalando/patroni/issues/2512
---
patroni/ctl.py | 2 +-
tests/test_ctl.py | 2 +-
tests/test_kubernetes.py | 5 +++--
3 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/patroni/ctl.py b/patroni/ctl.py
index 2568f83ee..ec780731c 100644
--- a/patroni/ctl.py
+++ b/patroni/ctl.py
@@ -143,7 +143,7 @@ def load_config(path, dcs_url):
@click.group()
@click.option('--config-file', '-c', help='Configuration file',
envvar='PATRONICTL_CONFIG_FILE', default=CONFIG_FILE_PATH)
-@click.option('--dcs-url', '--dcs', '-d', help='The DCS connect url', envvar='DCS_URL')
+@click.option('--dcs-url', '--dcs', '-d', 'dcs_url', help='The DCS connect url', envvar='DCS_URL')
@option_insecure
@click.pass_context
def ctl(ctx, config_file, dcs_url, insecure):
diff --git a/tests/test_ctl.py b/tests/test_ctl.py
index dbb77c4df..87b8e6ca9 100644
--- a/tests/test_ctl.py
+++ b/tests/test_ctl.py
@@ -39,7 +39,7 @@ def test_load_config(self, mock_logger_debug):
self.assertRaises(PatroniCtlException, load_config, './non-existing-config-file', None)
with patch('os.path.exists', Mock(return_value=True)), \
- patch('patroni.config.Config._load_config_path', Mock(return_value={})):
+ patch('patroni.config.Config._load_config_path', Mock(return_value={})):
load_config(CONFIG_FILE_PATH, None)
mock_logger_debug.assert_called_once()
self.assertEqual(('Ignoring configuration file "%s". It does not exists or is not readable.',
diff --git a/tests/test_kubernetes.py b/tests/test_kubernetes.py
index 2dd1fd70f..27238a1c1 100644
--- a/tests/test_kubernetes.py
+++ b/tests/test_kubernetes.py
@@ -1,11 +1,12 @@
import base64
import datetime
import json
+import mock
import socket
import time
import unittest
-from mock import call, Mock, PropertyMock, mock_open, patch
+from mock import Mock, PropertyMock, mock_open, patch
from patroni.dcs.kubernetes import k8s_client, k8s_config, K8sConfig, K8sConnectionFailed,\
K8sException, K8sObject, Kubernetes, KubernetesError, KubernetesRetriableException,\
Retry, RetryFailedError, SERVICE_HOST_ENV_NAME, SERVICE_PORT_ENV_NAME
@@ -134,7 +135,7 @@ def test_load_kube_config(self):
mock_atexit.assert_called_once()
mock_remove.side_effect = OSError
mock_atexit.call_args[0][0]() # call _cleanup_temp_files
- mock_remove.assert_has_calls([call('1.tmp'), call('2.tmp')])
+ mock_remove.assert_has_calls([mock.call('1.tmp'), mock.call('2.tmp')])
@patch('urllib3.PoolManager.request')
From d44d32123cae4d607956b5b62ccf0b1dfdb8a546 Mon Sep 17 00:00:00 2001
From: Alexander Kukushkin <cyberdemn@gmail.com>
Date: Tue, 3 Jan 2023 15:38:20 +0100
Subject: [PATCH 2/2] Bump version and update release notes
---
docs/releases.rst | 10 ++++++++++
patroni/version.py | 2 +-
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/docs/releases.rst b/docs/releases.rst
index 48c298372..17828e1b8 100644
--- a/docs/releases.rst
+++ b/docs/releases.rst
@@ -3,6 +3,16 @@
Release notes
=============
+Version 2.1.7
+-------------
+
+**Bugfixes**
+
+- Fixed little incompatibilities with legacy python modules (Alexander Kukushkin)
+
+ They prevented from building/running Patroni on Debian buster/Ubuntu bionic.
+
+
Version 2.1.6
-------------
diff --git a/patroni/version.py b/patroni/version.py
index da04cc33c..bc6379c18 100644
--- a/patroni/version.py
+++ b/patroni/version.py
@@ -1 +1 @@
-__version__ = '2.1.6'
+__version__ = '2.1.7'

View file

@ -0,0 +1,13 @@
--- ./tests/test_citus.py.orig 2023-01-31 09:22:20.849730475 +0100
+++ ./tests/test_citus.py 2023-01-31 09:22:46.673632646 +0100
@@ -4,7 +4,10 @@
from . import BaseTestPostgresql, MockCursor, psycopg_connect, SleepException
from .test_ha import get_cluster_initialized_with_leader
+import unittest
+
+@unittest.skipIf(True, "Citus not tested")
@patch('patroni.postgresql.citus.Thread', Mock())
@patch('patroni.psycopg.connect', psycopg_connect)
class TestCitus(BaseTestPostgresql):

View file

@ -4,5 +4,4 @@ requirements_setuptools.patch
offline_intersphinx.patch
requirements_cdiff.patch
avoid_overwriting_configuration_during_boostrap.patch
acceptance_tests_reenable_etcdv2.patch
compatibility_with_old_modules.patch
regression_tests_skip_citus_test.patch

View file

@ -44,6 +44,16 @@ case $DEB_HOST_ARCH in
;;
esac
# ensure no etcd server is running.
if [ $(id -u) -eq 0 ]
then
if [ "$DCS" = "etcd" -o "$DCS" = "etcd3" ]
then
service etcd stop
service etcd status || true
fi
fi
set -x
for PG_VERSION in $(ls -1r /usr/lib/postgresql/); do
echo "### PostgreSQL $PG_VERSION acceptance-$DCS $@ ###"

View file

@ -22,7 +22,7 @@ Depends:
python3-etcd (>= 0.4.3),
@,
Test-Command: debian/tests/acceptance etcd features/basic_replication.feature
Restrictions: allow-stderr
Restrictions: needs-root, allow-stderr
Features: test-name=acceptance-etcd
Depends:
@ -34,7 +34,7 @@ Depends:
python3-etcd (>= 0.4.3),
@,
Test-Command: debian/tests/acceptance etcd
Restrictions: allow-stderr, flaky
Restrictions: needs-root, allow-stderr, flaky
# consul
Features: test-name=acceptance-consul
@ -58,8 +58,9 @@ Depends:
python3-behave,
python3-coverage,
python3-kazoo,
procps,
@,
Test-Command: debian/tests/acceptance zookeeper
Test-Command: debian/tests/acceptance zookeeper "-e dcs_failsafe_mode"
Restrictions: needs-root, allow-stderr, flaky, skip-not-installable
# raft