diff options
Diffstat (limited to 'ms/command-executor/src/main/python/command_executor_server.py')
-rw-r--r-- | ms/command-executor/src/main/python/command_executor_server.py | 58 |
1 files changed, 12 insertions, 46 deletions
diff --git a/ms/command-executor/src/main/python/command_executor_server.py b/ms/command-executor/src/main/python/command_executor_server.py index b62f15011..3596a0ec5 100644 --- a/ms/command-executor/src/main/python/command_executor_server.py +++ b/ms/command-executor/src/main/python/command_executor_server.py @@ -15,16 +15,10 @@ # See the License for the specific language governing permissions and # limitations under the License. # -from builtins import KeyboardInterrupt -from concurrent import futures -import time -import sys - -import grpc +import logging import proto.CommandExecutor_pb2_grpc as CommandExecutor_pb2_grpc -from request_header_validator_interceptor import RequestHeaderValidatorInterceptor from command_executor_handler import CommandExecutorHandler import utils @@ -33,59 +27,31 @@ _ONE_DAY_IN_SECONDS = 60 * 60 * 24 class CommandExecutorServer(CommandExecutor_pb2_grpc.CommandExecutorServiceServicer): + def __init__(self): + self.logger = logging.getLogger(self.__class__.__name__) + def prepareEnv(self, request, context): blueprint_id = utils.get_blueprint_id(request) - print("{} - Received prepareEnv request".format(blueprint_id)) - print (request) + self.logger.info("{} - Received prepareEnv request".format(blueprint_id)) + self.logger.info(request) results = [] handler = CommandExecutorHandler(request) if not handler.prepare_env(request, results): - print("{} - Failed to prepare python environment. {}".format(blueprint_id, results)) + self.logger.info("{} - Failed to prepare python environment. {}".format(blueprint_id, results)) return utils.build_response(request, results, False) - print("{} - Package installation logs {}".format(blueprint_id, results)) + self.logger.info("{} - Package installation logs {}".format(blueprint_id, results)) return utils.build_response(request, results) def executeCommand(self, request, context): blueprint_id = utils.get_blueprint_id(request) - print("{} - Received executeCommand request".format(blueprint_id)) - print(request) + self.logger.info("{} - Received executeCommand request".format(blueprint_id)) + self.logger.info(request) results = [] handler = CommandExecutorHandler(request) if not handler.execute_command(request, results): - print("{} - Failed to executeCommand. {}".format(blueprint_id, results)) + self.logger.info("{} - Failed to executeCommand. {}".format(blueprint_id, results)) return utils.build_response(request, results, False) - print("{} - Execute command logs: {}".format(blueprint_id, results)) + self.logger.info("{} - Execute command logs: {}".format(blueprint_id, results)) return utils.build_response(request, results) - - -def serve(): - port = sys.argv[1] - basic_auth = sys.argv[2] + ' ' + sys.argv[3] - - header_validator = RequestHeaderValidatorInterceptor( - 'authorization', basic_auth, grpc.StatusCode.UNAUTHENTICATED, - 'Access denied!') - - server = grpc.server( - futures.ThreadPoolExecutor(max_workers=10), - interceptors=(header_validator,)) - - CommandExecutor_pb2_grpc.add_CommandExecutorServiceServicer_to_server( - CommandExecutorServer(), server) - - server.add_insecure_port('[::]:' + port) - server.start() - - print("Command Executor Server started on %s" % port) - - try: - while True: - time.sleep(_ONE_DAY_IN_SECONDS) - except KeyboardInterrupt: - server.stop(0) - - -if __name__ == '__main__': - serve() |