Skip to content

Empty platform.driver list leads to type error #76

Description

@jkempf42

The platform_config.yml file has a comment in it saying that you cannot load the platform.agent without having the platform.driver loaded. Since if I am not mistaken the plaform.agent needs to be loaded for the VIP bus router, you need the platform.driver even if there are no devices on the local platform, like for example a cloud deployment with just the historian and Volttron Central web application. But if you try to load the plaform.driver without any drivers (which you might also want to do if you wanted to dynamically load drivers), you get an error:

Processing config_store entriesTraceback (most recent call last):
File "/startup/setup-platform.py", line 372, in
install_agents(agents_tmp)
File "/startup/setup-platform.py", line 311, in install_agents
for key, entry in spec["config_store"].items():
AttributeError: 'NoneType' object has no attribute 'items'
error running setup-platform.py

This can be fixed by adding a test in setup-platform.py around line 311 to check if spec["config_store"] is None:

        if "config_store" in spec:
            sys.stdout.write("Processing config_store entries")
           if spec["config_store"] is not None:
                for key, entry in spec["config_store"].items():
		if "file" not in entry or not entry["file"]:
                        slogger.info(
                            f"Invalid config store entry; file must be specified for {key}"
                        )
                        sys.stderr.write(
                            "Invalid config store entry file must be specified for {}".format(
                                key
                            )

  jak

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions