From 4b3429769507efb3f660f28fa917c273176063aa Mon Sep 17 00:00:00 2001 From: Tristan Gosselin-Hane Date: Sat, 21 Sep 2019 18:17:38 -0400 Subject: [PATCH] Refactor project structure --- .gitignore | 1 + Dockerfile | 2 +- minecraft-discord-bridge/__main__.py | 3 +++ .../auth_server.py | 6 +++--- config.py => minecraft-discord-bridge/config.py | 0 database.py => minecraft-discord-bridge/database.py | 2 +- .../database_session.py | 0 .../elasticsearch_logger.py | 0 .../minecraft_discord_bridge.py | 10 +++++----- 9 files changed, 14 insertions(+), 10 deletions(-) create mode 100644 minecraft-discord-bridge/__main__.py rename auth_server.py => minecraft-discord-bridge/auth_server.py (96%) rename config.py => minecraft-discord-bridge/config.py (100%) rename database.py => minecraft-discord-bridge/database.py (98%) rename database_session.py => minecraft-discord-bridge/database_session.py (100%) rename elasticsearch_logger.py => minecraft-discord-bridge/elasticsearch_logger.py (100%) rename webhook-bridge.py => minecraft-discord-bridge/minecraft_discord_bridge.py (99%) diff --git a/.gitignore b/.gitignore index 60c069f..c0ab37f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ +__pycache__/ config.json db.sqlite diff --git a/Dockerfile b/Dockerfile index 4aed102..1760478 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,4 +12,4 @@ RUN pip install --no-cache-dir pipenv \ VOLUME "/data" -CMD [ "python", "-m", "pipenv", "run", "./webhook-bridge.py" ] +CMD [ "python", "-m", "pipenv", "run", "python", "-m", "minecraft-discord-bridge" ] diff --git a/minecraft-discord-bridge/__main__.py b/minecraft-discord-bridge/__main__.py new file mode 100644 index 0000000..cdf0090 --- /dev/null +++ b/minecraft-discord-bridge/__main__.py @@ -0,0 +1,3 @@ +if __name__ == "__main__": + from . import minecraft_discord_bridge + minecraft_discord_bridge.main() diff --git a/auth_server.py b/minecraft-discord-bridge/auth_server.py similarity index 96% rename from auth_server.py rename to minecraft-discord-bridge/auth_server.py index 972ff89..41212bb 100644 --- a/auth_server.py +++ b/minecraft-discord-bridge/auth_server.py @@ -1,9 +1,9 @@ -from datetime import datetime, timezone +from datetime import datetime from quarry.net.server import ServerFactory, ServerProtocol -from database import AccountLinkToken, MinecraftAccount, DiscordAccount -import database_session +from .database import AccountLinkToken, MinecraftAccount, DiscordAccount +from . import database_session class AuthProtocol(ServerProtocol): diff --git a/config.py b/minecraft-discord-bridge/config.py similarity index 100% rename from config.py rename to minecraft-discord-bridge/config.py diff --git a/database.py b/minecraft-discord-bridge/database.py similarity index 98% rename from database.py rename to minecraft-discord-bridge/database.py index 0dff660..25c0553 100644 --- a/database.py +++ b/minecraft-discord-bridge/database.py @@ -3,7 +3,7 @@ from datetime import datetime, timedelta, timezone from sqlalchemy import Column, String, Integer, DateTime, ForeignKey from sqlalchemy.orm import relationship -from database_session import Base +from .database_session import Base class DiscordChannel(Base): diff --git a/database_session.py b/minecraft-discord-bridge/database_session.py similarity index 100% rename from database_session.py rename to minecraft-discord-bridge/database_session.py diff --git a/elasticsearch_logger.py b/minecraft-discord-bridge/elasticsearch_logger.py similarity index 100% rename from elasticsearch_logger.py rename to minecraft-discord-bridge/elasticsearch_logger.py diff --git a/webhook-bridge.py b/minecraft-discord-bridge/minecraft_discord_bridge.py similarity index 99% rename from webhook-bridge.py rename to minecraft-discord-bridge/minecraft_discord_bridge.py index c54d719..83ac641 100755 --- a/webhook-bridge.py +++ b/minecraft-discord-bridge/minecraft_discord_bridge.py @@ -14,12 +14,12 @@ import random import string import uuid from threading import Thread -from config import Configuration -from database import DiscordChannel, AccountLinkToken, DiscordAccount -import database_session +from .config import Configuration +from .database import DiscordChannel, AccountLinkToken, DiscordAccount +from . import database_session from datetime import datetime, timedelta, timezone -import elasticsearch_logger as el +from . import elasticsearch_logger as el from minecraft import authentication from minecraft.exceptions import YggdrasilError from minecraft.networking.connection import Connection @@ -138,7 +138,7 @@ def run_auth_server(port): # We need to import twisted after setting up the logger because twisted hijacks our logging # TODO: Fix this in a cleaner way from twisted.internet import reactor - from auth_server import AuthFactory + from .auth_server import AuthFactory # Create factory factory = AuthFactory()