ceph-devstack 0.2.0__py3-none-any.whl → 0.2.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
ceph_devstack/host.py CHANGED
@@ -73,6 +73,7 @@ class Host:
73
73
  self._kernel_version = parse_version(raw_version.split("-")[0])
74
74
  return self._kernel_version
75
75
 
76
+ @property
76
77
  def os_type(self) -> str:
77
78
  if not hasattr(self, "_os_type"):
78
79
  proc = self.run(["uname"])
@@ -56,7 +56,7 @@ class PodmanPlatform(LocalFixableRequirement):
56
56
 
57
57
  @property
58
58
  def fix_cmd(self):
59
- host_os = self.host.os_type()
59
+ host_os = self.host.os_type
60
60
  if host_os == "darwin":
61
61
  return ["brew", "install", "podman"]
62
62
  return ["sudo", host.package_manager(), "install", "-y", "podman"]
@@ -164,7 +164,7 @@ class PodmanVersion(Requirement):
164
164
  class PodmanRuntime(Requirement):
165
165
  @property
166
166
  def fix_cmd(self):
167
- if self.host.os_type() != "darwin":
167
+ if self.host.os_type != "darwin":
168
168
  return ["sudo", self.host.package_manager(), "install", "-y", "crun"]
169
169
  return []
170
170
 
@@ -214,7 +214,7 @@ class PodmanDNSPlugin(FixableRequirement):
214
214
 
215
215
  @property
216
216
  def dns_plugin_path(self):
217
- os_type = self.host.os_type()
217
+ os_type = self.host.os_type
218
218
  if os_type in ["ubuntu", "debian"]:
219
219
  return "/usr/lib/cni/dnsname"
220
220
  return "/usr/libexec/cni/dnsname"
@@ -225,7 +225,7 @@ class PodmanDNSPlugin(FixableRequirement):
225
225
 
226
226
  @property
227
227
  def fix_cmd(self):
228
- os_type = self.host.os_type()
228
+ os_type = self.host.os_type
229
229
  if os_type == "centos":
230
230
  return ["sudo", "dnf", "install", "-y", self.dns_plugin_path]
231
231
  elif os_type in ["ubuntu", "debian"]:
@@ -261,7 +261,7 @@ class AppArmorProfile(FixableRequirement):
261
261
  async def check_requirements():
262
262
  if not await PodmanPlatform().evaluate():
263
263
  return False
264
- if local_host.os_type() == "darwin":
264
+ if local_host.os_type == "darwin":
265
265
  if not await PodmanMachinePresent().evaluate():
266
266
  return False
267
267
  if not await PodmanMachineRunning().evaluate():
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ceph-devstack
3
- Version: 0.2.0
3
+ Version: 0.2.1
4
4
  Summary: Run a full teuthology lab on your laptop!
5
5
  Author-email: Zack Cerza <zack@cerza.org>
6
6
  License-Expression: MIT
@@ -5,10 +5,10 @@ ceph_devstack/ceph_devstack.te,sha256=68i9sBb1TAEnCJn2JtyM-ECzPSuZck4vKoymcTbptX
5
5
  ceph_devstack/cli.py,sha256=lSYwXrwfP8D-k60XuwSqhwZSZNKJFFQfvRM-av1rePM,2057
6
6
  ceph_devstack/config.toml,sha256=HsxO3FhwZkHomde69QfElztuN8U1bxk7cQk1_iWB4w0,562
7
7
  ceph_devstack/exec.py,sha256=gn95GEQttB6xgdWXXvTsxUxcQsx9TUu6PC8QVQ0_Y7w,2674
8
- ceph_devstack/host.py,sha256=IRLhQaE_jl4VyHLArkqGzYWi3mxT8_sCG6Y7iDol4vU,5456
8
+ ceph_devstack/host.py,sha256=w_Hx912y1g62yXkTuPJsw_UdUwxJr_Pbxrj8iZtEP7Y,5470
9
9
  ceph_devstack/logging.conf,sha256=bGlswYcL_fz522y9EoKZOLInrSss8D44glNq0FievFY,521
10
10
  ceph_devstack/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- ceph_devstack/requirements.py,sha256=7Ashf6qfXW1k-L1Gakj5_Q-fPOBEhMQWnh0hIvtUjh0,9980
11
+ ceph_devstack/requirements.py,sha256=tQIk4TVl-1s5vOBgt5oML6Zk9-ZRtPLzAQ3foBdQpMk,9970
12
12
  ceph_devstack/resources/__init__.py,sha256=D0vhJBU9Pqslq7hg2qreW_ZhndcRIOHZVVUA0zAIeDM,3386
13
13
  ceph_devstack/resources/container.py,sha256=suJNOQ9fMRfCnXQwvEZOcg4jnPtrxb-d17a3Y1s1xG0,5388
14
14
  ceph_devstack/resources/misc.py,sha256=iGD_3Xsqako-dOZrHJFEJbMWoQIzy7Q_KkEnkdBb8m0,552
@@ -17,13 +17,13 @@ ceph_devstack/resources/ceph/containers.py,sha256=3QEwkh3I7f3r47SnlnMB-_mU8fYGR0
17
17
  ceph_devstack/resources/ceph/exceptions.py,sha256=C4ldyEA7Cukp-QUOwL-MnQ8kpgMDIQ6r_JQe0E9q4eM,101
18
18
  ceph_devstack/resources/ceph/requirements.py,sha256=ZJt7Eeb5y2bOc7dJN3-15ftAyySi80phD7erBsGdqSU,2691
19
19
  ceph_devstack/resources/ceph/utils.py,sha256=6-1sageEiLMcx53KHo_GKlIjaGw3swoZk8cQ-e-tDP0,1276
20
- ceph_devstack-0.2.0.dist-info/licenses/LICENSE,sha256=bFeYufyeS1qw0W8pkW1Wj09F2itqX7TAGTnA2NIpApU,1067
20
+ ceph_devstack-0.2.1.dist-info/licenses/LICENSE,sha256=bFeYufyeS1qw0W8pkW1Wj09F2itqX7TAGTnA2NIpApU,1067
21
21
  tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22
22
  tests/conftest.py,sha256=qulfsMZz3PyAFMdWQ_VWpOFT9L_BiavRax_yQF2Ne24,128
23
23
  tests/test_config.py,sha256=RLAjt9DAcAo8GQXgv9dc3Ka3hhtongMs6ioz5YQwKhY,4394
24
24
  tests/test_deep_merge.py,sha256=IP9zzCThmhVghl9XjAAiSrKsPdouH3KbEUaKq8n3Soc,2178
25
25
  tests/test_parse_args.py,sha256=2JDAT4Id88Ywl5QmiUHqq5IDGm_j5Yl3Kk7pbl3sOEk,7550
26
- tests/test_requirements_core.py,sha256=t7dE53E6N3owO1aHd0nLjXGZ9WDGFFUNIQKZQd1jJBY,19985
26
+ tests/test_requirements_core.py,sha256=MnhENRBFQkhIYD9sI1HBYBEocqiDBChRw7bOuSI-kPk,20089
27
27
  tests/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
28
  tests/resources/test_container.py,sha256=Xc4IGLf0PViSBIhUQXZHZQtRc-uI2R3PyNjU8lpX6BE,9081
29
29
  tests/resources/test_misc.py,sha256=dtOAPngMCTE9bYuYjNuxBiRaxvEibXuBq5VwVsWBdnY,1560
@@ -37,8 +37,8 @@ tests/resources/ceph/test_ssh_keypair.py,sha256=M8Tc1CY9zb_1WaccMSfnSN35tyjR-Cbl
37
37
  tests/resources/ceph/test_testnode.py,sha256=wiftdOU058z9IKp5LeUNlv81U9XjojRUI0fYt8mrbgg,1253
38
38
  tests/resources/ceph/fixtures/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
39
39
  tests/resources/ceph/fixtures/testnode-config.toml,sha256=XaI4VACYHeshb7LLxN3viKBNxOBLOUpPuwlcQJyQO-U,44
40
- ceph_devstack-0.2.0.dist-info/METADATA,sha256=6QrXrp1vvd4eAAtp8rmKlzPnh6FdyBD9HLBPW-thmjI,6877
41
- ceph_devstack-0.2.0.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
42
- ceph_devstack-0.2.0.dist-info/entry_points.txt,sha256=3cXOGOSb23ATcOZVQFBTY_imM4VFgFddXlYi-m8PA10,57
43
- ceph_devstack-0.2.0.dist-info/top_level.txt,sha256=NzTr-vAk2OWL08T8PsmfqkJZNEuezF5oaiHCMJBhHPM,20
44
- ceph_devstack-0.2.0.dist-info/RECORD,,
40
+ ceph_devstack-0.2.1.dist-info/METADATA,sha256=0sxnNB5VBwU61eY7AlPi14s0LrsR6qUWGzblLEus7uA,6877
41
+ ceph_devstack-0.2.1.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
42
+ ceph_devstack-0.2.1.dist-info/entry_points.txt,sha256=3cXOGOSb23ATcOZVQFBTY_imM4VFgFddXlYi-m8PA10,57
43
+ ceph_devstack-0.2.1.dist-info/top_level.txt,sha256=NzTr-vAk2OWL08T8PsmfqkJZNEuezF5oaiHCMJBhHPM,20
44
+ ceph_devstack-0.2.1.dist-info/RECORD,,
@@ -1,7 +1,7 @@
1
1
  import asyncio
2
2
  import pytest
3
3
  from packaging.version import parse as parse_version
4
- from unittest.mock import AsyncMock, MagicMock, patch
4
+ from unittest.mock import AsyncMock, MagicMock, patch, PropertyMock
5
5
 
6
6
 
7
7
  from ceph_devstack import config, requirements
@@ -303,7 +303,10 @@ class TestPodmanDNSPluginInit:
303
303
  return "/usr/lib/cni/dnsname"
304
304
 
305
305
  def test_podman_dns_plugin_config(self, cls, os_type, dns_plugin_path):
306
- with patch.object(cls.host, "os_type", return_value=os_type):
306
+ with patch(
307
+ "ceph_devstack.host.Host.os_type", new_callable=PropertyMock
308
+ ) as MockHost:
309
+ MockHost.return_value = os_type
307
310
  req = cls()
308
311
  assert req.check_cmd == ["test", "-x", dns_plugin_path]
309
312