You know how, despite insisting that you really need to upgrade and reconfigure some critical systems, there is always something even more pressing so it doesn't get done and then the whole thing catches on fire? That's what has happened to our custom-build Mailman subscription system. We had (and will soon have restored) a setup that allows people to choose from our 10+ announce-only style lists that takes care of some of the mundane details and records their mailman 2.x list memberships in a central database.
While the system has been offline for the past few weeks, we did set up a simple 'web survey form' to allow people to at least tell us which list(s) they wanted to get on or off of. Processing the removals was pretty simple, but processing the new subscriptions is going to be more difficult. From the 900+ responses collected, I can generate a list of email addresses that are to be added to a specific list (one set for nodigest, one set for digest) and can see some ways to add them, but nothing is fully satisfactory, and I could use some suggestions.
I could use the built-in web management page to 'mass subscribe'. This is straightforward, and allows users to skip the 'confirm' step which is a usual part of the subscription process. I suppose I can set the list default option to 'digest', then add that set and switch it back to the 'nodigest' option and import that set to get the correct subscribers. The problem is that the custom process assigns a password to the user which is also stored in the database system so that when they return to the signup, I can have the database send emails to mailman on the user's behalf. If I mass subscribe, each user gets a random (and unknown) password.
I know I can use some scripts from .../mailman/bin/ to change passwords for ALL subscribers and set them to specific values, but that will break pre-existing subscribers' passwords, and I can't do that.
I know I could walk through each subscription from the admin interface and set the password. That's going to be 3-4 clicks for well over 1000 subscription requests. Doable but tedious and ripe for human error.
Does anyone have a script or tool that would allow me to add a set of users and their passwords all at once?