cloudconsolelink 3.0.0__tar.gz → 3.0.2__tar.gz

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.
Files changed (29) hide show
  1. cloudconsolelink-3.0.2/MANIFEST.in +3 -0
  2. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/PKG-INFO +1 -1
  3. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/__init__.py +1 -1
  4. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink.egg-info/PKG-INFO +1 -1
  5. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink.egg-info/SOURCES.txt +4 -0
  6. cloudconsolelink-3.0.2/requirements-dev.txt +7 -0
  7. cloudconsolelink-3.0.2/requirements.txt +3 -0
  8. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/setup.py +9 -4
  9. cloudconsolelink-3.0.2/tests/test_packaging.py +41 -0
  10. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/LICENSE +0 -0
  11. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/README.md +0 -0
  12. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/clouds/__init__.py +0 -0
  13. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/clouds/aws/__init__.py +0 -0
  14. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/clouds/aws/errors.py +0 -0
  15. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/clouds/aws/links.py +0 -0
  16. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/clouds/azure/__init__.py +0 -0
  17. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/clouds/gcp/__init__.py +0 -0
  18. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/clouds/gcp/links.py +0 -0
  19. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/clouds/oci/__init__.py +0 -0
  20. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink/clouds/oci/links.py +0 -0
  21. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink.egg-info/dependency_links.txt +0 -0
  22. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink.egg-info/requires.txt +0 -0
  23. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/cloudconsolelink.egg-info/top_level.txt +0 -0
  24. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/setup.cfg +0 -0
  25. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/tests/test_aws.py +0 -0
  26. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/tests/test_azure.py +0 -0
  27. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/tests/test_gcp.py +0 -0
  28. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/tests/test_oci.py +0 -0
  29. {cloudconsolelink-3.0.0 → cloudconsolelink-3.0.2}/tests/test_provider_coverage.py +0 -0
@@ -0,0 +1,3 @@
1
+ include README.md
2
+ include requirements.txt
3
+ include requirements-dev.txt
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cloudconsolelink
3
- Version: 3.0.0
3
+ Version: 3.0.2
4
4
  Summary: Generate console links for cloud resources
5
5
  Home-page: https://github.com/Cloudanix/cloud-console-links
6
6
  Maintainer: Cloudanix
@@ -1,2 +1,2 @@
1
1
  # version of the module
2
- __version__ = "3.0.0"
2
+ __version__ = "3.0.2"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cloudconsolelink
3
- Version: 3.0.0
3
+ Version: 3.0.2
4
4
  Summary: Generate console links for cloud resources
5
5
  Home-page: https://github.com/Cloudanix/cloud-console-links
6
6
  Maintainer: Cloudanix
@@ -1,5 +1,8 @@
1
1
  LICENSE
2
+ MANIFEST.in
2
3
  README.md
4
+ requirements-dev.txt
5
+ requirements.txt
3
6
  setup.cfg
4
7
  setup.py
5
8
  cloudconsolelink/__init__.py
@@ -21,4 +24,5 @@ tests/test_aws.py
21
24
  tests/test_azure.py
22
25
  tests/test_gcp.py
23
26
  tests/test_oci.py
27
+ tests/test_packaging.py
24
28
  tests/test_provider_coverage.py
@@ -0,0 +1,7 @@
1
+ pre-commit~=4.2
2
+ pytest~=8.3
3
+ pytest-cov==2.11
4
+ pytest-mock~=3.14
5
+
6
+ types-PyYAML~=6.0
7
+ types-requests~=2.32
@@ -0,0 +1,3 @@
1
+ .
2
+ # Install the local checkout for source-based workflows like `uv pip install -r requirements.txt`.
3
+ # setup.py filters this bootstrap entry out of published package metadata.
@@ -6,15 +6,20 @@ import setuptools
6
6
  ROOT = Path(__file__).parent
7
7
 
8
8
 
9
- def read_text(path: str) -> str:
10
- return (ROOT / path).read_text(encoding="utf-8")
9
+ def read_text(path: str, *, required: bool = True) -> str:
10
+ file_path = ROOT / path
11
+ if not file_path.exists():
12
+ if required:
13
+ raise FileNotFoundError(file_path)
14
+ return ""
15
+ return file_path.read_text(encoding="utf-8")
11
16
 
12
17
 
13
18
  def read_requirements(path: str) -> list[str]:
14
19
  lines = []
15
- for line in read_text(path).splitlines():
20
+ for line in read_text(path, required=False).splitlines():
16
21
  requirement = line.strip()
17
- if requirement and not requirement.startswith("#"):
22
+ if requirement and not requirement.startswith("#") and requirement not in {".", "-e ."}:
18
23
  lines.append(requirement)
19
24
  return lines
20
25
 
@@ -0,0 +1,41 @@
1
+ import subprocess
2
+ import sys
3
+ import tarfile
4
+ from pathlib import Path
5
+
6
+
7
+ REPO_ROOT = Path(__file__).resolve().parents[1]
8
+
9
+
10
+ def test_sdist_includes_requirement_files(tmp_path):
11
+ subprocess.run(
12
+ [sys.executable, "setup.py", "sdist", "--dist-dir", str(tmp_path)],
13
+ cwd=REPO_ROOT,
14
+ check=True,
15
+ capture_output=True,
16
+ text=True,
17
+ )
18
+
19
+ archive_path = next(tmp_path.glob("cloudconsolelink-*.tar.gz"))
20
+ with tarfile.open(archive_path, "r:gz") as archive:
21
+ archive_names = set(archive.getnames())
22
+
23
+ archive_root = archive_path.name.removesuffix(".tar.gz")
24
+ assert f"{archive_root}/requirements.txt" in archive_names
25
+ assert f"{archive_root}/requirements-dev.txt" in archive_names
26
+
27
+
28
+ def test_egg_info_excludes_local_bootstrap_requirement(tmp_path):
29
+ subprocess.run(
30
+ [sys.executable, "setup.py", "egg_info"],
31
+ cwd=REPO_ROOT,
32
+ check=True,
33
+ capture_output=True,
34
+ text=True,
35
+ )
36
+
37
+ requires_path = REPO_ROOT / "cloudconsolelink.egg-info" / "requires.txt"
38
+ requires_text = requires_path.read_text(encoding="utf-8")
39
+
40
+ assert "." not in requires_text.splitlines()
41
+ assert "-e ." not in requires_text