# Copyright 2018 The gRPC Authors # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """Provides distutils command classes for the GRPC Python setup process.""" import os import shutil import setuptools ROOT_DIR = os.path.abspath(os.path.dirname(os.path.abspath(__file__))) STATUS_PROTO = os.path.join( ROOT_DIR, '../../../third_party/googleapis/google/rpc/status.proto') PACKAGE_STATUS_PROTO_PATH = 'grpc_status/google/rpc' LICENSE = os.path.join(ROOT_DIR, '../../../LICENSE') class Preprocess(setuptools.Command): """Command to copy LICENSE from root directory.""" description = '' user_options = [] def initialize_options(self): pass def finalize_options(self): pass def run(self): if os.path.isfile(STATUS_PROTO): if not os.path.isdir(PACKAGE_STATUS_PROTO_PATH): os.makedirs(PACKAGE_STATUS_PROTO_PATH) shutil.copyfile( STATUS_PROTO, os.path.join(ROOT_DIR, PACKAGE_STATUS_PROTO_PATH, 'status.proto')) if os.path.isfile(LICENSE): shutil.copyfile(LICENSE, os.path.join(ROOT_DIR, 'LICENSE'))