primitive 0.1.97__tar.gz → 0.2.1__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 (109) hide show
  1. {primitive-0.1.97 → primitive-0.2.1}/PKG-INFO +1 -1
  2. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/__about__.py +1 -1
  3. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/agent/actions.py +14 -3
  4. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/agent/runner.py +1 -0
  5. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/hardware/actions.py +4 -1
  6. {primitive-0.1.97 → primitive-0.2.1}/uv.lock +1 -2
  7. {primitive-0.1.97 → primitive-0.2.1}/.git-hooks/pre-commit +0 -0
  8. {primitive-0.1.97 → primitive-0.2.1}/.gitattributes +0 -0
  9. {primitive-0.1.97 → primitive-0.2.1}/.github/workflows/lint.yml +0 -0
  10. {primitive-0.1.97 → primitive-0.2.1}/.github/workflows/publish.yml +0 -0
  11. {primitive-0.1.97 → primitive-0.2.1}/.gitignore +0 -0
  12. {primitive-0.1.97 → primitive-0.2.1}/.vscode/settings.json +0 -0
  13. {primitive-0.1.97 → primitive-0.2.1}/LICENSE.txt +0 -0
  14. {primitive-0.1.97 → primitive-0.2.1}/Makefile +0 -0
  15. {primitive-0.1.97 → primitive-0.2.1}/README.md +0 -0
  16. {primitive-0.1.97 → primitive-0.2.1}/linux setup.md +0 -0
  17. {primitive-0.1.97 → primitive-0.2.1}/pyproject.toml +0 -0
  18. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/__init__.py +0 -0
  19. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/agent/__init__.py +0 -0
  20. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/agent/commands.py +0 -0
  21. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/agent/process.py +0 -0
  22. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/agent/provision.py +0 -0
  23. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/agent/uploader.py +0 -0
  24. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/auth/__init__.py +0 -0
  25. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/auth/actions.py +0 -0
  26. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/auth/commands.py +0 -0
  27. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/auth/graphql/__init__.py +0 -0
  28. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/auth/graphql/queries.py +0 -0
  29. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/cli.py +0 -0
  30. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/client.py +0 -0
  31. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/daemons/__init__.py +0 -0
  32. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/daemons/actions.py +0 -0
  33. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/daemons/commands.py +0 -0
  34. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/daemons/launch_agents.py +0 -0
  35. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/daemons/launch_service.py +0 -0
  36. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/exec/__init__.py +0 -0
  37. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/exec/actions.py +0 -0
  38. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/exec/commands.py +0 -0
  39. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/exec/interactive.py +0 -0
  40. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/files/__init__.py +0 -0
  41. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/files/actions.py +0 -0
  42. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/files/commands.py +0 -0
  43. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/files/graphql/__init__.py +0 -0
  44. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/files/graphql/fragments.py +0 -0
  45. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/files/graphql/mutations.py +0 -0
  46. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/files/graphql/queries.py +0 -0
  47. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/git/__init__.py +0 -0
  48. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/git/actions.py +0 -0
  49. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/git/commands.py +0 -0
  50. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/git/graphql/__init__.py +0 -0
  51. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/git/graphql/queries.py +0 -0
  52. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/graphql/__init__.py +0 -0
  53. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/graphql/relay.py +0 -0
  54. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/graphql/sdk.py +0 -0
  55. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/graphql/utility_fragments.py +0 -0
  56. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/hardware/__init__.py +0 -0
  57. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/hardware/android.py +0 -0
  58. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/hardware/commands.py +0 -0
  59. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/hardware/graphql/__init__.py +0 -0
  60. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/hardware/graphql/fragments.py +0 -0
  61. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/hardware/graphql/mutations.py +0 -0
  62. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/hardware/graphql/queries.py +0 -0
  63. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/jobs/__init__.py +0 -0
  64. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/jobs/actions.py +0 -0
  65. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/jobs/commands.py +0 -0
  66. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/jobs/graphql/__init__.py +0 -0
  67. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/jobs/graphql/fragments.py +0 -0
  68. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/jobs/graphql/mutations.py +0 -0
  69. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/jobs/graphql/queries.py +0 -0
  70. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/organizations/__init__.py +0 -0
  71. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/organizations/actions.py +0 -0
  72. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/organizations/commands.py +0 -0
  73. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/organizations/graphql/__init__.py +0 -0
  74. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/organizations/graphql/fragments.py +0 -0
  75. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/organizations/graphql/mutations.py +0 -0
  76. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/organizations/graphql/queries.py +0 -0
  77. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/projects/__init__.py +0 -0
  78. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/projects/actions.py +0 -0
  79. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/projects/commands.py +0 -0
  80. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/projects/graphql/__init__.py +0 -0
  81. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/projects/graphql/fragments.py +0 -0
  82. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/projects/graphql/mutations.py +0 -0
  83. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/projects/graphql/queries.py +0 -0
  84. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/provisioning/__init__.py +0 -0
  85. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/provisioning/actions.py +0 -0
  86. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/provisioning/graphql/__init__.py +0 -0
  87. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/provisioning/graphql/queries.py +0 -0
  88. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/reservations/__init__.py +0 -0
  89. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/reservations/actions.py +0 -0
  90. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/reservations/commands.py +0 -0
  91. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/reservations/graphql/__init__.py +0 -0
  92. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/reservations/graphql/fragments.py +0 -0
  93. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/reservations/graphql/mutations.py +0 -0
  94. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/reservations/graphql/queries.py +0 -0
  95. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/__init__.py +0 -0
  96. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/actions.py +0 -0
  97. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/auth.py +0 -0
  98. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/cache.py +0 -0
  99. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/chunk_size.py +0 -0
  100. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/config.py +0 -0
  101. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/exceptions.py +0 -0
  102. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/files.py +0 -0
  103. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/git.py +0 -0
  104. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/memory_size.py +0 -0
  105. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/printer.py +0 -0
  106. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/shell.py +0 -0
  107. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/text.py +0 -0
  108. {primitive-0.1.97 → primitive-0.2.1}/src/primitive/utils/verible.py +0 -0
  109. {primitive-0.1.97 → primitive-0.2.1}/tests/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: primitive
3
- Version: 0.1.97
3
+ Version: 0.2.1
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.97"
4
+ __version__ = "0.2.1"
@@ -149,7 +149,7 @@ class Agent(BaseAction):
149
149
  except Exception as exception:
150
150
  logger.error(f"Error downloading source: {exception}")
151
151
  self.primitive.jobs.job_run_update(
152
- job_run["id"],
152
+ id=job_run["id"],
153
153
  status="request_completed",
154
154
  conclusion="failure",
155
155
  )
@@ -173,8 +173,19 @@ class Agent(BaseAction):
173
173
  f"Error initializing agent runner: {exception}"
174
174
  )
175
175
  else:
176
- # Execute job
177
- runner.execute()
176
+ try:
177
+ # Execute job
178
+ runner.execute()
179
+ except Exception as exception:
180
+ # Log Error
181
+ logger.exception(
182
+ f"AgentRunner exception while running executing customer job: {exception}"
183
+ )
184
+ self.primitive.jobs.job_run_update(
185
+ id=job_run["id"],
186
+ status="request_completed",
187
+ conclusion="failure",
188
+ )
178
189
  finally:
179
190
  # Clean up
180
191
  shutil.rmtree(path=downloaded_git_repository_dir)
@@ -59,6 +59,7 @@ class AgentRunner:
59
59
  self.primitive = primitive
60
60
  self.source_dir = source_dir
61
61
  self.workdir = "."
62
+ self.job_run = job_run
62
63
  self.job_id = job_run["id"]
63
64
  self.job_slug = job_run["job"]["slug"]
64
65
  self.max_log_size = max_log_size
@@ -405,7 +405,9 @@ class Hardware(BaseAction):
405
405
  }
406
406
 
407
407
  mutation = gql(hardware_checkin_mutation)
408
- input = new_state
408
+ input = {**new_state}
409
+ if fingerprint:
410
+ input["fingerprint"] = fingerprint
409
411
  variables = {"input": input}
410
412
  try:
411
413
  result = self.primitive.session.execute(
@@ -424,6 +426,7 @@ class Hardware(BaseAction):
424
426
  if fingerprint in self.status_cache:
425
427
  previous_status = self.status_cache[fingerprint]
426
428
  else:
429
+ logger.error("No previous status found.")
427
430
  previous_status = {
428
431
  "isHealthy": False,
429
432
  "isQuarantined": False,
@@ -283,7 +283,7 @@ name = "click"
283
283
  version = "8.1.8"
284
284
  source = { registry = "https://pypi.org/simple" }
285
285
  dependencies = [
286
- { name = "colorama", marker = "platform_system == 'Windows'" },
286
+ { name = "colorama", marker = "sys_platform == 'win32'" },
287
287
  ]
288
288
  sdist = { url = "https://files.pythonhosted.org/packages/b9/2e/0090cbf739cee7d23781ad4b89a9894a41538e4fcf4c31dcdd705b78eb8b/click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a", size = 226593 }
289
289
  wheels = [
@@ -706,7 +706,6 @@ wheels = [
706
706
 
707
707
  [[package]]
708
708
  name = "primitive"
709
- version = "0.1.89"
710
709
  source = { editable = "." }
711
710
  dependencies = [
712
711
  { name = "click" },
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes