36 lines
979 B
Python
36 lines
979 B
Python
|
|
# Lint as: python2, python3
|
||
|
|
# Copyright 2021 The Chromium OS Authors. All rights reserved.
|
||
|
|
# Use of this source code is governed by a BSD-style license that can be
|
||
|
|
# found in the LICENSE file.
|
||
|
|
"""Abstract Client for Autotest side communications to the TLS Server."""
|
||
|
|
|
||
|
|
import grpc
|
||
|
|
|
||
|
|
import common
|
||
|
|
|
||
|
|
from autotest_lib.server.hosts.tls_client import autotest_common_pb2_grpc
|
||
|
|
|
||
|
|
TLS_PORT = 7152
|
||
|
|
TLS_IP = '10.254.254.254'
|
||
|
|
|
||
|
|
|
||
|
|
class TLSConnection(object):
|
||
|
|
"""The client side connection to Common-TLS service running in a drone."""
|
||
|
|
|
||
|
|
def __init__(self):
|
||
|
|
"""Configure the grpc channel."""
|
||
|
|
self.channel = grpc.insecure_channel('{}:{}'.format(TLS_IP, TLS_PORT))
|
||
|
|
self.stub = autotest_common_pb2_grpc.CommonStub(self.channel)
|
||
|
|
self.alive = True
|
||
|
|
|
||
|
|
def __enter__(self):
|
||
|
|
return self
|
||
|
|
|
||
|
|
def __exit__(self, *exc):
|
||
|
|
self.close()
|
||
|
|
|
||
|
|
def close(self):
|
||
|
|
"""Close the grpc channel."""
|
||
|
|
self.channel.close()
|
||
|
|
self.alive = False
|