Ejemplo n.º 1
0
def frappe_setup(compose: Compose):
    compose.stop()

    compose("up", "-d", "--quiet-pull")
    yield

    compose.stop()
Ejemplo n.º 2
0
def s3_service(python_path: str, compose: Compose):
    access_key = "AKIAIOSFODNN7EXAMPLE"
    secret_key = "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
    cmd = (
        "docker",
        "run",
        "--name",
        "minio",
        "-d",
        "-e",
        f"MINIO_ACCESS_KEY={access_key}",
        "-e",
        f"MINIO_SECRET_KEY={secret_key}",
        "--network",
        f"{compose.project_name}_default",
        "minio/minio",
        "server",
        "/data",
    )
    subprocess.check_call(cmd)

    compose("cp", "tests/_create_bucket.py", "backend:/tmp")
    compose.exec(
        "-e",
        f"S3_ACCESS_KEY={access_key}",
        "-e",
        f"S3_SECRET_KEY={secret_key}",
        "backend",
        python_path,
        "/tmp/_create_bucket.py",
    )

    yield S3ServiceResult(access_key=access_key, secret_key=secret_key)
    subprocess.call(("docker", "rm", "minio", "-f"))
Ejemplo n.º 3
0
 def test_site_creation(self, compose: Compose):
     compose.bench(
         "new-site",
         "test_pg_site",
         "--db-type",
         "postgres",
         "--admin-password",
         "admin",
     )
Ejemplo n.º 4
0
def erpnext_setup(compose: Compose):
    compose.stop()

    args = ["-f", "overrides/compose.erpnext.yaml"]
    if CI:
        args += ("-f", "tests/compose.ci-erpnext.yaml")
    compose(*args, "up", "-d", "--quiet-pull")

    yield
    compose.stop()
Ejemplo n.º 5
0
def frappe_site(compose: Compose):
    site_name = "tests"
    compose.bench(
        "new-site",
        site_name,
        "--mariadb-root-password",
        "123",
        "--admin-password",
        "admin",
    )
    compose("restart", "backend")
    yield site_name
Ejemplo n.º 6
0
def postgres_setup(compose: Compose):
    compose.stop()
    compose("-f", "overrides/compose.postgres.yaml", "up", "-d",
            "--quiet-pull")
    compose.bench("set-config", "-g", "root_login", "postgres")
    compose.bench("set-config", "-g", "root_password", "123")
    yield
    compose.stop()
Ejemplo n.º 7
0
def erpnext_site(compose: Compose):
    site_name = "test_erpnext_site"
    args = [
        "new-site",
        site_name,
        "--mariadb-root-password",
        "123",
        "--admin-password",
        "admin",
        "--install-app",
        "erpnext",
    ]
    erpnext_version = os.environ.get("ERPNEXT_VERSION")
    if erpnext_version in [
            "develop",
            "version-14",
    ] or erpnext_version.startswith("v14"):
        args.append("--install-app=payments")
    compose.bench(*args)
    compose("restart", "backend")
    yield site_name
Ejemplo n.º 8
0
def test_push_backup(
    python_path: str,
    frappe_site: str,
    s3_service: S3ServiceResult,
    compose: Compose,
):
    compose.bench("--site", frappe_site, "backup", "--with-files")
    compose.exec(
        "backend",
        "push-backup",
        "--site",
        frappe_site,
        "--bucket",
        "frappe",
        "--region-name",
        "us-east-1",
        "--endpoint-url",
        "http://minio:9000",
        "--aws-access-key-id",
        s3_service.access_key,
        "--aws-secret-access-key",
        s3_service.secret_key,
    )
    compose("cp", "tests/_check_backup_files.py", "backend:/tmp")
    compose.exec(
        "-e",
        f"S3_ACCESS_KEY={s3_service.access_key}",
        "-e",
        f"S3_SECRET_KEY={s3_service.secret_key}",
        "-e",
        f"SITE_NAME={frappe_site}",
        "backend",
        python_path,
        "/tmp/_check_backup_files.py",
    )
Ejemplo n.º 9
0
def test_frappe_connections_in_backends(service: str, python_path: str,
                                        compose: Compose):
    filename = "_ping_frappe_connections.py"
    compose("cp", f"tests/{filename}", f"{service}:/tmp/")
    compose.exec(service, python_path, f"/tmp/{filename}")
Ejemplo n.º 10
0
def test_links_in_backends(service: str, compose: Compose, python_path: str):
    filename = "_check_connections.py"
    compose("cp", f"tests/{filename}", f"{service}:/tmp/")
    compose.exec(service, python_path, f"/tmp/{filename}")
Ejemplo n.º 11
0
def compose(env_file: str):
    return Compose(project_name="test", env_file=env_file)