primitive 0.2.44__tar.gz → 0.2.45__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 (113) hide show
  1. {primitive-0.2.44 → primitive-0.2.45}/PKG-INFO +1 -1
  2. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/__about__.py +1 -1
  3. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/agent/actions.py +12 -6
  4. {primitive-0.2.44 → primitive-0.2.45}/.git-hooks/pre-commit +0 -0
  5. {primitive-0.2.44 → primitive-0.2.45}/.gitattributes +0 -0
  6. {primitive-0.2.44 → primitive-0.2.45}/.github/workflows/lint.yml +0 -0
  7. {primitive-0.2.44 → primitive-0.2.45}/.github/workflows/publish.yml +0 -0
  8. {primitive-0.2.44 → primitive-0.2.45}/.github/workflows/pyright.yml +0 -0
  9. {primitive-0.2.44 → primitive-0.2.45}/.gitignore +0 -0
  10. {primitive-0.2.44 → primitive-0.2.45}/.vscode/extensions.json +0 -0
  11. {primitive-0.2.44 → primitive-0.2.45}/.vscode/settings.json +0 -0
  12. {primitive-0.2.44 → primitive-0.2.45}/LICENSE.txt +0 -0
  13. {primitive-0.2.44 → primitive-0.2.45}/Makefile +0 -0
  14. {primitive-0.2.44 → primitive-0.2.45}/README.md +0 -0
  15. {primitive-0.2.44 → primitive-0.2.45}/linux setup.md +0 -0
  16. {primitive-0.2.44 → primitive-0.2.45}/pyproject.toml +0 -0
  17. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/__init__.py +0 -0
  18. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/agent/__init__.py +0 -0
  19. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/agent/commands.py +0 -0
  20. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/agent/runner.py +0 -0
  21. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/agent/uploader.py +0 -0
  22. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/auth/__init__.py +0 -0
  23. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/auth/actions.py +0 -0
  24. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/auth/commands.py +0 -0
  25. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/auth/graphql/__init__.py +0 -0
  26. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/auth/graphql/queries.py +0 -0
  27. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/cli.py +0 -0
  28. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/client.py +0 -0
  29. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/daemons/__init__.py +0 -0
  30. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/daemons/actions.py +0 -0
  31. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/daemons/commands.py +0 -0
  32. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/daemons/launch_agents.py +0 -0
  33. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/daemons/launch_service.py +0 -0
  34. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/daemons/ui.py +0 -0
  35. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/exec/__init__.py +0 -0
  36. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/exec/actions.py +0 -0
  37. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/exec/commands.py +0 -0
  38. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/exec/interactive.py +0 -0
  39. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/files/__init__.py +0 -0
  40. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/files/actions.py +0 -0
  41. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/files/commands.py +0 -0
  42. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/files/graphql/__init__.py +0 -0
  43. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/files/graphql/fragments.py +0 -0
  44. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/files/graphql/mutations.py +0 -0
  45. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/files/graphql/queries.py +0 -0
  46. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/git/__init__.py +0 -0
  47. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/git/actions.py +0 -0
  48. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/git/commands.py +0 -0
  49. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/git/graphql/__init__.py +0 -0
  50. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/git/graphql/queries.py +0 -0
  51. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/graphql/__init__.py +0 -0
  52. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/graphql/relay.py +0 -0
  53. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/graphql/sdk.py +0 -0
  54. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/graphql/utility_fragments.py +0 -0
  55. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/hardware/__init__.py +0 -0
  56. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/hardware/actions.py +0 -0
  57. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/hardware/android.py +0 -0
  58. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/hardware/commands.py +0 -0
  59. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/hardware/graphql/__init__.py +0 -0
  60. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/hardware/graphql/fragments.py +0 -0
  61. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/hardware/graphql/mutations.py +0 -0
  62. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/hardware/graphql/queries.py +0 -0
  63. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/hardware/ui.py +0 -0
  64. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/jobs/__init__.py +0 -0
  65. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/jobs/actions.py +0 -0
  66. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/jobs/commands.py +0 -0
  67. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/jobs/graphql/__init__.py +0 -0
  68. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/jobs/graphql/fragments.py +0 -0
  69. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/jobs/graphql/mutations.py +0 -0
  70. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/jobs/graphql/queries.py +0 -0
  71. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/monitor/actions.py +0 -0
  72. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/monitor/commands.py +0 -0
  73. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/organizations/__init__.py +0 -0
  74. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/organizations/actions.py +0 -0
  75. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/organizations/commands.py +0 -0
  76. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/organizations/graphql/__init__.py +0 -0
  77. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/organizations/graphql/fragments.py +0 -0
  78. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/organizations/graphql/mutations.py +0 -0
  79. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/organizations/graphql/queries.py +0 -0
  80. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/projects/__init__.py +0 -0
  81. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/projects/actions.py +0 -0
  82. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/projects/commands.py +0 -0
  83. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/projects/graphql/__init__.py +0 -0
  84. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/projects/graphql/fragments.py +0 -0
  85. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/projects/graphql/mutations.py +0 -0
  86. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/projects/graphql/queries.py +0 -0
  87. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/provisioning/__init__.py +0 -0
  88. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/provisioning/actions.py +0 -0
  89. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/provisioning/graphql/__init__.py +0 -0
  90. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/provisioning/graphql/queries.py +0 -0
  91. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/reservations/__init__.py +0 -0
  92. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/reservations/actions.py +0 -0
  93. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/reservations/commands.py +0 -0
  94. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/reservations/graphql/__init__.py +0 -0
  95. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/reservations/graphql/fragments.py +0 -0
  96. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/reservations/graphql/mutations.py +0 -0
  97. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/reservations/graphql/queries.py +0 -0
  98. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/__init__.py +0 -0
  99. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/actions.py +0 -0
  100. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/auth.py +0 -0
  101. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/cache.py +0 -0
  102. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/chunk_size.py +0 -0
  103. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/config.py +0 -0
  104. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/daemons.py +0 -0
  105. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/exceptions.py +0 -0
  106. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/logging.py +0 -0
  107. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/memory_size.py +0 -0
  108. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/printer.py +0 -0
  109. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/psutil.py +0 -0
  110. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/shell.py +0 -0
  111. {primitive-0.2.44 → primitive-0.2.45}/src/primitive/utils/text.py +0 -0
  112. {primitive-0.2.44 → primitive-0.2.45}/tests/__init__.py +0 -0
  113. {primitive-0.2.44 → primitive-0.2.45}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: primitive
3
- Version: 0.2.44
3
+ Version: 0.2.45
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: 2025-present Dylan Stein <dylan@primitive.tech>
2
2
  #
3
3
  # SPDX-License-Identifier: MIT
4
- __version__ = "0.2.44"
4
+ __version__ = "0.2.45"
@@ -96,7 +96,14 @@ class Agent(BaseAction):
96
96
  job_run_status = job_run_data.get("jobRun", {}).get("status", None)
97
97
 
98
98
  while job_run_status != "in_progress":
99
- if job_run_status == "pending":
99
+ if job_run_status == "request_completed":
100
+ logger.error(
101
+ f"JobRun {job_run_data.get('name')} is already completed. Exiting."
102
+ )
103
+ if RUNNING_IN_CONTAINER:
104
+ logger.info("Running in container, exiting after job run")
105
+ return
106
+ elif job_run_status == "pending":
100
107
  # we are setting to request_in_progress here which puts a started_at time on the JobRun in the API's database
101
108
  # any time spent pulling Git repositories, setting up, etc, counts as compute time
102
109
  self.primitive.jobs.job_run_update(
@@ -111,12 +118,11 @@ class Agent(BaseAction):
111
118
  job_run_data = job_run_result.data.get("jobRun", {})
112
119
  job_run_status = job_run_data.get("status", None)
113
120
 
114
- runner = Runner(
115
- primitive=self.primitive,
116
- job_run=job_run_data,
117
- )
118
-
119
121
  try:
122
+ runner = Runner(
123
+ primitive=self.primitive,
124
+ job_run=job_run_data,
125
+ )
120
126
  runner.setup()
121
127
  except Exception as exception:
122
128
  logger.exception(
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