Source code for src.create

import argparse

from src.utils.get_mode_options import get_mode_options
from src.utils.create_space import create_space, prepare_payload
from src.utils.create_users import User


[docs]def main() -> None: parser = argparse.ArgumentParser( prog='create.py', usage='%(prog)s [options]', description='Create a Kibana Spaces and Elasticsearch Users.', epilog='Enjoy the program! :)', ) parser.add_argument( 'mode', type=str, choices=['space', 'user'], help='The mode to run the script in. Required.', ) args = parser.parse_args() mode = args.mode if mode == 'space': space_id, space_name, description, initials, color, disabled_features, image_url = get_mode_options("space") payload = prepare_payload( space_id=space_id, space_name=space_name, description=description, initials=initials, color=color, disabled_features=disabled_features, image_url=image_url, ) create_space(payload) elif mode == 'user': username, roles, password, password_hash, full_name, email, metadata, enabled = get_mode_options("user") user = User( username=username, roles=roles, password=password, password_hash=password_hash, full_name=full_name, email=email, metadata=metadata, enabled=enabled, ) user.create() else: raise ValueError(f"Invalid mode: {mode}, must be one of 'space' or 'user'")
if __name__ == '__main__': main()