Read database connection parameters from environment
This commit is contained in:
parent
3d2d6b0ea6
commit
780bc8a512
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,3 +1,4 @@
|
|||||||
.env
|
.env
|
||||||
.vscode/
|
.vscode/
|
||||||
.idea/
|
.idea/
|
||||||
|
venv/
|
@ -11,6 +11,11 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
- CLIENT_ID
|
- CLIENT_ID
|
||||||
- TOKEN
|
- TOKEN
|
||||||
|
- "DATABASE_USER=postgres"
|
||||||
|
- "DATABASE_PASS=postgres"
|
||||||
|
- "DATABASE_NAME=postgres"
|
||||||
|
- "DATABASE_HOST=db"
|
||||||
|
- "DATABASE_PORT=5432"
|
||||||
restart: always
|
restart: always
|
||||||
api:
|
api:
|
||||||
build: src/
|
build: src/
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
import asyncio
|
import asyncio
|
||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
|
import os
|
||||||
import time
|
import time
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
@ -111,7 +112,13 @@ class PluralKitBot:
|
|||||||
async def run(self):
|
async def run(self):
|
||||||
try:
|
try:
|
||||||
self.logger.info("Connecting to database...")
|
self.logger.info("Connecting to database...")
|
||||||
self.pool = await db.connect()
|
self.pool = await db.connect(
|
||||||
|
os.environ["DATABASE_USER"],
|
||||||
|
os.environ["DATABASE_PASS"],
|
||||||
|
os.environ["DATABASE_NAME"],
|
||||||
|
os.environ["DATABASE_HOST"],
|
||||||
|
int(os.environ["DATABASE_PORT"])
|
||||||
|
)
|
||||||
|
|
||||||
self.logger.info("Attempting to create tables...")
|
self.logger.info("Attempting to create tables...")
|
||||||
async with self.pool.acquire() as conn:
|
async with self.pool.acquire() as conn:
|
||||||
|
@ -11,10 +11,10 @@ from discord.utils import snowflake_time
|
|||||||
from pluralkit import System, Member, stats
|
from pluralkit import System, Member, stats
|
||||||
|
|
||||||
logger = logging.getLogger("pluralkit.db")
|
logger = logging.getLogger("pluralkit.db")
|
||||||
async def connect():
|
async def connect(username, password, database, host, port):
|
||||||
while True:
|
while True:
|
||||||
try:
|
try:
|
||||||
return await asyncpg.create_pool(user="postgres", password="postgres", database="postgres", host="db")
|
return await asyncpg.create_pool(user=username, password=password, database=database, host=host, port=port)
|
||||||
except (ConnectionError, asyncpg.exceptions.CannotConnectNowError):
|
except (ConnectionError, asyncpg.exceptions.CannotConnectNowError):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user