diff --git a/.gitignore b/.gitignore index 987280a7..3ff53b6e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +config.py .env **/.DS_Store logs/ diff --git a/helpers/mongo.py b/helpers/mongo.py index bd039e79..dee15643 100644 --- a/helpers/mongo.py +++ b/helpers/mongo.py @@ -213,12 +213,14 @@ def can_evolve(self, ctx): class Pokemon(PokemonBase, Document): class Meta: strict = False + pass class EmbeddedPokemon(PokemonBase, EmbeddedDocument): class Meta: strict = False + pass @@ -329,9 +331,6 @@ class Blacklist(Document): class Database: def __init__(self, bot, host, dbname): - database_uri = os.getenv("DATABASE_URI") - database_name = os.getenv("DATABASE_NAME") - self.db = AsyncIOMotorClient(host, io_loop=bot.loop)[dbname] instance = Instance(self.db) diff --git a/launcher.py b/launcher.py index 8520ba51..80382cb1 100644 --- a/launcher.py +++ b/launcher.py @@ -8,9 +8,10 @@ import requests +import config from bot import ClusterBot -TOKEN = os.getenv("BOT_TOKEN") +TOKEN = config.BOT_TOKEN log = logging.getLogger("Cluster#Launcher") @@ -171,17 +172,17 @@ def __init__(self, launcher, name, shard_ids, max_shards): self.process = None self.kwargs = dict( token=TOKEN, - env=os.getenv("ENV"), + env=config.ENV, shard_ids=shard_ids, shard_count=max_shards, cluster_name=name, cluster_idx=CLUSTER_NAMES.index(name), case_insensitive=True, fetch_offline_members=False, - dbl_token=os.getenv("DBL_TOKEN"), - database_uri=os.getenv("DATABASE_URI"), - database_name=os.getenv("DATABASE_NAME"), - secret_key=os.getenv("SECRET_KEY"), + dbl_token=config.DBL_TOKEN, + database_uri=config.DATABASE_URI, + database_name=config.DATABASE_NAME, + secret_key=config.SECRET_KEY, ) self.name = name self.log = logging.getLogger(f"Cluster#{name}") diff --git a/migrations/2020-09-06-make_global_pokemon.py b/migrations/2020-09-06-make_global_pokemon.py index 83538907..73506280 100644 --- a/migrations/2020-09-06-make_global_pokemon.py +++ b/migrations/2020-09-06-make_global_pokemon.py @@ -3,12 +3,13 @@ 6 September 2020 """ -from pymongo import MongoClient import os +import config +from pymongo import MongoClient -client = MongoClient(os.getenv("DATABASE_URI")) -db = client[os.getenv("DATABASE_NAME")] +client = MongoClient(config.DATABASE_URI) +db = client[config.DATABASE_NAME] result = db["member"].aggregate( [ diff --git a/migrations/2020-09-06-remove_local_pokemon.py b/migrations/2020-09-06-remove_local_pokemon.py index 824337e5..fb721a46 100644 --- a/migrations/2020-09-06-remove_local_pokemon.py +++ b/migrations/2020-09-06-remove_local_pokemon.py @@ -3,11 +3,12 @@ 6 September 2020 """ -from pymongo import MongoClient import os +import config +from pymongo import MongoClient -client = MongoClient(os.getenv("DATABASE_URI")) -db = client[os.getenv("DATABASE_NAME")] +client = MongoClient(config.DATABASE_URI) +db = client[config.DATABASE_NAME] result = db["member"].update_many({}, {"$unset": {"pokemon": 1}}) diff --git a/migrations/2020-09-06-update_listings.py b/migrations/2020-09-06-update_listings.py index 8be7d032..2ff3743f 100644 --- a/migrations/2020-09-06-update_listings.py +++ b/migrations/2020-09-06-update_listings.py @@ -2,12 +2,14 @@ This is a one-shot script used to migrate all Pokémon from array fields to a global collection. 6 September 2020 """ -from pymongo import MongoClient import os + import bson +import config +from pymongo import MongoClient -client = MongoClient(os.getenv("DATABASE_URI")) -db = client[os.getenv("DATABASE_NAME")] +client = MongoClient(config.DATABASE_URI) +db = client[config.DATABASE_NAME] result = db["listing"].update_many( {}, diff --git a/migrations/2020-09-09-backfill_moves.py b/migrations/2020-09-09-backfill_moves.py index ba12de3c..71390e52 100644 --- a/migrations/2020-09-09-backfill_moves.py +++ b/migrations/2020-09-09-backfill_moves.py @@ -8,17 +8,17 @@ from multiprocessing import Pool import bson +import config from pymongo import MongoClient, UpdateOne sys.path.append(os.getcwd()) import helpers - data = helpers.data.make_data_manager() -client = MongoClient(os.getenv("DATABASE_URI")) -db = client[os.getenv("DATABASE_NAME")] +client = MongoClient(config.DATABASE_URI) +db = client[config.DATABASE_NAME] def make_request(i): diff --git a/migrations/2020-09-17-create_timestamps.py b/migrations/2020-09-17-create_timestamps.py index 462532d7..68529993 100644 --- a/migrations/2020-09-17-create_timestamps.py +++ b/migrations/2020-09-17-create_timestamps.py @@ -3,12 +3,13 @@ 17 September 2020 """ -from pymongo import MongoClient import os +import config +from pymongo import MongoClient -client = MongoClient(os.getenv("DATABASE_URI")) -db = client[os.getenv("DATABASE_NAME")] +client = MongoClient(config.DATABASE_URI) +db = client[config.DATABASE_NAME] result = db["pokemon"].update_many( {"timestamp": {"$exists": False}}, [{"$set": {"timestamp": {"$toDate": "$_id"}}}] diff --git a/server.py b/server.py index 8b3f5057..5075456e 100644 --- a/server.py +++ b/server.py @@ -9,6 +9,8 @@ from motor.motor_asyncio import AsyncIOMotorClient from quart import Quart, request +import config + # Constants purchase_amounts = { @@ -20,16 +22,14 @@ # Setup -stripe.api_key = os.getenv("STRIPE_KEY") -endpoint_secret = os.getenv("STRIPE_WEBHOOK_SECRET") +stripe.api_key = config.STRIPE_KEY +endpoint_secret = config.STRIPE_WEBHOOK_SECRET app = Quart(__name__) -web_ipc = Client(secret_key=os.getenv("SECRET_KEY")) +web_ipc = Client(secret_key=config.SECRET_KEY) loop = asyncio.get_event_loop() -db = AsyncIOMotorClient(os.getenv("DATABASE_URI"), io_loop=loop)[ - os.getenv("DATABASE_NAME") -] +db = AsyncIOMotorClient(config.DATABASE_URI, io_loop=loop)[config.DATABASE_NAME] # IPC Routes @@ -44,7 +44,7 @@ def login_required(func): async def pred(): key = request.args.get("key", "") hashed = hashlib.sha224(key.encode("utf-8")).hexdigest() - if hashed != os.getenv("LOGIN_KEY"): + if hashed != config.LOGIN_KEY: return "Unauthorized", 401 return await func()