aboutsummaryrefslogtreecommitdiffstats
path: root/rrs/tools/rrs_distros.py
diff options
context:
space:
mode:
Diffstat (limited to 'rrs/tools/rrs_distros.py')
-rwxr-xr-xrrs/tools/rrs_distros.py18
1 files changed, 14 insertions, 4 deletions
diff --git a/rrs/tools/rrs_distros.py b/rrs/tools/rrs_distros.py
index d4400dec6b..d408b330c6 100755
--- a/rrs/tools/rrs_distros.py
+++ b/rrs/tools/rrs_distros.py
@@ -92,13 +92,23 @@ if __name__=="__main__":
help = "Do not write any data back to the database",
action="store_true", dest="dry_run", default=False)
+ parser.add_option("-p", "--plan",
+ help="Specify maintenance plan to operate on (default is all plans that have updates enabled)",
+ action="store", dest="plan", default=None)
+
options, args = parser.parse_args(sys.argv)
logger.setLevel(options.loglevel)
- maintplans = MaintenancePlan.objects.filter(updates_enabled=True)
- if not maintplans.exists():
- logger.error('No enabled maintenance plans found')
- sys.exit(1)
+ if options.plan:
+ maintplans = MaintenancePlan.objects.filter(id=int(options.plan))
+ if not maintplans.exists():
+ logger.error('No maintenance plan with ID %s found' % options.plan)
+ sys.exit(1)
+ else:
+ maintplans = MaintenancePlan.objects.filter(updates_enabled=True)
+ if not maintplans.exists():
+ logger.error('No enabled maintenance plans found')
+ sys.exit(1)
logger.debug("Starting recipe distros update ...")