зеркало из https://github.com/mozilla/bugbot.git
Make dryrun the default (#1334)
* Make dryrun the default And add a "--production" option to actually enable making changes Fixes #1333 * Remove short version of the '--production' argument to avoid footgun Co-authored-by: Suhaib Mujahid <suhaibmujahid@gmail.com>
This commit is contained in:
Родитель
63a9db6109
Коммит
d23b911d8a
|
@ -623,11 +623,10 @@ class BzCleaner(object):
|
|||
"""Get the argumends from the command line"""
|
||||
parser = argparse.ArgumentParser(description=self.description())
|
||||
parser.add_argument(
|
||||
"-d",
|
||||
"--dryrun",
|
||||
"--production",
|
||||
dest="dryrun",
|
||||
action="store_true",
|
||||
help="Just do the query, and print emails to console without emailing anyone",
|
||||
action="store_false",
|
||||
help="If the flag is not passed, just do the query, and print emails to console without emailing anyone",
|
||||
)
|
||||
|
||||
if not self.ignore_date():
|
||||
|
|
|
@ -32,11 +32,10 @@ class MultiNaggers(object):
|
|||
"""Get the argumends from the command line"""
|
||||
parser = argparse.ArgumentParser(description=self.description())
|
||||
parser.add_argument(
|
||||
"-d",
|
||||
"--dryrun",
|
||||
"--production",
|
||||
dest="dryrun",
|
||||
action="store_true",
|
||||
help="Just do the query, and print emails to console without emailing anyone",
|
||||
action="store_false",
|
||||
help="If the flag is not passed, just do the query, and print emails to console without emailing anyone",
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
|
|
|
@ -75,11 +75,10 @@ def check_dates(dryrun=False):
|
|||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser(description="Check if next release date is ok")
|
||||
parser.add_argument(
|
||||
"-d",
|
||||
"--dryrun",
|
||||
"--production",
|
||||
dest="dryrun",
|
||||
action="store_true",
|
||||
help="Just do the query, and print emails to console without emailing anyone",
|
||||
action="store_false",
|
||||
help="If the flag is not passed, just do the query, and print emails to console without emailing anyone",
|
||||
)
|
||||
args = parser.parse_args()
|
||||
try:
|
||||
|
|
|
@ -32,11 +32,10 @@ def check_people(date, dryrun=False):
|
|||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser(description="Check if next release date is ok")
|
||||
parser.add_argument(
|
||||
"-d",
|
||||
"--dryrun",
|
||||
"--production",
|
||||
dest="dryrun",
|
||||
action="store_true",
|
||||
help="Just do the query, and print emails to console without emailing anyone",
|
||||
action="store_false",
|
||||
help="If the flag is not passed, just do the query, and print emails to console without emailing anyone",
|
||||
)
|
||||
parser.add_argument(
|
||||
"-D",
|
||||
|
|
|
@ -14,7 +14,7 @@ pip install -r requirements.txt
|
|||
python -m auto_nag.log --clean
|
||||
|
||||
# Close inactive intermittent bugs
|
||||
python -m auto_nag.scripts.close_intermittents
|
||||
python -m auto_nag.scripts.close_intermittents --production
|
||||
|
||||
# Send a mail if the logs are not empty
|
||||
# MUST ALWAYS BE THE LAST COMMAND
|
||||
|
|
|
@ -15,7 +15,7 @@ python -m auto_nag.log --clean
|
|||
|
||||
# Code freeze week information for release managers
|
||||
# Daily (but really runs during the soft freeze week)
|
||||
python -m auto_nag.scripts.code_freeze_week -D yesterday
|
||||
python -m auto_nag.scripts.code_freeze_week -D yesterday --production
|
||||
|
||||
# Send a mail if the logs are not empty
|
||||
# MUST ALWAYS BE THE LAST COMMAND
|
||||
|
|
|
@ -14,7 +14,7 @@ pip install -r requirements.txt
|
|||
python -m auto_nag.log --clean
|
||||
|
||||
# Close inactive intermittent bugs
|
||||
python -m auto_nag.scripts.survey_sec_bugs
|
||||
python -m auto_nag.scripts.survey_sec_bugs --production
|
||||
|
||||
# Send a mail if the logs are not empty
|
||||
# MUST ALWAYS BE THE LAST COMMAND
|
||||
|
|
|
@ -14,135 +14,135 @@ python -m auto_nag.log --clean
|
|||
|
||||
# Not up-to-date release date
|
||||
# Daily
|
||||
python -m auto_nag.next_release
|
||||
python -m auto_nag.next_release --production
|
||||
|
||||
# Send a todo list to set priority
|
||||
# Daily
|
||||
python -m auto_nag.scripts.to_triage
|
||||
python -m auto_nag.scripts.to_triage --production
|
||||
|
||||
# Nag triage fallback to update calendar
|
||||
# Daily
|
||||
python -m auto_nag.round_robin_fallback
|
||||
python -m auto_nag.round_robin_fallback --production
|
||||
|
||||
# Needinfo assignee when a patch could be uplifted to beta
|
||||
# Daily
|
||||
python -m auto_nag.scripts.uplift_beta
|
||||
python -m auto_nag.scripts.uplift_beta --production
|
||||
|
||||
# What is fixed in nightly but affecting beta or release
|
||||
# Daily
|
||||
python -m auto_nag.scripts.missed_uplifts
|
||||
python -m auto_nag.scripts.missed_uplifts --production
|
||||
|
||||
# Top crash with an incorrect severity
|
||||
# Pretty rare
|
||||
python -m auto_nag.scripts.topcrash_bad_severity
|
||||
python -m auto_nag.scripts.topcrash_bad_severity --production
|
||||
|
||||
# Bug with both the regression and feature keywords
|
||||
# Pretty rare
|
||||
python -m auto_nag.scripts.feature_regression
|
||||
python -m auto_nag.scripts.feature_regression --production
|
||||
|
||||
# Detect one word summary
|
||||
# a bit rare
|
||||
python -m auto_nag.scripts.one_two_word_summary
|
||||
python -m auto_nag.scripts.one_two_word_summary --production
|
||||
|
||||
# Bugs where the reporter has a needinfo
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.reporter_with_ni
|
||||
python -m auto_nag.scripts.reporter_with_ni --production
|
||||
|
||||
# Notify bugs in untriaged with an important severity
|
||||
python -m auto_nag.scripts.untriage_important_sev
|
||||
python -m auto_nag.scripts.untriage_important_sev --production
|
||||
|
||||
# Needinfo the assignee or the triage owner when a bug has leave-open keyword an no activity
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.leave_open_no_activity
|
||||
python -m auto_nag.scripts.leave_open_no_activity --production
|
||||
|
||||
# Needinfo the triage owner or the assignee when we find meta bugs not depending on bugs and no activity
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.meta_no_deps_no_activity
|
||||
python -m auto_nag.scripts.meta_no_deps_no_activity --production
|
||||
|
||||
# Several tools here
|
||||
# 1) has an unlanded patch or some flags not up-to-date
|
||||
# Pretty rare
|
||||
# 2) Tracked bugs
|
||||
# 3) Tracked bugs with needinfos
|
||||
python -m auto_nag.scripts.multi_nag
|
||||
python -m auto_nag.scripts.multi_nag --production
|
||||
|
||||
# has a r+ patch, is open, has no activity for few weeks
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.not_landed
|
||||
python -m auto_nag.scripts.not_landed --production
|
||||
|
||||
# New workflow
|
||||
# https://docs.google.com/document/d/1EHuWa-uR-7Sq63X1ZiDN1mvJ9gQtWiqYrCifkySJyW0/edit#
|
||||
# https://docs.google.com/drawings/d/1oZA-AUvkOxGMNhZNofL8Wlfk6ol3o5ATQCV5DJJKbwM/edit
|
||||
python -m auto_nag.scripts.workflow.multi_nag
|
||||
python -m auto_nag.scripts.workflow.multi_nag --production
|
||||
|
||||
# Defect or task with the "feature" keyword
|
||||
python -m auto_nag.scripts.feature_but_type_defect_task
|
||||
python -m auto_nag.scripts.feature_but_type_defect_task --production
|
||||
|
||||
# Defect with the "meta" keyword
|
||||
python -m auto_nag.scripts.meta_defect
|
||||
python -m auto_nag.scripts.meta_defect --production
|
||||
|
||||
# Bugs with several duplicates
|
||||
python -m auto_nag.scripts.several_dups
|
||||
python -m auto_nag.scripts.several_dups --production
|
||||
|
||||
# Bugs with a lot of cc
|
||||
python -m auto_nag.scripts.lot_of_cc
|
||||
python -m auto_nag.scripts.lot_of_cc --production
|
||||
|
||||
# Bugs with a lot of votes
|
||||
python -m auto_nag.scripts.lot_of_votes
|
||||
python -m auto_nag.scripts.lot_of_votes --production
|
||||
|
||||
# reporter has a needinfo and no activity for the last X weeks
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.newbie_with_ni -d
|
||||
python -m auto_nag.scripts.newbie_with_ni
|
||||
|
||||
# Bug caused several regressions recently reported
|
||||
# Pretty rare
|
||||
python -m auto_nag.scripts.warn_regressed_by
|
||||
python -m auto_nag.scripts.warn_regressed_by --production
|
||||
|
||||
# Defect starting with please or enable in the title
|
||||
python -m auto_nag.scripts.defect_with_please_or_enable
|
||||
python -m auto_nag.scripts.defect_with_please_or_enable --production
|
||||
|
||||
# Regressions without regressed_by and some dependencies (blocks, depends_on)
|
||||
# Pretty rare
|
||||
python -m auto_nag.scripts.regression_without_regressed_by
|
||||
python -m auto_nag.scripts.regression_without_regressed_by --production
|
||||
|
||||
# Bugs with a fuzzing bisection but without regressed_by
|
||||
python -m auto_nag.scripts.fuzzing_bisection_without_regressed_by
|
||||
python -m auto_nag.scripts.fuzzing_bisection_without_regressed_by --production
|
||||
|
||||
# Suggest components for untriaged bugs (daily, full list without confidence threshold)
|
||||
python -m auto_nag.scripts.component --frequency daily
|
||||
python -m auto_nag.scripts.component --frequency daily --production
|
||||
|
||||
# Try to detect potential wrong bug types using bugbug
|
||||
python -m auto_nag.scripts.defectenhancementtask
|
||||
python -m auto_nag.scripts.defectenhancementtask --production
|
||||
|
||||
# Try to detect potential missing Has STR using bugbug
|
||||
python -m auto_nag.scripts.stepstoreproduce
|
||||
python -m auto_nag.scripts.stepstoreproduce --production
|
||||
|
||||
# Unassign inactive bugs with the good-first-bug keyword
|
||||
python -m auto_nag.scripts.good_first_bug_unassign_inactive
|
||||
python -m auto_nag.scripts.good_first_bug_unassign_inactive --production
|
||||
|
||||
# Look for missing bugzilla comments for recently-landed changesets
|
||||
python -m auto_nag.scripts.missed_landing_comment
|
||||
python -m auto_nag.scripts.missed_landing_comment --production
|
||||
|
||||
# Look for recently landed changesets referencing leave-open security bugs
|
||||
python -m auto_nag.scripts.leave_open_sec
|
||||
python -m auto_nag.scripts.leave_open_sec --production
|
||||
|
||||
# Look for recent PDF.js updates that fix some bug
|
||||
python -m auto_nag.scripts.pdfjs_update
|
||||
python -m auto_nag.scripts.pdfjs_update --production
|
||||
|
||||
# Look for tracked bugs with a needinfo from a release manager
|
||||
python -m auto_nag.scripts.ni_from_manager
|
||||
python -m auto_nag.scripts.ni_from_manager --production
|
||||
|
||||
# Approve tracking request for bugs automatically filed for expiring telemetry probes
|
||||
python -m auto_nag.scripts.telemetry_expiry_tracking_autoapproval
|
||||
python -m auto_nag.scripts.telemetry_expiry_tracking_autoapproval --production
|
||||
|
||||
# Set "Has Regression Range" to "yes" on bugs where "Regressed By" is set
|
||||
python -m auto_nag.scripts.regressed_by_no_has_regression_range
|
||||
python -m auto_nag.scripts.regressed_by_no_has_regression_range --production
|
||||
|
||||
# Needinfo triage owner on bugs assigned to inactive accounts
|
||||
python -m auto_nag.scripts.assignee_no_login
|
||||
python -m auto_nag.scripts.assignee_no_login --production
|
||||
|
||||
# Needinfo for bugs with inconsistent severity flags
|
||||
python -m auto_nag.scripts.severity_inconsistency
|
||||
python -m auto_nag.scripts.severity_inconsistency --production
|
||||
|
||||
# Needinfo for bugs with underestimated severity levels
|
||||
python -m auto_nag.scripts.severity_underestimated
|
||||
|
|
|
@ -11,11 +11,11 @@ python -m auto_nag.log --clean
|
|||
|
||||
# Bug fixed without assignee
|
||||
# very common
|
||||
python -m auto_nag.scripts.no_assignee
|
||||
python -m auto_nag.scripts.no_assignee --production
|
||||
|
||||
# Bug closed with the leave open keyword
|
||||
# very common
|
||||
python -m auto_nag.scripts.leave_open
|
||||
python -m auto_nag.scripts.leave_open --production
|
||||
|
||||
# has a STR without flag has_str
|
||||
# common
|
||||
|
@ -23,76 +23,76 @@ python -m auto_nag.scripts.leave_open
|
|||
|
||||
# Closes crash bug without any crashes for the last 12 weeks
|
||||
# pretty common
|
||||
python -m auto_nag.scripts.no_crashes
|
||||
python -m auto_nag.scripts.no_crashes --production
|
||||
|
||||
# List bug with the meta keyword but not [meta] in the title
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.meta_summary_missing
|
||||
python -m auto_nag.scripts.meta_summary_missing --production
|
||||
|
||||
# List bug without the meta keyword with [meta] in the title (with autofix)
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.summary_meta_missing
|
||||
python -m auto_nag.scripts.summary_meta_missing --production
|
||||
|
||||
# List reopened bugs with invalid nightly status flag
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.nightly_reopened
|
||||
python -m auto_nag.scripts.nightly_reopened --production
|
||||
|
||||
# Bug closed with the stalled keyword
|
||||
# Pretty rare
|
||||
python -m auto_nag.scripts.stalled
|
||||
python -m auto_nag.scripts.stalled --production
|
||||
|
||||
# Bugs with missing beta status
|
||||
# Pretty rare
|
||||
python -m auto_nag.scripts.missing_beta_status
|
||||
python -m auto_nag.scripts.missing_beta_status --production
|
||||
|
||||
# Try to detect potential regressions using bugbug
|
||||
python -m auto_nag.scripts.regression
|
||||
python -m auto_nag.scripts.regression --production
|
||||
|
||||
# Bugs with STR and no regression-range
|
||||
# Pretty rare
|
||||
python -m auto_nag.scripts.has_str_no_range
|
||||
python -m auto_nag.scripts.has_str_no_range --production
|
||||
|
||||
# Notify bugs tracked (+ or blocking)
|
||||
# with P3, P4 or P5 priorities for the ongoing releases
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.mismatch_priority_tracking_esr
|
||||
python -m auto_nag.scripts.mismatch_priority_tracking_release
|
||||
python -m auto_nag.scripts.mismatch_priority_tracking_beta
|
||||
python -m auto_nag.scripts.mismatch_priority_tracking_nightly
|
||||
python -m auto_nag.scripts.mismatch_priority_tracking_esr --production
|
||||
python -m auto_nag.scripts.mismatch_priority_tracking_release --production
|
||||
python -m auto_nag.scripts.mismatch_priority_tracking_beta --production
|
||||
python -m auto_nag.scripts.mismatch_priority_tracking_nightly --production
|
||||
|
||||
# Bug is tracked for a release but the bug severity is small
|
||||
# pretty common
|
||||
python -m auto_nag.scripts.tracked_bad_severity
|
||||
python -m auto_nag.scripts.tracked_bad_severity --production
|
||||
|
||||
# Move info (signatures, product/component) from/to bugs & their dups
|
||||
# Pretty common
|
||||
python -m auto_nag.scripts.copy_duplicate_info
|
||||
python -m auto_nag.scripts.copy_duplicate_info --production
|
||||
|
||||
# Enhancement or task with the "regression" keyword
|
||||
python -m auto_nag.scripts.regression_but_type_enhancement_task
|
||||
python -m auto_nag.scripts.regression_but_type_enhancement_task --production
|
||||
|
||||
# Move dupeme from whiteboard to keyword
|
||||
# Pretty rare
|
||||
python -m auto_nag.scripts.dupeme_whiteboard_keyword
|
||||
python -m auto_nag.scripts.dupeme_whiteboard_keyword --production
|
||||
|
||||
# Remove dupeme keyword when the bug is closed
|
||||
# Pretty rare
|
||||
python -m auto_nag.scripts.closed_dupeme
|
||||
python -m auto_nag.scripts.closed_dupeme --production
|
||||
|
||||
# Detect spam bugs using bugbug
|
||||
python -m auto_nag.scripts.spambug
|
||||
python -m auto_nag.scripts.spambug --production
|
||||
|
||||
# Suggest components for untriaged bugs (hourly, list only bugs on which we acted)
|
||||
python -m auto_nag.scripts.component --frequency hourly
|
||||
python -m auto_nag.scripts.component --frequency hourly --production
|
||||
|
||||
# MUST ALWAYS BE AFTER COMPONENTS (to reset the priority if mandatory)
|
||||
# Reset the priority if the product::component changed after the priority has been set
|
||||
python -m auto_nag.scripts.prod_comp_changed_with_priority
|
||||
python -m auto_nag.scripts.prod_comp_changed_with_priority --production
|
||||
|
||||
# Update status flags for regressions based on their regressor
|
||||
python -m auto_nag.scripts.regression_set_status_flags
|
||||
python -m auto_nag.scripts.regression_set_status_flags --production
|
||||
|
||||
python -m auto_nag.scripts.needinfo_regression_author
|
||||
python -m auto_nag.scripts.needinfo_regression_author --production
|
||||
|
||||
# Send a mail if the logs are not empty
|
||||
# MUST ALWAYS BE THE LAST COMMAND
|
||||
|
|
Загрузка…
Ссылка в новой задаче