Source code for qibocal.cli.update

import json
import os
import pathlib
import shutil

from ..auto.output import META, UPDATED_PLATFORM
from ..config import log, raise_error


[docs]def update(path: pathlib.Path): """Perform copy of updated platform in QIBOLAB_PLATFORM Arguments: - input_path: Qibocal output folder. """ new_platform_path = path / UPDATED_PLATFORM if not new_platform_path.exists(): raise_error(FileNotFoundError, f"No updated runcard platform found in {path}.") platform_name = json.loads((path / META).read_text())["platform"] platform_path = pathlib.Path(os.getenv("QIBOLAB_PLATFORMS")) / platform_name for filename in os.listdir(new_platform_path): shutil.copy( new_platform_path / filename, platform_path / filename, ) log.info(f"Platform {platform_name} configuration has been updated.")