primitive 0.2.49__py3-none-any.whl → 0.2.51__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.
primitive/__about__.py CHANGED
@@ -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.49"
4
+ __version__ = "0.2.51"
@@ -60,11 +60,14 @@ class Monitor(BaseAction):
60
60
  previous_reservation_id = None
61
61
  active_reservation_id = None
62
62
 
63
+ last_provisioned_reservation_id = None
64
+
63
65
  while True:
64
66
  # this block determines if there is a reservation at all
65
67
  # handles cleanup of old reservations
66
68
  # obtains an active JobRun's ID
67
69
  if not RUNNING_IN_CONTAINER:
70
+ self.primitive.hardware.check_in_http(is_online=True)
68
71
  hardware = self.primitive.hardware.get_own_hardware_details()
69
72
  # fetch the latest hardware and activeReservation details
70
73
  if active_reservation_data := hardware["activeReservation"]:
@@ -108,12 +111,11 @@ class Monitor(BaseAction):
108
111
  )
109
112
  job_run_id = job_run_data.get("id")
110
113
  previous_reservation_id = None
114
+ last_provisioned_reservation_id = None
111
115
 
112
116
  # if we are on the new reservation
113
- elif (
114
- (previous_reservation_id is not None)
115
- and (active_reservation_id is not None)
116
- and (previous_reservation_id == active_reservation_id)
117
+ elif (active_reservation_id is not None) and (
118
+ last_provisioned_reservation_id != active_reservation_id
117
119
  ):
118
120
  logger.info(
119
121
  f"Reason: {active_reservation_data.get('reason', '')}"
@@ -121,6 +123,7 @@ class Monitor(BaseAction):
121
123
  self.primitive.provisioning.add_reservation_authorized_keys(
122
124
  reservation_id=active_reservation_id
123
125
  )
126
+ last_provisioned_reservation_id = active_reservation_id
124
127
 
125
128
  # we have an active reservation, check if we have JobRuns attached to it
126
129
  if active_reservation_id is not None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: primitive
3
- Version: 0.2.49
3
+ Version: 0.2.51
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
- primitive/__about__.py,sha256=BaQv-3EaOI0Jdg-EweFd4lidPOClXrT8oYjgjkIAk0E,130
1
+ primitive/__about__.py,sha256=98Py-XClBciFeBwMwwz2608bBaQxMYKd4HlOLCukdAM,130
2
2
  primitive/__init__.py,sha256=bwKdgggKNVssJFVPfKSxqFMz4IxSr54WWbmiZqTMPNI,106
3
3
  primitive/cli.py,sha256=g7EtHI9MATAB0qQu5w-WzbXtxz_8zu8z5E7sETmMkKU,2509
4
4
  primitive/client.py,sha256=RMF46F89oK82gfZH6Bf0WZrhXPUu01pbieSO_Vcuoc4,3624
@@ -54,7 +54,7 @@ primitive/jobs/graphql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3
54
54
  primitive/jobs/graphql/fragments.py,sha256=Ldhsc-NFHZGY8_1FjO2uZIdOL5UUGZjsldHea_GLJ_g,667
55
55
  primitive/jobs/graphql/mutations.py,sha256=8ASvCmwQh7cMeeiykOdYaYVryG8FRIuVF6v_J8JJZuw,219
56
56
  primitive/jobs/graphql/queries.py,sha256=ZxNmm-WovytbggNuKRnwa0kc26T34_0yhqkoqx-2uj0,1736
57
- primitive/monitor/actions.py,sha256=80adDYkXi8i1C6WCV1N75tFAMhEbRw2NBMobWoFwpbg,9447
57
+ primitive/monitor/actions.py,sha256=vXj6JQC17qNjoVUkOhnvOWMjVIuNUH2jKys3k599Bj8,9632
58
58
  primitive/monitor/commands.py,sha256=VDlEL_Qpm_ysHxug7VpI0cVAZ0ny6AS91Y58D7F1zkU,409
59
59
  primitive/organizations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
60
  primitive/organizations/actions.py,sha256=kVHOhG1oS2sI5p8uldSo5L-RUZsnG36eaulVuKLyZ-M,1863
@@ -95,8 +95,8 @@ primitive/utils/printer.py,sha256=f1XUpqi5dkTL3GWvYRUGlSwtj2IxU1q745T4Fxo7Tn4,37
95
95
  primitive/utils/psutil.py,sha256=xa7ef435UL37jyjmUPbEqCO2ayQMpCs0HCrxVEvLcuM,763
96
96
  primitive/utils/shell.py,sha256=Z4zxmOaSyGCrS0D6I436iQci-ewHLt4UxVg1CD9Serc,2171
97
97
  primitive/utils/text.py,sha256=XiESMnlhjQ534xE2hMNf08WehE1SKaYFRNih0MmnK0k,829
98
- primitive-0.2.49.dist-info/METADATA,sha256=oc3D2gxoXuarJ8WUHEmB4W3ljjDvhXIYEGE_lIrcgv4,3513
99
- primitive-0.2.49.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
100
- primitive-0.2.49.dist-info/entry_points.txt,sha256=p1K8DMCWka5FqLlqP1sPek5Uovy9jq8u51gUsP-z334,48
101
- primitive-0.2.49.dist-info/licenses/LICENSE.txt,sha256=B8kmQMJ2sxYygjCLBk770uacaMci4mPSoJJ8WoDBY_c,1098
102
- primitive-0.2.49.dist-info/RECORD,,
98
+ primitive-0.2.51.dist-info/METADATA,sha256=PIcqx1gPY31EuSFxHmGQLOxecKUYIGu4KS3l5ieIvno,3513
99
+ primitive-0.2.51.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
100
+ primitive-0.2.51.dist-info/entry_points.txt,sha256=p1K8DMCWka5FqLlqP1sPek5Uovy9jq8u51gUsP-z334,48
101
+ primitive-0.2.51.dist-info/licenses/LICENSE.txt,sha256=B8kmQMJ2sxYygjCLBk770uacaMci4mPSoJJ8WoDBY_c,1098
102
+ primitive-0.2.51.dist-info/RECORD,,