コード例 #1
0
ファイル: regen_rrds.py プロジェクト: EvaSDK/euscan
def regen_rrds(logger=None):
    """
    Regenerates the rrd database
    """

    if logger is None:
        logger = FakeLogger()

    logger.info("Regenering RRDs for world")
    for wlog in WorldLog.objects.all():
        charts.rrd_update('world', wlog.datetime, wlog)

    logger.info("Regenering RRDs for categories")
    for clog in CategoryLog.objects.all():
        charts.rrd_update('category-%s' % clog.category,
                          clog.datetime, clog)

    logger.info("Regenering RRDs for herds")
    for hlog in HerdLog.objects.all():
        charts.rrd_update('herd-%d' % hlog.herd.id, hlog.datetime, hlog)

    logger.info("Regenering RRDs for maintainers")
    for mlog in MaintainerLog.objects.all():
        charts.rrd_update('maintainer-%d' % mlog.maintainer.id,
                          mlog.datetime, mlog)
コード例 #2
0
def stabilization_candidates(days_to_candidate=30, logger=None):
    """
    Collect stabilization candidates
    """

    if logger is None:
        logger = FakeLogger()

    date_diff = datetime.utcnow() - timedelta(days=days_to_candidate)
    date_limit = date_diff.date()

    logger.info("Collecting stabilization candidates - date_limit=%s", str(date_limit))

    # Set all versions to not be stabilization_candidates
    # Version.objects.update(stabilization_candidate=False)

    # For every version check if it's unstable.
    # If it is then check if can be a stabilization candidate
    versions = Version.objects.filter(overlay="gentoo").filter(Q(vtype="release") | Q(vtype="p"))
    for version in versions:
        pkg = Package(version.cpv())
        try:
            keywords = pkg.environment("KEYWORDS").split()
        except GentoolkitFatalError:
            logger.warning("Error while processing %s!", version)
            continue
        if all([x.startswith("~") for x in keywords]):
            version_date = get_version_date(version, date_limit)
            if version_date:
                logger.info("+ [s] %s @ %s", version, version_date)
                # XXX: What should we save? A flag and the date?Just the date?
                version.stabilization_candidate = version_date
                version.save()

    logger.info("Finished collecting stabilization candidates")
コード例 #3
0
def stabilization_candidates(days_to_candidate=30, logger=None):
    """
    Collect stabilization candidates
    """

    if logger is None:
        logger = FakeLogger()

    date_diff = (datetime.utcnow() - timedelta(days=days_to_candidate))
    date_limit = date_diff.date()

    logger.info("Collecting stabilization candidates - date_limit=%s",
                str(date_limit))

    # Set all versions to not be stabilization_candidates
    #Version.objects.update(stabilization_candidate=False)

    # For every version check if it's unstable.
    # If it is then check if can be a stabilization candidate
    versions = Version.objects.filter(overlay='gentoo').filter(
        Q(vtype='release') | Q(vtype='p'))
    for version in versions:
        pkg = Package(version.cpv())
        try:
            keywords = pkg.environment("KEYWORDS").split()
        except GentoolkitFatalError:
            logger.warning("Error while processing %s!", version)
            continue
        if all([x.startswith("~") for x in keywords]):
            version_date = get_version_date(version, date_limit)
            if version_date:
                logger.info('+ [s] %s @ %s', version, version_date)
                # XXX: What should we save? A flag and the date?Just the date?
                version.stabilization_candidate = version_date
                version.save()

    logger.info("Finished collecting stabilization candidates")