Cypress UI Test service and updates to installer.py (#1250)

* #1247 #1248 Feat: Cypress UI testing + Postgres Arg for installer

* #1247 #1248 Feat: Cypress UI testing + Postgres Arg for installer

* #1247 #1248 Feat: Cypress UI testing + Postgres Arg for installer

* #1247 #1248 Feat: Cypress UI testing + Postgres Arg for installer

* #1247 #1248 Feat: Cypress UI testing + Postgres Arg for installer

* #1247 #1248 Feat: Cypress UI testing + Postgres Arg for installer

* #1247 #1248 Feat: Cypress UI testing + Postgres Arg for installer
This commit is contained in:
varun-krishnamurthy
2023-10-26 14:05:31 +11:00
committed by GitHub
parent 122927662c
commit ead5438ebb
4 changed files with 210 additions and 24 deletions

View File

@@ -105,6 +105,14 @@ def get_args_parser():
help="admin password for site, default: admin", # noqa: E501
default="admin",
)
parser.add_argument(
"-d",
"--db-type",
action="store",
type=str,
help="Database type to use (e.g., mariadb or postgres)",
default="mariadb", # Set your default database type here
)
return parser
@@ -112,7 +120,6 @@ def init_bench_if_not_exist(args):
if os.path.exists(args.bench_name):
cprint("Bench already exists. Only site will be created", level=3)
return
try:
env = os.environ.copy()
if args.py_version:
@@ -137,11 +144,14 @@ def init_bench_if_not_exist(args):
]
subprocess.call(command, env=env, cwd=os.getcwd())
cprint("Configuring Bench ...", level=2)
cprint("Set db_host to mariadb", level=3)
subprocess.call(
["bench", "set-config", "-g", "db_host", "mariadb"],
cwd=os.getcwd() + "/" + args.bench_name,
)
cprint("Set db_host", level=3)
if args.db_type:
cprint(f"Setting db_type to {args.db_type}", level=3)
subprocess.call(
["bench", "set-config", "-g", "db_type", args.db_type],
cwd=os.path.join(os.getcwd(), args.bench_name),
)
cprint("Set redis_cache to redis://redis-cache:6379", level=3)
subprocess.call(
[
@@ -188,20 +198,40 @@ def init_bench_if_not_exist(args):
def create_site_in_bench(args):
new_site_cmd = [
"bench",
"new-site",
"--no-mariadb-socket",
"--mariadb-root-password=123",
f"--admin-password={args.admin_password}",
]
if "mariadb" == args.db_type:
cprint("Set db_host", level=3)
subprocess.call(
["bench", "set-config", "-g", "db_host", "mariadb"],
cwd=os.getcwd() + "/" + args.bench_name,
)
new_site_cmd = [
"bench",
"new-site",
f"--db-host=mariadb", # Should match the compose service name
f"--db-type={args.db_type}", # Add the selected database type
f"--no-mariadb-socket",
f"--db-root-password=123", # Replace with your MariaDB password
f"--admin-password={args.admin_password}",
]
else:
cprint("Set db_host", level=3)
subprocess.call(
["bench", "set-config", "-g", "db_host", "postgresql"],
cwd=os.getcwd() + "/" + args.bench_name,
)
new_site_cmd = [
"bench",
"new-site",
f"--db-host=postgresql", # Should match the compose service name
f"--db-type={args.db_type}", # Add the selected database type
f"--db-root-password=123", # Replace with your PostgreSQL password
f"--admin-password={args.admin_password}",
]
apps = os.listdir(f"{os.getcwd()}/{args.bench_name}/apps")
apps.remove("frappe")
for app in apps:
new_site_cmd.append(f"--install-app={app}")
new_site_cmd.append(args.site_name)
cprint(f"Creating Site {args.site_name} ...", level=2)
subprocess.call(
new_site_cmd,