primitive 0.1.80__tar.gz → 0.1.82__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 (106) hide show
  1. {primitive-0.1.80 → primitive-0.1.82}/PKG-INFO +1 -1
  2. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/__about__.py +1 -1
  3. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/git/actions.py +26 -9
  4. {primitive-0.1.80 → primitive-0.1.82}/.git-hooks/pre-commit +0 -0
  5. {primitive-0.1.80 → primitive-0.1.82}/.gitattributes +0 -0
  6. {primitive-0.1.80 → primitive-0.1.82}/.github/workflows/lint.yml +0 -0
  7. {primitive-0.1.80 → primitive-0.1.82}/.github/workflows/publish.yml +0 -0
  8. {primitive-0.1.80 → primitive-0.1.82}/.gitignore +0 -0
  9. {primitive-0.1.80 → primitive-0.1.82}/.vscode/settings.json +0 -0
  10. {primitive-0.1.80 → primitive-0.1.82}/LICENSE.txt +0 -0
  11. {primitive-0.1.80 → primitive-0.1.82}/Makefile +0 -0
  12. {primitive-0.1.80 → primitive-0.1.82}/README.md +0 -0
  13. {primitive-0.1.80 → primitive-0.1.82}/linux setup.md +0 -0
  14. {primitive-0.1.80 → primitive-0.1.82}/pyproject.toml +0 -0
  15. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/__init__.py +0 -0
  16. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/agent/__init__.py +0 -0
  17. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/agent/actions.py +0 -0
  18. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/agent/commands.py +0 -0
  19. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/agent/process.py +0 -0
  20. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/agent/provision.py +0 -0
  21. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/agent/runner.py +0 -0
  22. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/agent/uploader.py +0 -0
  23. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/auth/__init__.py +0 -0
  24. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/auth/actions.py +0 -0
  25. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/auth/commands.py +0 -0
  26. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/auth/graphql/__init__.py +0 -0
  27. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/auth/graphql/queries.py +0 -0
  28. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/cli.py +0 -0
  29. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/client.py +0 -0
  30. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/daemons/__init__.py +0 -0
  31. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/daemons/actions.py +0 -0
  32. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/daemons/commands.py +0 -0
  33. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/daemons/launch_agents.py +0 -0
  34. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/daemons/launch_service.py +0 -0
  35. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/exec/__init__.py +0 -0
  36. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/exec/actions.py +0 -0
  37. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/exec/commands.py +0 -0
  38. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/exec/interactive.py +0 -0
  39. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/files/__init__.py +0 -0
  40. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/files/actions.py +0 -0
  41. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/files/commands.py +0 -0
  42. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/files/graphql/__init__.py +0 -0
  43. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/files/graphql/fragments.py +0 -0
  44. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/files/graphql/mutations.py +0 -0
  45. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/files/graphql/queries.py +0 -0
  46. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/git/__init__.py +0 -0
  47. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/git/commands.py +0 -0
  48. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/git/graphql/__init__.py +0 -0
  49. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/git/graphql/queries.py +0 -0
  50. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/graphql/__init__.py +0 -0
  51. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/graphql/relay.py +0 -0
  52. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/graphql/sdk.py +0 -0
  53. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/graphql/utility_fragments.py +0 -0
  54. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/hardware/__init__.py +0 -0
  55. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/hardware/actions.py +0 -0
  56. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/hardware/commands.py +0 -0
  57. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/hardware/graphql/__init__.py +0 -0
  58. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/hardware/graphql/fragments.py +0 -0
  59. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/hardware/graphql/mutations.py +0 -0
  60. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/hardware/graphql/queries.py +0 -0
  61. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/jobs/__init__.py +0 -0
  62. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/jobs/actions.py +0 -0
  63. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/jobs/commands.py +0 -0
  64. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/jobs/graphql/__init__.py +0 -0
  65. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/jobs/graphql/fragments.py +0 -0
  66. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/jobs/graphql/mutations.py +0 -0
  67. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/jobs/graphql/queries.py +0 -0
  68. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/organizations/__init__.py +0 -0
  69. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/organizations/actions.py +0 -0
  70. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/organizations/commands.py +0 -0
  71. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/organizations/graphql/__init__.py +0 -0
  72. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/organizations/graphql/fragments.py +0 -0
  73. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/organizations/graphql/mutations.py +0 -0
  74. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/organizations/graphql/queries.py +0 -0
  75. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/projects/__init__.py +0 -0
  76. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/projects/actions.py +0 -0
  77. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/projects/commands.py +0 -0
  78. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/projects/graphql/__init__.py +0 -0
  79. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/projects/graphql/fragments.py +0 -0
  80. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/projects/graphql/mutations.py +0 -0
  81. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/projects/graphql/queries.py +0 -0
  82. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/provisioning/__init__.py +0 -0
  83. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/provisioning/actions.py +0 -0
  84. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/provisioning/graphql/__init__.py +0 -0
  85. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/provisioning/graphql/queries.py +0 -0
  86. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/reservations/__init__.py +0 -0
  87. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/reservations/actions.py +0 -0
  88. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/reservations/commands.py +0 -0
  89. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/reservations/graphql/__init__.py +0 -0
  90. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/reservations/graphql/fragments.py +0 -0
  91. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/reservations/graphql/mutations.py +0 -0
  92. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/reservations/graphql/queries.py +0 -0
  93. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/__init__.py +0 -0
  94. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/actions.py +0 -0
  95. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/auth.py +0 -0
  96. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/cache.py +0 -0
  97. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/chunk_size.py +0 -0
  98. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/config.py +0 -0
  99. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/files.py +0 -0
  100. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/git.py +0 -0
  101. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/memory_size.py +0 -0
  102. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/printer.py +0 -0
  103. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/shell.py +0 -0
  104. {primitive-0.1.80 → primitive-0.1.82}/src/primitive/utils/verible.py +0 -0
  105. {primitive-0.1.80 → primitive-0.1.82}/tests/__init__.py +0 -0
  106. {primitive-0.1.80 → primitive-0.1.82}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: primitive
3
- Version: 0.1.80
3
+ Version: 0.1.82
4
4
  Project-URL: Documentation, https://github.com//primitivecorp/primitive-cli#readme
5
5
  Project-URL: Issues, https://github.com//primitivecorp/primitive-cli/issues
6
6
  Project-URL: Source, https://github.com//primitivecorp/primitive-cli
@@ -1,4 +1,4 @@
1
1
  # SPDX-FileCopyrightText: 2024-present Dylan Stein <dylan@primitive.tech>
2
2
  #
3
3
  # SPDX-License-Identifier: MIT
4
- __version__ = "0.1.80"
4
+ __version__ = "0.1.82"
@@ -1,5 +1,5 @@
1
- import os
2
1
  from pathlib import Path
2
+ from subprocess import run, CalledProcessError, DEVNULL
3
3
 
4
4
  from gql import gql
5
5
  from loguru import logger
@@ -31,14 +31,31 @@ class Git(BaseAction):
31
31
  destination: Path = Path.cwd(),
32
32
  ) -> Path:
33
33
  logger.debug(f"Downloading source code from {git_repo_full_name} {git_ref}")
34
- # TODO: switch to subprocess.run or subprocess.Popen
35
- url = f"https://api.github.com/repos/{git_repo_full_name}/tarball/{git_ref}"
36
- untar_dir = Path(destination).joinpath(git_repo_full_name.split("/")[-1])
37
- untar_dir.mkdir(parents=True, exist_ok=True)
38
34
 
39
- result = os.system(
40
- f"curl -s -L -H 'Accept: application/vnd.github+json' -H 'Authorization: Bearer {github_access_token}' -H 'X-GitHub-Api-Version: 2022-11-28' {url} | tar zx --strip-components 1 -C {untar_dir}"
35
+ url = (
36
+ f"https://oauth2:{github_access_token}@github.com/{git_repo_full_name}.git"
41
37
  )
42
- if result != 0:
38
+ source_dir = Path(destination).joinpath(git_repo_full_name.split("/")[-1])
39
+
40
+ try:
41
+ run(
42
+ ["git", "clone", url, source_dir, "--recursive"],
43
+ check=True,
44
+ stdout=DEVNULL,
45
+ stderr=DEVNULL,
46
+ )
47
+ except CalledProcessError:
43
48
  raise Exception("Failed to download repository")
44
- return untar_dir
49
+
50
+ try:
51
+ run(
52
+ ["git", "checkout", git_ref],
53
+ check=True,
54
+ cwd=source_dir,
55
+ stdout=DEVNULL,
56
+ stderr=DEVNULL,
57
+ )
58
+ except CalledProcessError:
59
+ raise Exception("Failed to checkout ref")
60
+
61
+ return source_dir
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes