Fix database_setup and main lint smells.
This commit is contained in:
@@ -1,15 +1,13 @@
|
|||||||
"""
|
"""Small script to create the database if it doesn't already exist."""
|
||||||
Small script to create the database if it doesn't already exist.
|
|
||||||
"""
|
|
||||||
|
|
||||||
import sqlite3
|
import sqlite3
|
||||||
from os.path import exists
|
from pathlib import Path
|
||||||
|
|
||||||
if not exists("database/dakiny.db"):
|
if not Path("database/dakiny.db").exists():
|
||||||
with sqlite3.connect("database/dakiny.db") as con:
|
with sqlite3.connect("database/dakiny.db") as con:
|
||||||
cur = con.cursor()
|
cur = con.cursor()
|
||||||
|
|
||||||
with open("database_setup/database.sql", encoding="utf-8") as file:
|
with Path("database_setup/database.sql", encoding="utf-8").open() as file:
|
||||||
database_script = file.read()
|
database_script = file.read()
|
||||||
cur.executescript(database_script)
|
cur.executescript(database_script)
|
||||||
con.commit()
|
con.commit()
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
[tool.ruff]
|
||||||
|
# Extend the `pyproject.toml` file in the parent directory...
|
||||||
|
extend = "../pyproject.toml"
|
||||||
|
|
||||||
|
[tool.ruff.lint]
|
||||||
|
# ignore implicit-namespace-package in this directory.
|
||||||
|
ignore = ["INP001"]
|
||||||
@@ -1,6 +1,4 @@
|
|||||||
"""
|
"""Simple file to set up the sqlalchemy connection to database."""
|
||||||
Simple file to set up the sqlalchemy connection to database.
|
|
||||||
"""
|
|
||||||
|
|
||||||
from sqlalchemy import create_engine
|
from sqlalchemy import create_engine
|
||||||
from sqlalchemy.ext.automap import automap_base
|
from sqlalchemy.ext.automap import automap_base
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
|
"""Main file for bot."""
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
@@ -27,7 +29,13 @@ logger.addHandler(handler)
|
|||||||
|
|
||||||
|
|
||||||
@hydra.main(config_path="conf", config_name="config")
|
@hydra.main(config_path="conf", config_name="config")
|
||||||
def main(cfg: DakinyConfig):
|
def main(cfg: DakinyConfig) -> None:
|
||||||
|
"""
|
||||||
|
Builds and runs bot.
|
||||||
|
|
||||||
|
Args:
|
||||||
|
cfg (DakinyConfig): Passed in hydra configuration.
|
||||||
|
"""
|
||||||
# Allows privledged intents for monitoring members joining, roles editing, and role assignments
|
# Allows privledged intents for monitoring members joining, roles editing, and role assignments
|
||||||
# These need to be enabled in the developer portal as well
|
# These need to be enabled in the developer portal as well
|
||||||
intents = nextcord.Intents.default()
|
intents = nextcord.Intents.default()
|
||||||
@@ -35,9 +43,6 @@ def main(cfg: DakinyConfig):
|
|||||||
# Required in order to read messages (eg. prefix commands)
|
# Required in order to read messages (eg. prefix commands)
|
||||||
intents.message_content = True
|
intents.message_content = True
|
||||||
|
|
||||||
# To enable the guilds priveleged intent:
|
|
||||||
# intents.guilds = True
|
|
||||||
|
|
||||||
# To enable the members priveleged intent:
|
# To enable the members priveleged intent:
|
||||||
intents.members = True
|
intents.members = True
|
||||||
|
|
||||||
@@ -49,15 +54,15 @@ def main(cfg: DakinyConfig):
|
|||||||
bot.load_extension(f"cogs.{folder}")
|
bot.load_extension(f"cogs.{folder}")
|
||||||
|
|
||||||
@bot.listen()
|
@bot.listen()
|
||||||
async def on_ready():
|
async def on_ready() -> None:
|
||||||
"""When Discord is connected"""
|
"""When Discord is connected."""
|
||||||
assert bot.user is not None
|
assert bot.user is not None # noqa: S101 documentation does this
|
||||||
create_database # pylint: disable=pointless-statement
|
create_database # noqa: B018
|
||||||
bot.add_view(NominateView(cfg, bot.get_guild(cfg.params.guild_id)))
|
bot.add_view(NominateView(cfg, bot.get_guild(cfg.params.guild_id)))
|
||||||
bot.add_view(NominateHighCouncilView(cfg, bot.get_guild(cfg.params.guild_id)))
|
bot.add_view(NominateHighCouncilView(cfg, bot.get_guild(cfg.params.guild_id)))
|
||||||
bot.add_view(VoteView(cfg, bot.get_guild(cfg.params.guild_id)))
|
bot.add_view(VoteView(cfg, bot.get_guild(cfg.params.guild_id)))
|
||||||
bot.add_view(VoteHighcouncilView(cfg, bot.get_guild(cfg.params.guild_id)))
|
bot.add_view(VoteHighcouncilView(cfg, bot.get_guild(cfg.params.guild_id)))
|
||||||
print(f"{bot.user.name} has connected to Discord!")
|
print(f"{bot.user.name} has connected to Discord!") # noqa: T201 TODO make logging to print my stuff to console
|
||||||
|
|
||||||
# Run Discord bot
|
# Run Discord bot
|
||||||
bot.run(bot.config.params.discord_token)
|
bot.run(bot.config.params.discord_token)
|
||||||
|
|||||||
Reference in New Issue
Block a user