-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Expand file tree
/
Copy pathconftest.py
More file actions
49 lines (32 loc) · 1.11 KB
/
conftest.py
File metadata and controls
49 lines (32 loc) · 1.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import logging
import pytest
from testcontainers.keycloak import KeycloakContainer
from testcontainers.minio import MinioContainer
from testcontainers.mysql import MySqlContainer
from testcontainers.postgres import PostgresContainer
from tests.utils.auth_permissions_util import setup_permissions_on_keycloak
logger = logging.getLogger(__name__)
@pytest.fixture(scope="session")
def start_keycloak_server():
logger.info("Starting keycloak instance")
with KeycloakContainer("quay.io/keycloak/keycloak:24.0.1") as keycloak_container:
setup_permissions_on_keycloak(keycloak_container.get_client())
yield keycloak_container.get_url()
@pytest.fixture(scope="session")
def mysql_server():
container = MySqlContainer("mysql:latest")
container.start()
yield container
container.stop()
@pytest.fixture(scope="session")
def postgres_server():
container = PostgresContainer()
container.start()
yield container
container.stop()
@pytest.fixture(scope="session")
def minio_server():
container = MinioContainer()
container.start()
yield container
container.stop()