vxcloud 0.1.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.
@@ -0,0 +1,69 @@
1
+ Metadata-Version: 2.4
2
+ Name: vxcloud
3
+ Version: 0.1.0
4
+ Summary: Brand-name alias for the `vxsdk` Python SDK — `import vxcloud` is identical to `import vxsdk`.
5
+ Author-email: vxcloud <engineering@vxcloud.io>
6
+ License: Apache-2.0
7
+ Project-URL: Homepage, https://vxcloud.io
8
+ Project-URL: Documentation, https://vxcloud.io/docs/sdks
9
+ Project-URL: Repository, https://github.com/vxcloud/platform
10
+ Project-URL: Issues, https://github.com/vxcloud/platform/issues
11
+ Project-URL: Changelog, https://github.com/vxcloud/platform/blob/main/services/sdk/python-vxcloud/CHANGELOG.md
12
+ Keywords: vxcloud,vxsdk,vxcli,infrastructure,iac,deploy,ssh,docker,kubernetes,ai-agents
13
+ Classifier: Development Status :: 4 - Beta
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Intended Audience :: System Administrators
16
+ Classifier: License :: OSI Approved :: Apache Software License
17
+ Classifier: Operating System :: OS Independent
18
+ Classifier: Programming Language :: Python :: 3
19
+ Classifier: Programming Language :: Python :: 3.9
20
+ Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
24
+ Classifier: Topic :: System :: Systems Administration
25
+ Requires-Python: >=3.9
26
+ Description-Content-Type: text/markdown
27
+ Requires-Dist: vxsdk==0.1.0
28
+ Provides-Extra: async
29
+ Requires-Dist: vxsdk[async]==0.1.0; extra == "async"
30
+ Requires-Dist: httpx>=0.25; extra == "async"
31
+ Provides-Extra: dev
32
+ Requires-Dist: pytest>=7; extra == "dev"
33
+ Requires-Dist: pytest-asyncio>=0.21; extra == "dev"
34
+ Requires-Dist: httpx>=0.25; extra == "dev"
35
+ Requires-Dist: build>=1.0; extra == "dev"
36
+ Requires-Dist: twine>=4.0; extra == "dev"
37
+
38
+ # vxcloud (Python)
39
+
40
+ Brand-name alias for the [`vxsdk`](https://pypi.org/project/vxsdk/) Python SDK.
41
+ This package re-exports everything from `vxsdk` so you can reach the same
42
+ surface under the brand name.
43
+
44
+ ```bash
45
+ pip install vxcloud # sync, stdlib-only
46
+ pip install vxcloud[async] # adds httpx + vxsdk_async re-export
47
+ ```
48
+
49
+ ```python
50
+ import vxcloud
51
+
52
+ c = vxcloud.Client.load_from_vxcli() # canonical
53
+ c = vxcloud.VxCloud.load_from_vxcli() # PascalCase brand (matches TS SDK)
54
+ c = vxcloud.vxcloud.load_from_vxcli() # lowercase brand
55
+ c = vxcloud.load_from_vxcli() # module-level convenience
56
+
57
+ vm = c.cloud.create_vm(
58
+ name="api-vm", cloud="aws", region="us-east-1",
59
+ instance_type="t3.small", key_pair_name="AWSPRODKEY2",
60
+ )
61
+ ```
62
+
63
+ All four entry styles return the same `vxsdk.Client` instance. There is no
64
+ behavior difference between `import vxcloud` and `import vxsdk` — pick the
65
+ name you and your team prefer.
66
+
67
+ The `vxcloud` release version is pinned to the matching `vxsdk` release; see
68
+ [CHANGELOG.md](./CHANGELOG.md). For the full SDK reference, see the upstream
69
+ [`vxsdk` README](https://github.com/vxcloud/platform/blob/main/services/sdk/python/README.md).
@@ -0,0 +1,6 @@
1
+ vxcloud.py,sha256=4-1aLCYZxtEMzn3F1pz2h8h_FBW02N0F-Fc5_Drhmz8,2051
2
+ vxcloud_async.py,sha256=STKfV9mBox7eVm4ZHJDFBxujilVBCYAOrM3ADNpIdrI,699
3
+ vxcloud-0.1.0.dist-info/METADATA,sha256=mGwsIvLh5FyenVEAnNpDFLd2Re1hdm3gQFSFSNFwlcI,2996
4
+ vxcloud-0.1.0.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
5
+ vxcloud-0.1.0.dist-info/top_level.txt,sha256=PBirw2wZ8ouJA7tPXPrbZLbXUXMU4hQvonIg7g2d7y0,22
6
+ vxcloud-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (82.0.1)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ vxcloud
2
+ vxcloud_async
vxcloud.py ADDED
@@ -0,0 +1,54 @@
1
+ """
2
+ vxcloud — brand-name alias for the `vxsdk` Python SDK.
3
+
4
+ This module is a pure re-export of `vxsdk`. Every public name available
5
+ as `vxsdk.X` is also available as `vxcloud.X`, including the entry-point
6
+ class and its lowercase / PascalCase brand aliases:
7
+
8
+ import vxcloud
9
+ c = vxcloud.Client.load_from_vxcli() # canonical
10
+ c = vxcloud.VxCloud.load_from_vxcli() # PascalCase brand
11
+ c = vxcloud.vxcloud.load_from_vxcli() # lowercase brand
12
+ c = vxcloud.load_from_vxcli() # module-level convenience
13
+
14
+ There is no logic here — `pip install vxcloud` pulls in the pinned
15
+ `vxsdk` release, and this file forwards everything to it. If you want
16
+ the async client, install with the extra:
17
+
18
+ pip install vxcloud[async]
19
+ import vxcloud_async
20
+ async with await vxcloud_async.AsyncClient.load_from_vxcli() as c: ...
21
+ """
22
+
23
+ from __future__ import annotations
24
+
25
+ # Star-import re-exports every public name from vxsdk: Client, VxCloud,
26
+ # vxcloud, all VxError subclasses, all resource classes, version, etc.
27
+ # Per https://docs.python.org/3/reference/simple_stmts.html#the-import-statement
28
+ # this honors vxsdk's `__all__` if defined, otherwise all non-underscore names.
29
+ from vxsdk import * # noqa: F401,F403
30
+
31
+ # vxsdk does not define __all__, so star-import already covers everything,
32
+ # but we explicitly re-export the entry class names so static analyzers
33
+ # (mypy, pyright) see them on the `vxcloud` module surface.
34
+ from vxsdk import ( # noqa: F401
35
+ Client,
36
+ VxCloud,
37
+ vxcloud,
38
+ VxError,
39
+ VxAuthError,
40
+ VxValidationError,
41
+ VxNotFoundError,
42
+ VxRateLimitError,
43
+ VxServerError,
44
+ VxNetworkError,
45
+ __version__ as _vxsdk_version,
46
+ )
47
+
48
+ # Module-level convenience: `vxcloud.load_from_vxcli()` mirrors the way
49
+ # `vxsdk.Client.load_from_vxcli()` reads `~/.vxcloud/credentials.json`.
50
+ load_from_vxcli = Client.load_from_vxcli
51
+
52
+ # Track the underlying vxsdk pin for diagnostics. The vxcloud shim version
53
+ # is set in pyproject.toml; this exposes the upstream vxsdk version too.
54
+ __vxsdk_version__ = _vxsdk_version
vxcloud_async.py ADDED
@@ -0,0 +1,27 @@
1
+ """
2
+ vxcloud_async — brand-name alias for the `vxsdk_async` Python SDK.
3
+
4
+ Pure re-export of `vxsdk_async`. Installed automatically when you do:
5
+
6
+ pip install vxcloud[async]
7
+
8
+ Usage mirrors vxsdk_async exactly:
9
+
10
+ import vxcloud_async
11
+ async with await vxcloud_async.AsyncClient.load_from_vxcli() as c:
12
+ sess = await c.deploy.fastapi(...)
13
+
14
+ # Or via the brand aliases:
15
+ async with await vxcloud_async.VxCloud.load_from_vxcli() as c: ...
16
+ async with await vxcloud_async.vxcloud.load_from_vxcli() as c: ...
17
+ """
18
+
19
+ from __future__ import annotations
20
+
21
+ from vxsdk_async import * # noqa: F401,F403
22
+
23
+ from vxsdk_async import ( # noqa: F401
24
+ AsyncClient,
25
+ VxCloud,
26
+ vxcloud,
27
+ )