"""Creates a services.yaml file with the latest docs.""" import sys from pathlib import Path import yaml sys.path.append(str(Path(__file__).parent.parent)) from custom_components.adaptive_lighting import const # noqa: E402 services_filename = Path("custom_components") / "adaptive_lighting" / "services.yaml" with open(services_filename) as f: # noqa: PTH123 services = yaml.safe_load(f) for service_name, dct in services.items(): _docs = {"set_manual_control": const.DOCS_MANUAL_CONTROL, "apply": const.DOCS_APPLY} alternative_docs = _docs.get(service_name, const.DOCS) for field_name, field in dct["fields"].items(): description = alternative_docs.get(field_name, const.DOCS[field_name]) field["description"] = description comment = "# This file is auto-generated by .github/update-services.py." with services_filename.open("w") as f: f.write(comment + "\n") yaml.dump(services, f, sort_keys=False, width=1000, allow_unicode=True)