From 531a172eb6345d899c10b63e979c655c732228d0 Mon Sep 17 00:00:00 2001 From: Hendrik Behme Date: Tue, 27 Aug 2019 12:09:19 +0200 Subject: [PATCH] added user management --- .gitignore | 19 +++++++++++++++++++ docker-compose.yml | 6 ++++++ .../add_pollmaster_user.js | 7 +++++++ pm/.gitignore | 19 ------------------- pm/pollmaster.py | 7 +++++++ 5 files changed, 39 insertions(+), 19 deletions(-) create mode 100644 .gitignore create mode 100644 docker-entrypoint-initdb.d/add_pollmaster_user.js delete mode 100644 pm/.gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1d93084 --- /dev/null +++ b/.gitignore @@ -0,0 +1,19 @@ +# IDE Folders +pm/../.idea/ + +# PY VENV +pm/venv/ + +# Tokens and Passwwords +pm/essentials/secrets.py + +pm/pollmaster\.log + +pm/cogs/__pycache__/ + +pm/essentials/__pycache__/ + +pm/utils/__pycache__/ + +# export +pm/export/* diff --git a/docker-compose.yml b/docker-compose.yml index 1b58d1b..e06e2d9 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -12,6 +12,9 @@ services: - MONGO_INITDB_ROOT_USERNAME - MONGO_INITDB_ROOT_PASSWORD - MONGO_INITDB_DATABASE + ports: + - 27017:27107 + - 27017 # App - Container, where the main application runs app: @@ -19,6 +22,7 @@ services: volumes: - ./pm/cogs/poll_controls.py:/data/pm/cogs/poll_controls.py - ./pm/pollmaster.py:/data/pm/pollmaster.py + - ./pm/essentials/secrets.py:/data/pm/essentials/secrets.py links: - mongo build: @@ -35,6 +39,8 @@ services: mongo-express: image: mongo-express restart: always + links: + - mongo ports: - 8081:8081 environment: diff --git a/docker-entrypoint-initdb.d/add_pollmaster_user.js b/docker-entrypoint-initdb.d/add_pollmaster_user.js new file mode 100644 index 0000000..490e428 --- /dev/null +++ b/docker-entrypoint-initdb.d/add_pollmaster_user.js @@ -0,0 +1,7 @@ +db.createUser( +{ + user: "root", + pwd: "SetYourOwnPassword", + + roles: [{role: "readWrite", db: "pollmaster"}] +}) diff --git a/pm/.gitignore b/pm/.gitignore deleted file mode 100644 index 37f7b4f..0000000 --- a/pm/.gitignore +++ /dev/null @@ -1,19 +0,0 @@ -# IDE Folders -../.idea/ - -# PY VENV -venv/ - -# Tokens and Passwwords -essentials/secrets\.py - -pollmaster\.log - -cogs/__pycache__/ - -essentials/__pycache__/ - -utils/__pycache__/ - -# export -export/* diff --git a/pm/pollmaster.py b/pm/pollmaster.py index 8be41d4..8754130 100644 --- a/pm/pollmaster.py +++ b/pm/pollmaster.py @@ -13,6 +13,8 @@ from motor.motor_asyncio import AsyncIOMotorClient from essentials.multi_server import get_pre from essentials.settings import SETTINGS +from pprint import pprint + bot_config = { 'command_prefix': get_pre, 'pm_help': False, @@ -132,12 +134,17 @@ async def on_guild_join(server): logger.info("Connecting to Mongo DB: " + SETTINGS.mongo_db) mongo = AsyncIOMotorClient(SETTINGS.mongo_db) + +pprint(mongo) + bot.db = mongo.pollmaster print(bot.db) +pprint(bot.db) extensions = ['cogs.config', 'cogs.poll_controls', 'cogs.help', 'cogs.db_api', 'cogs.admin'] for ext in extensions: logger.info("Loading extension " + ext) bot.load_extension(ext) +pprint(SETTINGS.bot_token) bot.run(SETTINGS.bot_token)