twc-cli 2.13.1__py3-none-any.whl → 2.14.0__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.

Potentially problematic release.


This version of twc-cli might be problematic. Click here for more details.

twc/__version__.py CHANGED
@@ -12,5 +12,5 @@
12
12
  import sys
13
13
 
14
14
 
15
- __version__ = "2.13.1"
15
+ __version__ = "2.14.0"
16
16
  __pyversion__ = sys.version.replace("\n", "")
twc/commands/server.py CHANGED
@@ -1270,7 +1270,10 @@ def server_list_presets(
1270
1270
  ):
1271
1271
  """List configuration presets."""
1272
1272
  if region:
1273
- filters = f"{filters},location:{region}"
1273
+ if filters:
1274
+ filters = f"{filters},location:{region.value}"
1275
+ else:
1276
+ filters = f"location:{region.value}"
1274
1277
  client = create_client(config, profile)
1275
1278
  response = client.get_server_presets()
1276
1279
  fmt.printer(
@@ -1281,6 +1284,72 @@ def server_list_presets(
1281
1284
  )
1282
1285
 
1283
1286
 
1287
+ # ------------------------------------------------------------- #
1288
+ # $ twc server list-configurators #
1289
+ # ------------------------------------------------------------- #
1290
+
1291
+
1292
+ def _print_configurators(response: Response, filters: Optional[str] = None):
1293
+ confs = response.json()["server_configurators"]
1294
+ if filters:
1295
+ confs = fmt.filter_list(confs, filters)
1296
+ table = fmt.Table()
1297
+ table.header(
1298
+ [
1299
+ "ID",
1300
+ "REGION",
1301
+ "TYPE",
1302
+ "CPU(MIN/MAX)",
1303
+ "RAM(MIN/MAX)",
1304
+ "DISK(MIN/MAX)",
1305
+ "BW(MIN/MAX)",
1306
+ ]
1307
+ )
1308
+ for conf in confs:
1309
+ table.row(
1310
+ [
1311
+ conf["id"],
1312
+ conf["location"],
1313
+ conf["disk_type"],
1314
+ f"{conf['requirements']['cpu_min']}/{conf['requirements']['cpu_max']}",
1315
+ f"{conf['requirements']['ram_min']}/{conf['requirements']['ram_max']}",
1316
+ f"{conf['requirements']['disk_min']}/{conf['requirements']['disk_max']}",
1317
+ (
1318
+ f"{conf['requirements']['network_bandwidth_min']}/"
1319
+ f"{conf['requirements']['network_bandwidth_max']}"
1320
+ ),
1321
+ ]
1322
+ )
1323
+ table.print()
1324
+
1325
+
1326
+ @server.command("list-configurators", "lc")
1327
+ def server_list_configurators(
1328
+ verbose: Optional[bool] = verbose_option,
1329
+ config: Optional[Path] = config_option,
1330
+ profile: Optional[str] = profile_option,
1331
+ output_format: Optional[str] = output_format_option,
1332
+ filters: Optional[str] = filter_option,
1333
+ region: Optional[ServiceRegion] = typer.Option(
1334
+ None, help="Use region (location)."
1335
+ ),
1336
+ ):
1337
+ """List Cloud Server configurators (sets of configuration constraints)."""
1338
+ if region:
1339
+ if filters:
1340
+ filters = f"{filters},location:{region.value}"
1341
+ else:
1342
+ filters = f"location:{region.value}"
1343
+ client = create_client(config, profile)
1344
+ response = client.get_server_configurators()
1345
+ fmt.printer(
1346
+ response,
1347
+ output_format=output_format,
1348
+ filters=filters,
1349
+ func=_print_configurators,
1350
+ )
1351
+
1352
+
1284
1353
  # ------------------------------------------------------------- #
1285
1354
  # $ twc server list-os-images #
1286
1355
  # ------------------------------------------------------------- #
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: twc-cli
3
- Version: 2.13.1
3
+ Version: 2.14.0
4
4
  Summary: Timeweb Cloud Command Line Interface.
5
5
  License: MIT
6
6
  Author: ge
@@ -13,6 +13,7 @@ Classifier: Programming Language :: Python :: 3.10
13
13
  Classifier: Programming Language :: Python :: 3.11
14
14
  Classifier: Programming Language :: Python :: 3.12
15
15
  Classifier: Programming Language :: Python :: 3.13
16
+ Requires-Dist: click (<8.2.0)
16
17
  Requires-Dist: colorama (>=0.4.6,<0.5.0)
17
18
  Requires-Dist: pygments (>=2.18.0,<3.0.0)
18
19
  Requires-Dist: pyyaml (>=6.0.1,<7.0.0)
@@ -1,6 +1,6 @@
1
1
  twc/__init__.py,sha256=NwPAMNw3NuHdWGQvWS9_lromVF6VM194oVOipojfJns,113
2
2
  twc/__main__.py,sha256=lgyLdXuTDWQXmXkpGCxStOUBqYGQZEUdlj7IrhJeTdQ,2511
3
- twc/__version__.py,sha256=evAXrjBYk38lG40-qYWEj3ROyvoVptk8j2N3wKCk8bA,443
3
+ twc/__version__.py,sha256=LBerFLjL9QuMoiuKXb2EazclUbZFooobsTmpxbM42pA,443
4
4
  twc/api/__init__.py,sha256=SXew0Fe51M7nRBNQaaLRH4NjnRHkQUn7J26OCkQsftA,128
5
5
  twc/api/base.py,sha256=QRefnIgmlbz8n37GLBKeAK1AtzkcNo1IFjZgHDDECJ4,7912
6
6
  twc/api/client.py,sha256=AwnbD78CWv1gSVs4lYBDJ8s0-RRPV2SYOjaAaZlNREg,68129
@@ -20,7 +20,7 @@ twc/commands/floating_ip.py,sha256=G9nD5BbHCZcuytbzeneDJWQDhd8c8WRtq9pAfwI9m7E,8
20
20
  twc/commands/image.py,sha256=OviQwegXK55H3TBlroCASVcgj2QUVCTo0ZhF5ug9eT8,8165
21
21
  twc/commands/kubernetes.py,sha256=-Cgas1vFVMcrWGinjstuUz3sqX0ZNXv_4mwPwuwKeLE,20870
22
22
  twc/commands/project.py,sha256=xnL3kLIumKzrI9EZ6r6m-PGOl3mZ9IhLQua7WZ3Rghg,10499
23
- twc/commands/server.py,sha256=5yb_pdB5BOoj_UAWdMxiCtuGdRBgcllkStMqyRSlx9k,72315
23
+ twc/commands/server.py,sha256=tgXhH3vWzigtqdY5Fp6b2dg7_0k8m3LpLV6qw_mamjo,74570
24
24
  twc/commands/ssh_key.py,sha256=NHgTPhAQpDzt-iPHHVo4XqUJvujNqf019N6N9qYZ9Us,7941
25
25
  twc/commands/storage.py,sha256=u7R6L3vZr1YdAVUw-oENAbrkdci2dMb-7E1RkPK9KLg,19404
26
26
  twc/commands/vpc.py,sha256=SAht6UD17mU0d_AZY6W34VEYs7CqUsS2iDakPFxAFQU,8876
@@ -28,8 +28,8 @@ twc/fmt.py,sha256=nbuYZ8nVabYDwCmZqnL3-c6Tmri4B-R_sTCkG6sdfeI,7171
28
28
  twc/typerx.py,sha256=AZ6BgTQvlrZYfKVYd9YqRNQnAR2XuyqImz4rf6di6f4,6737
29
29
  twc/utils.py,sha256=uWizyUC4dHLwtk50q4Sub3zOvnVESfHKBbXYwk5t71w,651
30
30
  twc/vars.py,sha256=ljW52q6XwsbQqOBPGhs5rbZ5ZqVvQXdKqUt8mLhXRts,830
31
- twc_cli-2.13.1.dist-info/COPYING,sha256=fpJLxZS_kHr_659xkpmqEtqHeZp6lQR9CmKCwnYbsmE,1089
32
- twc_cli-2.13.1.dist-info/METADATA,sha256=PPztJyrHgCTiUdKnHtB59wRMQhfT8Y9larbe8onuS-g,2665
33
- twc_cli-2.13.1.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
34
- twc_cli-2.13.1.dist-info/entry_points.txt,sha256=tmTaVRhm8BkNrXC_9XJMum7O9wFVOvkXcBetxmahWvE,40
35
- twc_cli-2.13.1.dist-info/RECORD,,
31
+ twc_cli-2.14.0.dist-info/COPYING,sha256=fpJLxZS_kHr_659xkpmqEtqHeZp6lQR9CmKCwnYbsmE,1089
32
+ twc_cli-2.14.0.dist-info/METADATA,sha256=6l-ShG1UYpuuRqsefagOqdnPQZhTVNYf8u2CJmI6ybU,2695
33
+ twc_cli-2.14.0.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
34
+ twc_cli-2.14.0.dist-info/entry_points.txt,sha256=tmTaVRhm8BkNrXC_9XJMum7O9wFVOvkXcBetxmahWvE,40
35
+ twc_cli-2.14.0.dist-info/RECORD,,