def setup() -> None: # TODO: implement to create custom resource engine: str = os.environ.get('ENGINE', 'MySQLJDBC') if engine.upper().startswith('MYSQL'): db_setting: DBSetting = DBSetting( HOST=os.environ.get('MYSQL_HOST', '127.0.0.1'), PORT=os.environ.get('MYSQL_PORT', '3306'), USER=os.environ.get('MYSQL_USER', 'root'), PASSWORD=os.environ.get('MYSQL_PASSWORD', 'example'), JAR_PATH=os.environ.get( 'MYSQL_JDBC_JAR_PATH', '/usr/lib/jvm/mariadb-java-client.jar' ), ) else: db_setting = DBSetting( HOST=os.environ.get('POSTGRES_HOST', '127.0.0.1'), PORT=os.environ.get('POSTGRES_PORT', '5432'), USER=os.environ.get('POSTGRES_USER', 'postgres'), PASSWORD=os.environ.get('POSTGRES_PASSWORD', 'example'), JAR_PATH=os.environ.get( 'POSTGRES_JDBC_JAR_PATH', '/usr/lib/jvm/postgresql-java-client.jar' ), ) register_secret(db_setting.USER, db_setting.PASSWORD, SECRET_ARN) register_resource( RESOURCE_ARN, engine, db_setting.HOST, db_setting.PORT, db_setting.USER, db_setting.PASSWORD, {'JAR_PATH': db_setting.JAR_PATH}, )
def test_register_secret(secrets) -> None: register_secret( user_name='root', password='******', secret_arn= 'arn:aws:secretsmanager:ap-northeast-1:000000000000:secret:local-data-api', ) secret: Secret = SECRETS[ 'arn:aws:secretsmanager:ap-northeast-1:000000000000:secret:local-data-api'] assert secret == Secret('root', 'example')
def test_register_secret_no_arn(secrets) -> None: secret_arn: str = register_secret('root', 'example') secret: Secret = SECRETS[secret_arn] assert secret == Secret('root', 'example')