Before, recipes_dir had to be present in the importable paths of the python interpreter. This was solved by adding it to the PYTHONPATH env var. Now, abratest handles this by itself. Reviewed-on: local-it-infrastructure/e2e_tests#11 Co-authored-by: Daniel <d.brummerloh@gmail.com> Co-committed-by: Daniel <d.brummerloh@gmail.com>
47 lines
1.3 KiB
Python
47 lines
1.3 KiB
Python
import json
|
|
import os
|
|
import subprocess
|
|
from pathlib import Path
|
|
|
|
# --------------------- load credentials to env variables -------------------- #
|
|
|
|
cred_file = Path("credentials.json")
|
|
with open(cred_file, "r") as f:
|
|
CREDENTIALS = json.load(f)
|
|
|
|
for key, value in CREDENTIALS.items():
|
|
os.environ[key] = value
|
|
|
|
# --------------------------------- env files -------------------------------- #
|
|
|
|
# This list of env files is the input to testing framework. each env file
|
|
# triggers the execution of one test Runner and provides configuration to the
|
|
# tests inside the runner.
|
|
|
|
ENV_FILES_ROOT = Path("../envfiles").resolve()
|
|
ENV_FILES = [
|
|
ENV_FILES_ROOT / "login.test.dev.local-it.cloud.env", # authentik
|
|
ENV_FILES_ROOT / "blog.test.dev.local-it.cloud.env", # wordpress
|
|
ENV_FILES_ROOT / "files.test.dev.local-it.cloud.env", # nextcloud
|
|
]
|
|
ENV_PATHS = ";".join([x.as_posix() for x in ENV_FILES])
|
|
|
|
# ----------------------------------- dirs ----------------------------------- #
|
|
|
|
RECIPES_DIR = Path("../recipes").resolve()
|
|
OUTPUT_DIR = Path("./test-output").resolve()
|
|
|
|
# ------------------------------------ run ----------------------------------- #
|
|
|
|
subprocess.run(
|
|
[
|
|
"abratest",
|
|
"--env_paths",
|
|
ENV_PATHS,
|
|
"--recipes_dir",
|
|
RECIPES_DIR,
|
|
"--output_dir",
|
|
OUTPUT_DIR,
|
|
# "--debug",
|
|
]
|
|
)
|