ob-metaflow-extensions 1.1.97__py2.py3-none-any.whl → 1.1.99__py2.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.
@@ -59,11 +59,11 @@ class Nvcf(object):
59
59
  code_package_url, code_package_ds
60
60
  )
61
61
  init_expr = " && ".join(init_cmds)
62
- heartbeat_expr = f'python -m metaflow_extensions.outerbounds.plugins.nvcf.heartbeat_store "$MAIN_PID" {code_package_ds} nvcf_heartbeats 1>> $MFLOG_STDOUT 2>> $MFLOG_STDERR'
62
+ heartbeat_expr = f'python -m metaflow_extensions.outerbounds.plugins.nvcf.heartbeat_store "$MAIN_PID" {code_package_ds} nvcf_heartbeats & HEARTBEAT_PID=$!;'
63
63
  step_expr = bash_capture_logs(
64
64
  " && ".join(
65
65
  self.environment.bootstrap_commands(step_name, code_package_ds)
66
- + [step_cli + " & MAIN_PID=$!; " + heartbeat_expr]
66
+ + [step_cli + " & MAIN_PID=$!; " + heartbeat_expr + " wait $MAIN_PID"]
67
67
  )
68
68
  )
69
69
 
@@ -84,7 +84,10 @@ class Nvcf(object):
84
84
  #
85
85
  # Note that if step_expr OOMs, this tail expression is never executed.
86
86
  # We lose the last logs in this scenario.
87
- cmd_str += "c=$?; %s; exit $c" % BASH_SAVE_LOGS
87
+ cmd_str += (
88
+ "c=$?; kill $HEARTBEAT_PID; wait $HEARTBEAT_PID; %s; exit $c"
89
+ % BASH_SAVE_LOGS
90
+ )
88
91
  cmd_str = (
89
92
  '${METAFLOW_INIT_SCRIPT:+eval \\"${METAFLOW_INIT_SCRIPT}\\"} && %s'
90
93
  % cmd_str
@@ -222,10 +225,10 @@ class Job(object):
222
225
  self._invocation_id = response.headers.get("NVCF-REQID")
223
226
  if response.getcode() == 200:
224
227
  data = json.loads(response.read())
225
- if data["status"].startswith("Oops"):
226
- self._status = JobStatus.FAILED
227
- else:
228
+ if data.get("exit_code") == 0:
228
229
  self._status = JobStatus.SUCCESSFUL
230
+ else:
231
+ self._status = JobStatus.FAILED
229
232
  self._result = data
230
233
  elif response.getcode() == 202:
231
234
  self._status = JobStatus.SUBMITTED
@@ -270,11 +273,11 @@ class Job(object):
270
273
  response = urlopen(request)
271
274
  if response.getcode() == 200:
272
275
  data = json.loads(response.read())
273
- if data["status"].startswith("Oops"):
274
- # TODO: Propagate the internal error forward
275
- self._status = JobStatus.FAILED
276
- else:
276
+ # TODO: Propagate the internal error forward
277
+ if data.get("exit_code") == 0:
277
278
  self._status = JobStatus.SUCCESSFUL
279
+ else:
280
+ self._status = JobStatus.FAILED
278
281
  self._result = data
279
282
  elif response.getcode() in [400, 500]:
280
283
  self._status = JobStatus.FAILED
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ob-metaflow-extensions
3
- Version: 1.1.97
3
+ Version: 1.1.99
4
4
  Summary: Outerbounds Platform Extensions for Metaflow
5
5
  Author: Outerbounds, Inc.
6
6
  License: Commercial
7
7
  Description-Content-Type: text/markdown
8
8
  Requires-Dist: boto3
9
9
  Requires-Dist: kubernetes
10
- Requires-Dist: ob-metaflow (==2.12.24.1)
10
+ Requires-Dist: ob-metaflow (==2.12.25.2)
11
11
 
12
12
  # Outerbounds platform package
13
13
 
@@ -15,7 +15,7 @@ metaflow_extensions/outerbounds/plugins/nim/__init__.py,sha256=GVnvSTjqYVj5oG2yh
15
15
  metaflow_extensions/outerbounds/plugins/nim/nim_manager.py,sha256=SWieODDxtIaeZwdMYtObDi57Kjyfw2DUuE6pJtU750w,9206
16
16
  metaflow_extensions/outerbounds/plugins/nvcf/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
17
  metaflow_extensions/outerbounds/plugins/nvcf/heartbeat_store.py,sha256=pOWwm8LFQBbtku0zNBBwCyXxLK8U-hhC4naQcmU69nE,6217
18
- metaflow_extensions/outerbounds/plugins/nvcf/nvcf.py,sha256=YShky0m7SvIoNm0VX1-_GZh2svc2zQ9oLdGj2FVRpy0,9471
18
+ metaflow_extensions/outerbounds/plugins/nvcf/nvcf.py,sha256=1ayR5YLiEy3XRGVEnRUpsDCH_UyK7z-7A8L5GxI4qOE,9535
19
19
  metaflow_extensions/outerbounds/plugins/nvcf/nvcf_cli.py,sha256=YZb5AvbVgUwUJVxRxQ4JqqP8e1RMJr6dZ9U4KkHE-M8,9134
20
20
  metaflow_extensions/outerbounds/plugins/nvcf/nvcf_decorator.py,sha256=TKWN3mG2twC40uChfWYVsNKqf3euQIM_YHLAuNf1pvA,6525
21
21
  metaflow_extensions/outerbounds/plugins/snowpark/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -34,7 +34,7 @@ metaflow_extensions/outerbounds/toplevel/global_aliases_for_metaflow_package.py,
34
34
  metaflow_extensions/outerbounds/toplevel/plugins/azure/__init__.py,sha256=WUuhz2YQfI4fz7nIcipwwWq781eaoHEk7n4GAn1npDg,63
35
35
  metaflow_extensions/outerbounds/toplevel/plugins/gcp/__init__.py,sha256=BbZiaH3uILlEZ6ntBLKeNyqn3If8nIXZFq_Apd7Dhco,70
36
36
  metaflow_extensions/outerbounds/toplevel/plugins/kubernetes/__init__.py,sha256=5zG8gShSj8m7rgF4xgWBZFuY3GDP5n1T0ktjRpGJLHA,69
37
- ob_metaflow_extensions-1.1.97.dist-info/METADATA,sha256=DuTSqhJsXs0n1kfud4ayP92V0uos7h7ZYsNFc8eZidQ,520
38
- ob_metaflow_extensions-1.1.97.dist-info/WHEEL,sha256=bb2Ot9scclHKMOLDEHY6B2sicWOgugjFKaJsT7vwMQo,110
39
- ob_metaflow_extensions-1.1.97.dist-info/top_level.txt,sha256=NwG0ukwjygtanDETyp_BUdtYtqIA_lOjzFFh1TsnxvI,20
40
- ob_metaflow_extensions-1.1.97.dist-info/RECORD,,
37
+ ob_metaflow_extensions-1.1.99.dist-info/METADATA,sha256=oBe6bSzZL9iBxorXqhVdGW_yKtv4JupzrO9gXsF21lw,520
38
+ ob_metaflow_extensions-1.1.99.dist-info/WHEEL,sha256=bb2Ot9scclHKMOLDEHY6B2sicWOgugjFKaJsT7vwMQo,110
39
+ ob_metaflow_extensions-1.1.99.dist-info/top_level.txt,sha256=NwG0ukwjygtanDETyp_BUdtYtqIA_lOjzFFh1TsnxvI,20
40
+ ob_metaflow_extensions-1.1.99.dist-info/RECORD,,