# 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