:py:mod:`viam.gen.app.agent.v1.agent_pb2` ========================================= .. py:module:: viam.gen.app.agent.v1.agent_pb2 .. autoapi-nested-parse:: @generated by mypy-protobuf. Do not edit manually! isort:skip_file Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: viam.gen.app.agent.v1.agent_pb2.PackageFormat viam.gen.app.agent.v1.agent_pb2.DeviceAgentConfigRequest viam.gen.app.agent.v1.agent_pb2.DeviceAgentConfigResponse viam.gen.app.agent.v1.agent_pb2.DeviceSubsystemConfig viam.gen.app.agent.v1.agent_pb2.HostInfo viam.gen.app.agent.v1.agent_pb2.SubsystemUpdateInfo Attributes ~~~~~~~~~~ .. autoapisummary:: viam.gen.app.agent.v1.agent_pb2.DESCRIPTOR viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_UNSPECIFIED viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_RAW viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_XZ viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_EXECUTABLE viam.gen.app.agent.v1.agent_pb2.PACKAGE_FORMAT_XZ_EXECUTABLE viam.gen.app.agent.v1.agent_pb2.global___PackageFormat viam.gen.app.agent.v1.agent_pb2.global___DeviceAgentConfigRequest viam.gen.app.agent.v1.agent_pb2.global___DeviceAgentConfigResponse viam.gen.app.agent.v1.agent_pb2.global___DeviceSubsystemConfig viam.gen.app.agent.v1.agent_pb2.global___HostInfo viam.gen.app.agent.v1.agent_pb2.global___SubsystemUpdateInfo .. py:data:: DESCRIPTOR :type: google.protobuf.descriptor.FileDescriptor .. py:class:: PackageFormat Bases: :py:obj:`_PackageFormat` .. py:data:: PACKAGE_FORMAT_UNSPECIFIED :type: PackageFormat unknown/unset (autodetection may be attempted) .. py:data:: PACKAGE_FORMAT_RAW :type: PackageFormat do nothing .. py:data:: PACKAGE_FORMAT_XZ :type: PackageFormat decompress .xz file .. py:data:: PACKAGE_FORMAT_EXECUTABLE :type: PackageFormat set executable permissions .. py:data:: PACKAGE_FORMAT_XZ_EXECUTABLE :type: PackageFormat decompress and set executable .. py:data:: global___PackageFormat .. py:class:: DeviceAgentConfigRequest(*, id: str = ..., host_info: global___HostInfo | None = ..., subsystem_versions: collections.abc.Mapping[str, str] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Device side .. py:class:: SubsystemVersionsEntry(*, key: str = ..., value: str = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: key :type: str .. py:attribute:: value :type: str .. py:property:: host_info :type: global___HostInfo info about the host system .. py:property:: subsystem_versions :type: google.protobuf.internal.containers.ScalarMap[str, str] current subsystems and versions .. py:attribute:: id :type: str robot partID .. py:method:: HasField(field_name: Literal[host_info, b'host_info']) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:data:: global___DeviceAgentConfigRequest .. py:class:: DeviceAgentConfigResponse(*, subsystem_configs: collections.abc.Mapping[str, global___DeviceSubsystemConfig] | None = ..., check_interval: google.protobuf.duration_pb2.Duration | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:class:: SubsystemConfigsEntry(*, key: str = ..., value: global___DeviceSubsystemConfig | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:property:: value :type: global___DeviceSubsystemConfig .. py:attribute:: key :type: str .. py:method:: HasField(field_name: Literal[value, b'value']) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:property:: subsystem_configs :type: google.protobuf.internal.containers.MessageMap[str, global___DeviceSubsystemConfig] subsystems to be installed/configured/updated note: previously installed subsystems will be removed from the system if removed from this list .. py:property:: check_interval :type: google.protobuf.duration_pb2.Duration how often this request should be repeated .. py:method:: HasField(field_name: Literal[check_interval, b'check_interval']) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:data:: global___DeviceAgentConfigResponse .. py:class:: DeviceSubsystemConfig(*, update_info: global___SubsystemUpdateInfo | None = ..., disable: bool = ..., force_restart: bool = ..., attributes: google.protobuf.struct_pb2.Struct | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:property:: update_info :type: global___SubsystemUpdateInfo data needed to download/validate the subsystem .. py:property:: attributes :type: google.protobuf.struct_pb2.Struct arbitrary config sections .. py:attribute:: disable :type: bool if this subsystem is disabled and should not be started by the agent .. py:attribute:: force_restart :type: bool force_restart will restart the subsystem, even if no updates are available .. py:method:: HasField(field_name: Literal[attributes, b'attributes', update_info, b'update_info']) -> bool Checks if a certain field is set for the message. For a oneof group, checks if any field inside is set. Note that if the field_name is not defined in the message descriptor, :exc:`ValueError` will be raised. :param field_name: The name of the field to check for presence. :type field_name: str :returns: Whether a value has been set for the named field. :rtype: bool :raises ValueError: if the `field_name` is not a member of this message. .. py:data:: global___DeviceSubsystemConfig .. py:class:: HostInfo(*, platform: str = ..., distro: str = ..., tags: collections.abc.Iterable[str] | None = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:property:: tags :type: google.protobuf.internal.containers.RepeatedScalarFieldContainer[str] additional tags for specific hardware or software that's present and may affect software selection ex: "jetson", "rpi4", "systemd", etc. .. py:attribute:: platform :type: str linux/amd64, darwin/arm64 :type: platform is the docker styled combination of kernel and architecture. Ex .. py:attribute:: distro :type: str 22.04, debian:11 :type: ID and VERSION_ID fields from /etc/os-release, colon seperated. Ex :type: ubuntu .. py:data:: global___HostInfo .. py:class:: SubsystemUpdateInfo(*, filename: str = ..., url: str = ..., version: str = ..., sha256: bytes = ..., format: global___PackageFormat = ...) Bases: :py:obj:`google.protobuf.message.Message` Abstract base class for protocol messages. Protocol message classes are almost always generated by the protocol compiler. These generated types subclass Message and implement the methods shown below. .. py:attribute:: filename :type: str unpacked filename as it is expected on disk (regardless of url) .. py:attribute:: url :type: str url to download from .. py:attribute:: version :type: str version expected at the url .. py:attribute:: sha256 :type: bytes sha256 sum of file as downloaded .. py:attribute:: format :type: global___PackageFormat determines if decompression or executable permissions are needed .. py:data:: global___SubsystemUpdateInfo