Output Ubuntu Server Launchpad bugs that for triage. The script is used by members of the Ubuntu Server team to determine what Launchpad bugs to review on a particular day or range of days. Giving us programmatic access to a set of bugs to look at. The older method was to look at this page and manually find all the bugs corresponding to a particular bug.
The easiest way to obtain the script and keep it updated is to use the snap:
sudo snap install ustriage --classic
If using the snap is not possible, you can instead obtain and run it by:
wget https://raw.githubusercontent.com/powersj/ubuntu-server-triage/master/ustriage/ustriage.py
chmod +x ustriage.py
# Running with no arguments will get previous day's bugs
./ustriage.py
Dates must follow the format: %Y-%m-%d
(e.g. 2016-11-30, 1999-05-22)
If only one date is given then all the bugs on that one day will be found. For example, the following finds all bugs last modified on only the 10th of September:
./ustriage.py 2016-09-10
If two dates are given then all the bugs found on those days and between (fully inclusive) wil be found. For example, the following, finds all bugs last modified on the 10th, 11th, and 12th of September:
./ustriage.py 2016-09-10 2016-09-12
By default the script outputs links of the form "LP: #XXXXXX". Ubuntu's
default browser, gnome-terminal, makes these appear as hyperlinks
automatically, saving space and leaving more for the bug titles. If
instead you'd like full URLs, use --fullurls
.
Quite commonly the triager wants to open all bugs in the browser, to read, review and manage them. Via open
argument that can be done automatically.
./ustriage.py --open 2016-09-10 2016-09-12
By default this searches for the structural subscription of the ubuntu-server Team.
But depending on the use case one might overwrite the team name with --lpname
(which can be any launchpad user, doesn't have to be a Team).
Additionally, especially when setting a personal name it is common that the filter should be switched to check for bug subscription instead of a structural subscription which can be done via --bugsubscriber
.
show all bugs user paelzer is subscribed to (without date modification filter)
./ustriage.py --lpname paelzer --bugsubscriber
show all bugs user paelzer is subscribed to that were modified last month
./ustriage.py --lpname paelzer --bugsubscriber 2016-08-20 2016-09-20
To have some kind of tracking of the bugs subscribed by ubuntu-server as well as those tagged server-next we have to make sure that we identify those that are dormant for too long. Therefore by default bug expiration info is now added to the output by default.
Since these lists can be rather huge they are not opened in a browser by default. But if wanted a user can set the option --open-expire
./ustriage.py 2016-09-10 2016-09-12 --open-expire
If instead a user is not interested at all in the expiration he can disable the report by --no-expiration
./ustriage.py 2016-09-10 2016-09-12 --no-expiration
The expiration is defined as 60 days of inactivity in server-next tagged bugs, and 180 days for the other ubuntu-server subscribed bugs. These durations as well as the tag it considers for the "active" list can be tuned via the arguments, --expire-next, --expire and --tag-next. This can be combined with a custom bug subscriber to be useful outside of the server team triage. So the following example for example will list any bugs subscribed by hardcoredev which are inactive for 5 or more days with the tag super-urgent.
./ustriage.py 2016-09-10 2016-09-12 --expire-next 5 --tag-next super-urgent --bugsubscriber hardcoredev