From 26970ac78036d92b3a8db6128c8f57cb086d679c Mon Sep 17 00:00:00 2001 From: Faiz Ahmed Date: Sat, 17 Jul 2021 15:50:58 -0400 Subject: [PATCH] fixed env var --- app/cogs/Invitarr.py | 28 ++----------- app/{app => }/config/.gitignore | 0 app/helper/confighelper.py | 69 +++++++++++++++++++++++++++++++++ app/{db => helper}/db.py | 0 bot.env | 9 +++++ run.py | 13 ++----- 6 files changed, 86 insertions(+), 33 deletions(-) rename app/{app => }/config/.gitignore (100%) create mode 100644 app/helper/confighelper.py rename app/{db => helper}/db.py (100%) create mode 100644 bot.env diff --git a/app/cogs/Invitarr.py b/app/cogs/Invitarr.py index 161dcc6..3757162 100644 --- a/app/cogs/Invitarr.py +++ b/app/cogs/Invitarr.py @@ -1,6 +1,5 @@ -#Copyright 2020 Sleepingpirate. import os -from os import environ +from os import environ, path import logging import discord from discord.ext import commands @@ -8,33 +7,14 @@ import asyncio from plexapi.myplex import MyPlexAccount from discord import Webhook, AsyncWebhookAdapter import aiohttp -from dotenv import load_dotenv -import configparser import texttable import sys +from app.header.configparser import roleid, PLEXUSER, PLEXPASS, PLEX_SERVER_NAME, Plex_LIBS, chan, ownerid, auto_remove_user + sys.stdout = sys.stderr -CONFIG_PATH = 'app/config/config.ini' -BOT_SECTION = 'bot_envs' - -try: - config = configparser.ConfigParser() - config.read(CONFIG_PATH) -except: - print("Cannot find config") - -# settings -Discord_bot_token = config.get(BOT_SECTION, 'discord_bot_token') -roleid = config.get(BOT_SECTION, 'role_id') -PLEXUSER = config.get(BOT_SECTION, 'plex_user') -PLEXPASS = config.get(BOT_SECTION, 'plex_pass') -PLEX_SERVER_NAME = config.get(BOT_SECTION, 'plex_server_name') -Plex_LIBS = config.get(BOT_SECTION, 'plex_libs') -chan = int(config.get(BOT_SECTION, 'channel_id')) -ownerid = int(config.get(BOT_SECTION, 'owner_id')) -auto_remove_user = config.get(BOT_SECTION, 'auto_remove_user') if config.get(BOT_SECTION, 'auto_remove_user') else False - Plex_LIBS = list(Plex_LIBS.split(',')) roleid = list(roleid.split(',')) + print(roleid) if auto_remove_user: print("auto remove user = True") diff --git a/app/app/config/.gitignore b/app/config/.gitignore similarity index 100% rename from app/app/config/.gitignore rename to app/config/.gitignore diff --git a/app/helper/confighelper.py b/app/helper/confighelper.py new file mode 100644 index 0000000..fce2dcc --- /dev/null +++ b/app/helper/confighelper.py @@ -0,0 +1,69 @@ +import configparser +from os import environ, path +from dotenv import load_dotenv +config = configparser.ConfigParser() + +CONFIG_PATH = 'app/config/config.ini' +BOT_SECTION = 'bot_envs' +CONFIG_KEYS = ['username', 'password', 'discord_bot_token', 'plex_user', 'plex_pass', + 'role_id', 'plex_server_name', 'plex_libs', 'owner_id', 'channel_id', + 'auto_remove_user'] + +def get_config(): + """ + Function to return current config + """ + try: + config.read(CONFIG_PATH) + return config + except Exception as e: + print(e) + print('error in reading config') + return None + + +CONFIG_PATH = 'app/config/config.ini' +BOT_SECTION = 'bot_envs' + +# settings +Discord_bot_token = "" +roleid = 0 +PLEXUSER = "" +PLEXPASS = "" +PLEX_SERVER_NAME = "" +Plex_LIBS = "" +chan = 0 +ownerid = 0 +auto_remove_user = "" + +switch = 0 + +try: + if(path.exists(CONFIG_PATH)): + config = configparser.ConfigParser() + config.read(CONFIG_PATH) + Discord_bot_token = config.get(BOT_SECTION, 'discord_bot_token') + roleid = config.get(BOT_SECTION, 'role_id') + PLEXUSER = config.get(BOT_SECTION, 'plex_user') + PLEXPASS = config.get(BOT_SECTION, 'plex_pass') + PLEX_SERVER_NAME = config.get(BOT_SECTION, 'plex_server_name') + Plex_LIBS = config.get(BOT_SECTION, 'plex_libs') + chan = int(config.get(BOT_SECTION, 'channel_id')) + ownerid = int(config.get(BOT_SECTION, 'owner_id')) + auto_remove_user = config.get(BOT_SECTION, 'auto_remove_user') if config.get(BOT_SECTION, 'auto_remove_user') else False + switch = 1 + else: + load_dotenv(dotenv_path='bot.env') + Discord_bot_token = environ.get('discord_bot_token') + roleid = int(environ.get('role_id')) + PLEXUSER = environ.get('PLEXUSER') + PLEXPASS = config.get(BOT_SECTION, 'plex_pass') + PLEX_SERVER_NAME = config.get(BOT_SECTION, 'plex_server_name') + Plex_LIBS = config.get(BOT_SECTION, 'plex_libs') + chan = int(config.get(BOT_SECTION, 'channel_id')) + ownerid = int(config.get(BOT_SECTION, 'owner_id')) + auto_remove_user = config.get(BOT_SECTION, 'auto_remove_user') if config.get(BOT_SECTION, 'auto_remove_user') else False + switch = 1 +except: + print("Cannot find config/Incomplete config") + diff --git a/app/db/db.py b/app/helper/db.py similarity index 100% rename from app/db/db.py rename to app/helper/db.py diff --git a/bot.env b/bot.env new file mode 100644 index 0000000..cb11e0a --- /dev/null +++ b/bot.env @@ -0,0 +1,9 @@ +discord_bot_token= +plex_username= +plex_password= +role_id= +plex_server_name= +plex_libs= +owner_id= +channel_id= +auto_remove_user=True \ No newline at end of file diff --git a/run.py b/run.py index 2a5e0b1..59bb516 100644 --- a/run.py +++ b/run.py @@ -3,18 +3,13 @@ import os from discord.ext import commands, tasks from discord.utils import get import asyncio -import json -import Cogs.Json.jshelper as jshelper import sys +from app.header.configparser import switch, Discord_bot_token -jshelper.prestart() -data = jshelper.openf("/app/config/app.db") -if data["token"] == "": +if switch == 0: print("Missing Config.") sys.exit() - -data = jshelper.openf("/config/app.db") -TOKEN = data["token"] + intents = discord.Intents.default() intents.members = True bot = commands.Bot(command_prefix=".", intents = intents) @@ -72,4 +67,4 @@ for filename in os.listdir("Cogs"): if filename.endswith('.py'): bot.load_extension(f'Cogs.{filename[:-3]}') -bot.run(TOKEN) \ No newline at end of file +bot.run(Discord_bot_token) \ No newline at end of file