Files
matomo-bootstrap/src/matomo_bootstrap/bootstrap.py

36 lines
951 B
Python
Raw Normal View History

2025-12-23 11:14:24 +01:00
from argparse import Namespace
from .health import assert_matomo_ready
from .http import HttpClient
from .api_tokens import create_app_token
from .install.web_installer import ensure_installed
def run_bootstrap(args: Namespace) -> str:
# 1. Matomo erreichbar?
assert_matomo_ready(args.base_url, timeout=args.timeout)
# 2. Installation sicherstellen (NO-OP wenn bereits installiert)
ensure_installed(
base_url=args.base_url,
admin_user=args.admin_user,
admin_password=args.admin_password,
admin_email=args.admin_email,
debug=args.debug,
)
# 3. API-Token erzeugen
client = HttpClient(
base_url=args.base_url,
timeout=args.timeout,
debug=args.debug,
)
token = create_app_token(
client=client,
admin_user=args.admin_user,
admin_password=args.admin_password,
description=args.token_description,
)
return token