def deploy_all_modules(module_order, env_info, verify_cert=True):
    build_info = _collect_build_info(module_order, env_info)

    logging.debug(os.linesep.join((
        'Build info:',
        build_info_to_text(build_info))))

    deploy_artifact, deploy_build_info = get_deploy_functions(
        env_info=env_info,
        verify_cert=verify_cert)

    def deploy_dist(module):
        path = compute_repo_path_from_module_name(module)
        return deploy_artifact(
            path=path,
            glob_patterns=[os.path.join(module, 'dist', '*')])

    deployed_files = []

    for module in module_order:
        deployed_files.extend(deploy_dist(module))

    deploy_build_info(build_info=build_info)

    return deployed_files
def _build_info(args):
    my_build_number = args.number
    my_build_name = args.name

    bi_builder = BuildInfo.Builder(
        version="2.2.2",
        name=my_build_name,
        number=my_build_number,
        # Looks like valid values are "GENERIC", "MAVEN", "ANT", "IVY" and
        # "GRADLE".
        type='GENERIC',
        # Looks like time format is very specific
        started="2013-03-21T10:49:01.143-0500",
        duration_millis=10000,
        artifactory_principal="dude",
        agent=Agent(name="defend_against_fruit", version="5.2"),
        build_agent=Agent(name="TeamCity", version="1.3"),
        build_retention=BuildRetention(
            count=-1,
            delete_build_artifacts=False,
            # Is this for TeamCity "pinned" builds?
            build_numbers_not_to_be_discarded=[111, 999])
    )
    module_builder = Module.Builder(id=Id(
        group_id="python",
        artifact_id="daf_fruit_dist",
        version="1.2.15"))
    module_builder.add_artifact(
        type=PYTHON_SDIST,
        name="daf_fruit_dist-1.2.15.tar.gz",
        sha1="0a66f5619bcce7a441740e154cd97bad04189d86",
        md5="2a17acbb714e7b696c58b4ca6e07c611")
    module_builder.add_artifact(
        type=PYTHON_FREEZE,
        name="daf_fruit_dist-1.2.15-requirements.txt",
        sha1="06e5f0080b6b15704be9d78e801813d802a90625",
        md5="254c0e43bbf5979f8b34ff0428ed6931"
    )
    module_builder.add_dependency(
        type=PYTHON_SDIST,
        id=Id(group_id="python", artifact_id="nose", version="1.2.1"),
        sha1="02cc3ffdd7a1ce92cbee388c4a9e939a79f66ba5",
        md5="735e3f1ce8b07e70ee1b742a8a53585a")

    bi_builder.add_module(module_builder.build())
    build_info = bi_builder.build()
    logging.debug(build_info_to_text(build_info))

    publish_build_info(
        username=args.username,
        password=args.password,
        repo_base_url=args.base_url,
        build_info=build_info,
        verify_cert=not args.ignore_cert_errors
    )
Ejemplo n.º 3
0
def _build_info(args):
    my_build_number = args.number
    my_build_name = args.name

    bi_builder = BuildInfo.Builder(
        version="2.2.2",
        name=my_build_name,
        number=my_build_number,
        # Looks like valid values are "GENERIC", "MAVEN", "ANT", "IVY" and
        # "GRADLE".
        type='GENERIC',
        # Looks like time format is very specific
        started="2013-03-21T10:49:01.143-0500",
        duration_millis=10000,
        artifactory_principal="dude",
        agent=Agent(name="defend_against_fruit", version="5.2"),
        build_agent=Agent(name="TeamCity", version="1.3"),
        build_retention=BuildRetention(
            count=-1,
            delete_build_artifacts=False,
            # Is this for TeamCity "pinned" builds?
            build_numbers_not_to_be_discarded=[111, 999]))
    module_builder = Module.Builder(id=Id(
        group_id="python", artifact_id="daf_fruit_dist", version="1.2.15"))
    module_builder.add_artifact(
        type=PYTHON_SDIST,
        name="daf_fruit_dist-1.2.15.tar.gz",
        sha1="0a66f5619bcce7a441740e154cd97bad04189d86",
        md5="2a17acbb714e7b696c58b4ca6e07c611")
    module_builder.add_artifact(
        type=PYTHON_FREEZE,
        name="daf_fruit_dist-1.2.15-requirements.txt",
        sha1="06e5f0080b6b15704be9d78e801813d802a90625",
        md5="254c0e43bbf5979f8b34ff0428ed6931")
    module_builder.add_dependency(
        type=PYTHON_SDIST,
        id=Id(group_id="python", artifact_id="nose", version="1.2.1"),
        sha1="02cc3ffdd7a1ce92cbee388c4a9e939a79f66ba5",
        md5="735e3f1ce8b07e70ee1b742a8a53585a")

    bi_builder.add_module(module_builder.build())
    build_info = bi_builder.build()
    logging.debug(build_info_to_text(build_info))

    publish_build_info(username=args.username,
                       password=args.password,
                       repo_base_url=args.base_url,
                       build_info=build_info,
                       verify_cert=not args.ignore_cert_errors)
Ejemplo n.º 4
0
def deploy_all_modules(module_order, env_info, verify_cert=True):
    build_info = _collect_build_info(module_order, env_info)

    logging.debug(
        os.linesep.join(('Build info:', build_info_to_text(build_info))))

    deploy_artifact, deploy_build_info = get_deploy_functions(
        env_info=env_info, verify_cert=verify_cert)

    def deploy_dist(module):
        path = compute_repo_path_from_module_name(module)
        return deploy_artifact(
            path=path, glob_patterns=[os.path.join(module, 'dist', '*')])

    deployed_files = []

    for module in module_order:
        deployed_files.extend(deploy_dist(module))

    deploy_build_info(build_info=build_info)

    return deployed_files