class Create(UserAction): description = _('create user') def __init__(self): super(Create, self).__init__() self.about_api = AboutAPI() def setup_parser(self, parser): mode = get_katello_mode() parser.add_option('--username', dest='username', help=_("user name (required)")) parser.add_option('--password', dest='password', help=_("initial password (required)")) parser.add_option('--email', dest='email', help=_("email (required)")) parser.add_option("--disabled", dest="disabled", type="bool", help=_("disabled account (default is 'false')"), default=False) parser.add_option('--default_organization', dest='default_organization', help=_("user's default organization name")) if mode == 'katello': parser.add_option('--default_environment', dest='default_environment', help=_("user's default environment name")) parser.add_option('--default_locale', dest='default_locale', help=_("user's default locale")) def check_options(self, validator): auth = self.about_api.authentication_method() validator.require('username') if not auth == 'ldap': validator.require(('password', 'email')) validator.require_all_or_none(('default_organization', 'default_environment')) def run(self): username = self.get_option('username') password = self.get_option('password') email = self.get_option('email') disabled = self.get_option('disabled') default_organization = self.get_option('default_organization') default_environment = self.get_option('default_environment') default_locale = self.get_option('default_locale') if default_environment is not None: environment = get_environment(default_organization, default_environment) else: environment = None user = self.api.create(username, password, email, disabled, environment, default_locale) test_record(user, _("Successfully created user [ %s ]") % username, _("Could not create user [ %s ]") % username )
def __init__(self): super(Create, self).__init__() self.about_api = AboutAPI()