build_package.py
def travis_build_package():
    """Assumed called on Travis, to prepare a package to be deployed

    This method prints on stdout for Travis.
    Return is obj to pass to sys.exit() directly
    """

    travis_tag = os.environ.get('TRAVIS_TAG')
    if not travis_tag:
        print("TRAVIS_TAG environment variable is not present")
        return "TRAVIS_TAG environment variable is not present"

    try:
        name, version = travis_tag.split("_")
    except ValueError:
        print("TRAVIS_TAG is not '<package_name>_<version>' (tag is: {})".format(travis_tag))
        return "TRAVIS_TAG is not '<package_name>_<version>' (tag is: {})".format(travis_tag)

    try:
        version = Version(version)
    except InvalidVersion:
        print("Version must be a valid PEP440 version (version is: {})".format(version))
        return "Version must be a valid PEP440 version (version is: {})".format(version)

    if name.lower() in OMITTED_RELEASE_PACKAGES:
        print("The input package {} has been disabled for release from Travis.CI.".format(name))
        return

    abs_dist_path = Path(os.environ['TRAVIS_BUILD_DIR'], 'dist')
    create_package(name, str(abs_dist_path))

    print("Produced:\n{}".format(list(abs_dist_path.glob('*'))))

    pattern = "*{}*".format(version)
    packages = list(abs_dist_path.glob(pattern))
    if not packages:
        return "Package version does not match tag {}, abort".format(version)
    pypi_server = os.environ.get("PYPI_SERVER", "default PyPI server")
    print("Package created as expected and will be pushed to {}".format(pypi_server))
def travis_build_package():
    travis_tag = os.environ.get('TRAVIS_TAG')
    if not travis_tag:
        print("TRAVIS_TAG environment variable is not present")
        return "TRAVIS_TAG environment variable is not present"

    try:
        name, version = travis_tag.split("_")
    except ValueError:
        print("TRAVIS_TAG is not '<package_name>_<version>' (tag is: {})".format(travis_tag))
        return "TRAVIS_TAG is not '<package_name>_<version>' (tag is: {})".format(travis_tag)

    try:
        version = Version(version)
    except InvalidVersion:
        print("Version must be a valid PEP440 version (version is: {})".format(version))
        return "Version must be a valid PEP440 version (version is: {})".format(version)

    if name.lower() in OMITTED_RELEASE_PACKAGES:
        print("The input package {} has been disabled for release from Travis.CI.".format(name))
        return

    abs_dist_path = Path(os.environ['TRAVIS_BUILD_DIR'], 'dist')
    create_package(name, str(abs_dist_path))

    print("Produced:\n{}".format(list(abs_dist_path.glob('*'))))

    pattern = "*{}*".format(version)
    packages = list(abs_dist_path.glob(pattern))
    if not packages:
        return "Package version does not match tag {}, abort".format(version)
    pypi_server = os.environ.get("PYPI_SERVER", "default PyPI server")
    print("Package created as expected and will be pushed to {}".format(pypi_server))
def travis_build_package ( ) : travis_tag = os . environ . get ( 'TRAVIS_TAG' ) if not travis_tag : print ( "TRAVIS_TAG environment variable is not present" ) return "TRAVIS_TAG environment variable is not present" try : name , version = travis_tag . split ( "_" ) except ValueError : print ( "TRAVIS_TAG is not '<package_name>_<version>' (tag is: {})" . format ( travis_tag ) ) return "TRAVIS_TAG is not '<package_name>_<version>' (tag is: {})" . format ( travis_tag ) try : version = Version ( version ) except InvalidVersion : print ( "Version must be a valid PEP440 version (version is: {})" . format ( version ) ) return "Version must be a valid PEP440 version (version is: {})" . format ( version ) if name . lower ( ) in OMITTED_RELEASE_PACKAGES : print ( "The input package {} has been disabled for release from Travis.CI." . format ( name ) ) return abs_dist_path = Path ( os . environ [ 'TRAVIS_BUILD_DIR' ] , 'dist' ) create_package ( name , str ( abs_dist_path ) ) print ( "Produced:\n{}" . format ( list ( abs_dist_path . glob ( '*' ) ) ) ) pattern = "*{}*" . format ( version ) packages = list ( abs_dist_path . glob ( pattern ) ) if not packages : return "Package version does not match tag {}, abort" . format ( version ) pypi_server = os . environ . get ( "PYPI_SERVER" , "default PyPI server" ) print ( "Package created as expected and will be pushed to {}" . format ( pypi_server ) )
Assumed called on Travis, to prepare a package to be deployed

    This method prints on stdout for Travis.
    Return is obj to pass to sys.exit() directly
Assumed called on Travis to prepare a package to be deployed