Пример #1
0
def create_milestone(**kwargs):
    """
    Create a new ProductMilestone
    """
    if not product_version_exists(kwargs.get('product_version_id')):
        logging.error("No ProductVersion exists with the ID {}.".format(
            kwargs.get('product_version_id')))
        return
    version = kwargs.get('version')

    if not utils.is_valid_version(version):
        logging.error("Version must start with a number, followed by a dot and then a qualifier (e.g ER1).")
        return
    base_version = str(productversions_api.get_specific(
        id=kwargs.get('product_version_id')).content.version)
    kwargs['version'] = base_version + "." + kwargs.get('version')
    created_milestone = create_milestone_object(**kwargs)
    response = utils.checked_api_call(
        milestones_api,
        'create_new',
        body=created_milestone)
    if response:
        return response.content
Пример #2
0
def create_release(**kwargs):
    """
    Create a new ProductRelease.
    A ProductRelease represents a build / set of builds that is ready for release to the public.
    Each ProductRelease is associated with exactly one ProductMilestone and exactly one ProductVersion.

    Example:
    ProductVersion: 1.0
    ProductMilestone: 1.0.0.CR2
    ProductRelease: 1.0.0.GA
    """
    version = kwargs.get('version')
    if not utils.is_valid_version(version):
        logging.error("Version must start with a number, followed by a dot and then a qualifier (e.g ER1).")
        return
    base_version = productversions_api.get_specific(
        id=kwargs.get('product_version_id')).content.version
    kwargs['version'] = base_version + '.' + kwargs.get('version')
    created_release = create_product_release_object(**kwargs)
    response = utils.checked_api_call(
        releases_api, 'create_new', body=created_release)
    if response:
        return response.content
Пример #3
0
def valid_version_update(version):
    if not utils.is_valid_version(version, '^\d+\.\d+\.\d+\.\w+$'):
        raise argparse.ArgumentTypeError(
            "The version should consist of three numeric parts and one alphanumeric qualifier each separated by a dot."
        )
    return version
Пример #4
0
def valid_version_create(version):
    if not utils.is_valid_version(version, '^\d+\.\w+$'):
        raise argparse.ArgumentTypeError(
            "Version must start with a number, followed by a dot and then a qualifier (e.g ER1)."
        )
    return version
Пример #5
0
def valid_version_two_digits(version):
    if not utils.is_valid_version(version, '^\d+\.\d+'):
        raise argparse.ArgumentTypeError(
            "Version should consist of two numeric parts separated by a dot.")
    return version
Пример #6
0
def valid_version_two_digits(version):
    if not utils.is_valid_version(version, '^\d+\.\d+'):
        raise argparse.ArgumentTypeError("Version should consist of two numeric parts separated by a dot.")
    return version
Пример #7
0
def valid_version_update(version):
    if not utils.is_valid_version(version, '^\d+\.\d+\.\d+\.\w+$'):
        raise argparse.ArgumentTypeError(
            "The version should consist of three numeric parts and one alphanumeric qualifier each separated by a dot.")
    return version
Пример #8
0
def valid_version_create(version):
    if not utils.is_valid_version(version, '^\d+\.\w+$'):
        raise argparse.ArgumentTypeError(
            "Version must start with a number, followed by a dot and then a qualifier (e.g ER1).")
    return version