From afb5c8bf12e7ed32f5a7775a242b8df9664b57f9 Mon Sep 17 00:00:00 2001 From: Takashi Kajinami Date: Fri, 18 Oct 2024 00:46:39 +0900 Subject: [PATCH] Remove Windows support Since Winstackers project has been retired, running OpenStack on Windows operating systems is no longer tested or maintained. Change-Id: I9f1a17d535f0aae7dfd584f11908dbea7aaaea36 --- .../notes/remove-windows-1a58a6af889e45a3.yaml | 4 ++++ tooz/drivers/file.py | 17 +---------------- tooz/tests/drivers/test_file.py | 17 ----------------- 3 files changed, 5 insertions(+), 33 deletions(-) create mode 100644 releasenotes/notes/remove-windows-1a58a6af889e45a3.yaml diff --git a/releasenotes/notes/remove-windows-1a58a6af889e45a3.yaml b/releasenotes/notes/remove-windows-1a58a6af889e45a3.yaml new file mode 100644 index 00000000..e126c1c6 --- /dev/null +++ b/releasenotes/notes/remove-windows-1a58a6af889e45a3.yaml @@ -0,0 +1,4 @@ +--- +upgrade: + - | + Support for Windows operating systems has been removed. diff --git a/tooz/drivers/file.py b/tooz/drivers/file.py index 60615fbc..a81d28b7 100644 --- a/tooz/drivers/file.py +++ b/tooz/drivers/file.py @@ -20,9 +20,7 @@ import functools import hashlib import logging import os -import re import shutil -import sys import tempfile import threading import weakref @@ -226,7 +224,7 @@ class FileDriver(coordination.CoordinationDriverCachedRunWatchers, def __init__(self, member_id, parsed_url, options): """Initialize the file driver.""" super().__init__(member_id, parsed_url, options) - self._dir = self._normalize_path(parsed_url.path) + self._dir = parsed_url.path self._group_dir = os.path.join(self._dir, 'groups') self._tmpdir = os.path.join(self._dir, 'tmp') self._driver_lock_path = os.path.join(self._dir, '.driver_lock') @@ -238,19 +236,6 @@ class FileDriver(coordination.CoordinationDriverCachedRunWatchers, self._safe_member_id = self._make_filesystem_safe(member_id) self._timeout = int(self._options.get('timeout', 10)) - @staticmethod - def _normalize_path(path): - if sys.platform == 'win32': - # Replace slashes with backslashes and make sure we don't - # have any at the beginning of paths that include drive letters. - # - # Expected url format: - # file:////share_address/share_name - # file:///C:/path - return re.sub(r'\\(?=\w:\\)', '', - os.path.normpath(path)) - return path - @classmethod def _get_raw_lock(cls, path, member_id): lock_barrier = cls._barriers.setdefault(path, _Barrier()) diff --git a/tooz/tests/drivers/test_file.py b/tooz/tests/drivers/test_file.py index f6f5a1a5..ac47a86d 100644 --- a/tooz/tests/drivers/test_file.py +++ b/tooz/tests/drivers/test_file.py @@ -14,7 +14,6 @@ # under the License. import os -from unittest import mock import fixtures from testtools import testcase @@ -53,19 +52,3 @@ class TestFileDriver(testcase.TestCase): safe_group_id, '.metadata')) self.assertRaises(tooz.ToozError, coord.delete_group(b"my_group").get) - - @mock.patch('os.path.normpath', lambda x: x.replace('/', '\\')) - @mock.patch('sys.platform', 'win32') - def test_base_dir_win32(self): - coord = coordination.get_coordinator( - 'file:///C:/path/', self._FAKE_MEMBER_ID) - self.assertEqual('C:\\path\\', coord._dir) - - coord = coordination.get_coordinator( - 'file:////share_addr/share_path/', self._FAKE_MEMBER_ID) - self.assertEqual('\\\\share_addr\\share_path\\', coord._dir) - - # Administrative shares should be handled properly. - coord = coordination.get_coordinator( - 'file:////c$/path/', self._FAKE_MEMBER_ID) - self.assertEqual('\\\\c$\\path\\', coord._dir)