What is LoCo Lint?

LoCo Lint is a tool to help the members, administrators, and the LoCo Council better use Launchpad. LoCo Lint allows structured input, and simple questions. The rest will be done by the script.


Installing the tool should be easy. LoCo Lint is not in the Ubuntu repositories, so you will have to add a PPA to install it. These commands should take care of it:

sudo apt-add-repository ppa:paultag/locotools
sudo apt-get update
sudo apt-get install locolint

LoCo Lint is now installed on your machine.


This section will cover the LoCoCouncil usage of lintco -- LoCo Lint's main tool.

Cleaning the lp:~locoteams queue

To approve process the queue, run the command:

lintco cleanup

The output ( if a person is trying to join ) should look a bit like:

N: Connecting to Launchpad...
N: Identified as Paul Tagliamonte!
N: You're on the council. Let's go and process the teams
N: We have a person attempting to join: xxxx
N: Processed and Denied
N: Finished processing the queue.

This will decline the member, automagically, with a canned response.

At the time of this writing, the message looks like:

 This is a semi-automated message. This team was set up for other LoCo
teams. Seeing as how you are an individual, please join the LoCo team
that you are most close to. Many thanks!

Here's a list of what it takes for this script to approve a team:

Thing Joining
















As you can see, it will only approve a team if the name is lint-free. People will never be approved, and non-standard teams will stay in the queue, and be reminded to fix their name before they can be approved.

Generating a list of all Non-standard Teams

lintco name-lint

You may pass this through and grep against it, for a plain text list, for example:

lintco name-lint | grep E:\  | awk '{print $2}'

Filing a new re-verification report

To file a new report, you should run the command:

lintco re-app ubuntu-XY

where ubuntu-XY is the team's name.

N: Connecting to Launchpad...
N: Identified as Paul Tagliamonte!
N: We will be subscribing Joe Q. Hacker ( joe-q-hacker ) to this report.
N: The bug's title will be "Re-approval, ubuntu-XY"
N: The bug's tags will be set to "reapproval"
N: Great. Note that you have filed LP Bug #nnnnn
N: Quick Link: https://launchpad.net/bugs/nnnnn

This will file a new report. This is what the template looks like:

LP Link: http://launchpad.net/~ubuntu-XY

Re-approval task bug.
This bug will be used to track the progress of the re-approval,
and make sure that every team gets the needed follow-through.
This bug will also allow us to keep a record of who was approved
and re-approved when. Please keep in mind the only people who should
be subscribed are the LoCo Council, and the team Contact. This bug will
also be kept private, for council use.

Your cooperation is thanked kindly in advance,
The Ubuntu LoCo Council

The LoCo Council, and the team's Owner on Launchpad will be subscribed to the report.

Listing pending re-verifications ( by bug report )

To kick off a check for all pending re-approval bugs, run the command

lintco pending-apps

That will return a list of the teams in the following format:

N: Connecting to Launchpad...
N: Identified as Paul Tagliamonte!
N: Bug #aaaaaa in Ubuntu LoCo Teams: "Re-approval, ubuntu-AB"
N: Bug #bbbbbb in Ubuntu LoCo Teams: "Re-approval, ubuntu-CD"
N: Bug #cccccc in Ubuntu LoCo Teams: "Re-approval, ubuntu-EF"
N: Bug #dddddd in Ubuntu LoCo Teams: "Re-approval, ubuntu-GH"
N: Bug #eeeeee in Ubuntu LoCo Teams: "Re-approval, ubuntu-IJ"
N: Bug #ffffff in Ubuntu LoCo Teams: "Re-approval, ubuntu-KL"


If you ever get stressed out, try running

lintco moo

which should output something like:

N:        ...---...
N:     ../  / | \  \..
N:   ./ /  /  |  \  \ \.
N:  /  /   /  |  \   \  \
N: /  /   /   |   \   \  \
N: ^^^^^^^^^^^^^^^^^^^^^^^
N: \          |          /
N:  \         |         /
N:   \        |        /
N:    \       |       /
N:     \      |      /
N:      \     |     /
N:       \    |    /
N:        \   |   /
N:         \  |  /
N:          \ | /(__)
N:           \|/ (oo)
N:        /---++--\/
N:       / |  || ||
N:      *  ||-++-||
N:         ^^    ^^

LoCoCouncil/LoCoLint (last edited 2013-10-09 21:23:34 by jose)