@Override
    public void configure(final Subparser subparser) {
        super.configure(subparser);

        subparser.addArgument(asArg('u', USERNAME_ARG_NAME))
                .dest(USERNAME_ARG_NAME)
                .type(String.class)
                .required(true)
                .help("The user id of the account, e.g. 'admin'");

        subparser.addArgument(asArg('p', PASSWORD_ARG_NAME))
                .dest(PASSWORD_ARG_NAME)
                .type(String.class)
                .required(false)
                .help("The password for the account");

        subparser.addArgument(asArg('e', EMAIL_ARG_NAME))
                .dest(EMAIL_ARG_NAME)
                .type(String.class)
                .required(false)
                .help("The email address for the account");

        subparser.addArgument(asArg('f', FIRST_NAME_ARG_NAME))
                .dest(FIRST_NAME_ARG_NAME)
                .type(String.class)
                .required(false)
                .help("The user's first name");

        subparser.addArgument(asArg('s', LAST_NAME_ARG_NAME))
                .dest(FIRST_NAME_ARG_NAME)
                .type(String.class)
                .required(false)
                .help("The user's last name");

        subparser.addArgument(asArg(NO_PASSWORD_CHANGE))
                .dest(NO_PASSWORD_CHANGE)
                .action(Arguments.storeTrue())
                .setDefault(false)
                .required(false)
                .help("If set do not require a password change on first login");

        subparser.addArgument(asArg(NEVER_EXPIRES_CHANGE_ARG_NAME))
                .dest(NEVER_EXPIRES_CHANGE_ARG_NAME)
                .action(Arguments.storeTrue())
                .required(false)
                .help("The account will never expire");
    }
Creates an account in the internal identity provider
stroom-app/src/main/java/stroom/app/commands/CreateAccountCommand.java