Include LICENSE in artifact

pull/17490/head
Lidi Zheng 6 years ago
parent 0e2f4061f5
commit b9cb2459ea
  1. 1
      src/python/grpcio_status/MANIFEST.in
  2. 19
      src/python/grpcio_status/setup.py
  3. 39
      src/python/grpcio_status/status_commands.py
  4. 2
      tools/run_tests/artifacts/build_artifact_python.sh

@ -1,3 +1,4 @@
include grpc_version.py
recursive-include grpc_status *.py
global-exclude *.pyc
include LICENSE

@ -63,12 +63,18 @@ INSTALL_REQUIRES = (
'googleapis-common-protos>=1.5.5',
)
SETUP_REQUIRES = ()
COMMAND_CLASS = {
# wire up commands to no-op not to break the external dependencies
'preprocess': _NoOpCommand,
'build_package_protos': _NoOpCommand,
}
try:
import status_commands as _status_commands
# we are in the build environment, otherwise the above import fails
COMMAND_CLASS = {
# Run preprocess from the repository *before* doing any packaging!
'preprocess': _status_commands.Preprocess,
}
except ImportError:
COMMAND_CLASS = {
# wire up commands to no-op not to break the external dependencies
'preprocess': _NoOpCommand,
}
setuptools.setup(
name='grpcio-status',
@ -82,5 +88,4 @@ setuptools.setup(
package_dir=PACKAGE_DIRECTORIES,
packages=setuptools.find_packages('.'),
install_requires=INSTALL_REQUIRES,
setup_requires=SETUP_REQUIRES,
cmdclass=COMMAND_CLASS)

@ -0,0 +1,39 @@
# 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__)))
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(LICENSE):
shutil.copyfile(LICENSE, os.path.join(ROOT_DIR, 'LICENSE'))

@ -126,7 +126,7 @@ then
# Build grpcio_status source distribution
${SETARCH_CMD} "${PYTHON}" src/python/grpcio_status/setup.py \
preprocess build_package_protos sdist
preprocess sdist
cp -r src/python/grpcio_status/dist/* "$ARTIFACT_DIR"
fi

Loading…
Cancel
Save