~launchpad-pqm/launchpad/devel

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/usr/bin/python -S
#
# Copyright 2010 Canonical Ltd.  This software is licensed under the
# GNU Affero General Public License version 3 (see the file LICENSE).

"""Process DistroSeriesDifferences."""

__metaclass__ = type

import _pythonpath

from lp.services.features import getFeatureFlag
from lp.services.job.runner import JobCronScript
from lp.soyuz.interfaces.distributionjob import (
    IDistroSeriesDifferenceJobSource,
    )
from lp.soyuz.model.distroseriesdifferencejob import (
    FEATURE_FLAG_ENABLE_MODULE,
    )


class RunDistroSeriesDifferenceJob(JobCronScript):
    """Run DistroSeriesDifferenceJob jobs."""

    config_name = 'distroseriesdifferencejob'
    source_interface = IDistroSeriesDifferenceJobSource

    def main(self):
        if not getFeatureFlag(FEATURE_FLAG_ENABLE_MODULE):
            self.logger.info("Feature flag is not enabled.")
            return
        super(RunDistroSeriesDifferenceJob, self).main()


if __name__ == '__main__':
    script = RunDistroSeriesDifferenceJob()
    script.lock_and_run()