view tools/fixroles.py @ 6643:5b71a50e833b

try to get more info on failing test looks like m is not being formatted for markdown2 test case. No idea why. Trying to make output more verbose to figure out what's happening. pip in ci reports version 2.4.2 of markdown2 according to: https://app.travis-ci.com/github/roundup-tracker/roundup/jobs/568309619 same version I run locally with python 3.6.9. Fails in CI on 3.6, 3.8, 3.10.4. python 2.7 works on with version 2.3.10 of markdown2
author John Rouillard <rouilj@ieee.org>
date Thu, 28 Apr 2022 00:19:52 -0400
parents 52c8324d1539
children
line wrap: on
line source

import sys

from roundup import admin

class AdminTool(admin.AdminTool):
    def __init__(self):
        self.commands = admin.CommandDict()
        for k in AdminTool.__dict__.keys():
            if k[:3] == 'do_':
                self.commands[k[3:]] = getattr(self, k)
        self.help = {}
        for k in AdminTool.__dict__.keys():
            if k[:5] == 'help_':
                self.help[k[5:]] = getattr(self, k)
        self.instance_home = ''
        self.db = None

    def do_fixroles(self, args):
        '''Usage: fixroles
        Set the roles property for all users to reasonable defaults.

        The admin user gets "Admin", the anonymous user gets "Anonymous"
        and all other users get "User".
        '''
        # get the user class
        cl = self.get_class('user')
        for userid in cl.list():
            username = cl.get(userid, 'username')
            if username == 'admin':
                roles = 'Admin'
            elif username == 'anonymous':
                roles = 'Anonymous'
            else:
                roles = 'User'
            cl.set(userid, roles=roles)
        return 0

if __name__ == '__main__':
    tool = AdminTool()
    sys.exit(tool.main())

Roundup Issue Tracker: http://roundup-tracker.org/