mirror of
https://github.com/arcan1s/ahriman.git
synced 2025-07-16 07:19:57 +00:00
create user in docker container
also fix user reading and add nocolor flag by default
This commit is contained in:
@ -526,7 +526,7 @@ def _set_user_list_parser(root: SubParserAction) -> argparse.ArgumentParser:
|
||||
parser.add_argument("username", help="filter users by username", nargs="?")
|
||||
parser.add_argument("-r", "--role", help="filter users by role", type=UserAccess, choices=UserAccess)
|
||||
parser.set_defaults(handler=handlers.User, action=Action.List, architecture=[""], lock=None, no_report=True, # nosec
|
||||
password="", quiet=True, role=UserAccess.Read, unsafe=True)
|
||||
password="", quiet=True, unsafe=True)
|
||||
return parser
|
||||
|
||||
|
||||
@ -542,7 +542,7 @@ def _set_user_remove_parser(root: SubParserAction) -> argparse.ArgumentParser:
|
||||
parser.add_argument("username", help="username for web service")
|
||||
parser.add_argument("-s", "--secure", help="set file permissions to user-only", action="store_true")
|
||||
parser.set_defaults(handler=handlers.User, action=Action.Remove, architecture=[""], lock=None, no_report=True, # nosec
|
||||
password="", quiet=True, role=UserAccess.Read, unsafe=True)
|
||||
password="", quiet=True, unsafe=True)
|
||||
return parser
|
||||
|
||||
|
||||
|
@ -49,20 +49,21 @@ class User(Handler):
|
||||
:param no_report: force disable reporting
|
||||
:param unsafe: if set no user check will be performed before path creation
|
||||
"""
|
||||
salt = User.get_salt(configuration)
|
||||
user = User.user_create(args)
|
||||
|
||||
auth_configuration = User.configuration_get(configuration.include)
|
||||
database = SQLite.load(configuration)
|
||||
|
||||
if args.action == Action.List:
|
||||
for found_user in database.user_list(user.username, user.access):
|
||||
UserPrinter(found_user).print(verbose=True)
|
||||
elif args.action == Action.Remove:
|
||||
database.user_remove(user.username)
|
||||
elif args.action == Action.Update:
|
||||
if args.action == Action.Update:
|
||||
salt = User.get_salt(configuration)
|
||||
user = User.user_create(args)
|
||||
|
||||
auth_configuration = User.configuration_get(configuration.include)
|
||||
|
||||
User.configuration_create(auth_configuration, user, salt, args.as_service, args.secure)
|
||||
database.user_update(user.hash_password(salt))
|
||||
elif args.action == Action.List:
|
||||
for found_user in database.user_list(args.username, args.access):
|
||||
UserPrinter(found_user).print(verbose=True)
|
||||
elif args.action == Action.Remove:
|
||||
database.user_remove(args.username)
|
||||
|
||||
@staticmethod
|
||||
def configuration_create(configuration: Configuration, user: MUser, salt: str,
|
||||
|
Reference in New Issue
Block a user