GRPC
GRPC
GRPC-server provides API to exec, upload and download. Example:
async def amain(
host: str,
cmd: str,
device: str,
token: Optional[str] = None,
insecure: bool = False,
device_login: Optional[str] = "",
device_password: Optional[str] = "",
):
api = Gnetcli(auth_token=token, insecure_grpc=insecure)
dev_creds = None
if device_login and device_password:
dev_creds = Credentials(device_login, device_password)
# set connection parameters for host
await api.set_host_params(hostname=host, params=HostParams(device=device, credentials=dev_creds))
# exec cmd
res = await api.cmd(hostname=host, cmd=cmd)
print("err=%s status=%s out=%s" % (res.error, res.status, res.out))
# download some file
res = await api.download(hostname=host, paths=["/tmp/test"])
print(res)
Before do anything with a host, SetupHostParams
must be called with parameters for the host.
See all possible options in message HostParams
.
SetupHostParams
Set credentials, device type and other parameters for the host.
AddDevice
See docs about adding new device type.
ExecChat/Exec
RPCs for command execution. ExecChat executing command in the same session.
Download/Upload
RPCs for Download/Upload.