Skip to content

Commit

Permalink
master/worker: add ARTIQ version to HDF5 output
Browse files Browse the repository at this point in the history
sbourdeauducq committed Nov 9, 2015
1 parent 2df2e14 commit 44c0c61
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions artiq/master/worker_impl.py
Original file line number Diff line number Diff line change
@@ -8,6 +8,7 @@
from artiq.master.worker_db import DeviceManager, DatasetManager, get_hdf5_output
from artiq.language.environment import is_experiment
from artiq.language.core import set_watchdog_factory, TerminationRequested
from artiq import __version__ as artiq_version


def get_object():
@@ -156,6 +157,12 @@ def examine(device_mgr, dataset_mgr, file):
register_experiment(class_name, name, arguments)


def string_to_hdf5(f, key, value):
dtype = "S{}".format(len(value))
dataset = f.create_dataset(key, (), dtype)
dataset[()] = value.encode()


def main():
sys.stdout = LogForwarder()
sys.stderr = LogForwarder()
@@ -203,11 +210,9 @@ def main():
f = get_hdf5_output(start_time, rid, exp.__name__)
try:
dataset_mgr.write_hdf5(f)
string_to_hdf5(f, "artiq_version", artiq_version)
if "repo_rev" in expid:
rr = expid["repo_rev"]
dtype = "S{}".format(len(rr))
dataset = f.create_dataset("repo_rev", (), dtype)
dataset[()] = rr.encode()
string_to_hdf5(f, "repo_rev", expid["repo_rev"])
finally:
f.close()
put_object({"action": "completed"})

0 comments on commit 44c0c61

Please sign in to comment.