- Removed the logic for loading environment-specific .env files based on TUX_ENV. Now, only a single .env file is loaded.
- Removed the generation of DATABASE_URL from other environment variables. Now, it is directly fetched from the environment variables.
- These changes were made to simplify the configuration process and reduce potential points of failure.
This script allows to set environment variables for different environments (dev, prod) by sourcing respective .env files. It also backs up existing .env file, and exports additional dynamically computed variables. This change is done to simplify and automate the process of environment configuration.
feat(config.py): add POSTGRES_DB and POSTGRES_USER environment variables for more flexible database configuration
fix(config.py): update DATABASE_URL to include new POSTGRES_DB and POSTGRES_USER variables for accurate database connection string
chore(docker-compose.dev.yml): add .cache/ to watch ignore list to prevent unnecessary rebuilds
feat(docker-compose.dev.yml): trigger rebuild on changes to pyproject.toml and poetry.lock for dependency updates
refactor(docker-compose.dev.yml): remove leading ./ from .env.dev path for consistency
feat(docker-compose.dev.yml): add command to bot service to install dependencies and run prisma commands before starting the app
feat(docker-compose.dev.yml): uncomment adminer service for database management
feat(docker-compose.dev.yml): add environment variables and command to adminer service for automatic login
feat(docker-compose.dev.yml): add adminer-index.php config for automatic login script
style(docker-compose.dev.yml): add newline at end of file for POSIX compliance
feat(pyproject.toml): add 'package-mode' set to false to disable package mode
feat(pyproject.toml): add 'emojis' package to the dependencies for emoji support
chore(pyproject.toml): move 'emojis' package from the bottom to the correct alphabetical order in the dependencies
feat(pyproject.toml): add 'cache-dir' in 'tool.ruff' for caching ruff files
feat(pyproject.toml): add 'tool.prisma' configuration for Prisma ORM settings
feat(docker-compose.dev.yml): add environment variable support for development environment
feat(docker-compose.dev.yml): change .env path to .env.dev for development environment
feat(docker-compose.dev.yml): add volume mapping for application code and postgres initialization script
feat(docker-compose.dev.yml): add entrypoint for postgres service to run initialization script
feat(docker-compose.dev.yml): change healthcheck command for postgres service
chore(docker-compose.dev.yml): comment out adminer service as it's not needed in development environment
feat(scripts/postgres-init.sh): add new script for postgres initialization with dynamic password setup
This commit introduces the initial database schema for the application. It includes the creation of several tables such as "Guild", "GuildConfig", "Case", "Snippet", "Note", "Reminder", "AFKModel", "Starboard", and "StarboardMessage". Each table has its own set of columns, constraints, and indices.
In addition, the commit also introduces a migration lock file for Prisma, which is crucial for managing database migrations in a team environment. This file should not be edited manually and should be included in the version control system.
The Constants module was replaced with a Config module in multiple files. This change was made to improve the management of configuration variables, making it easier to modify and maintain them. The Config module provides a more flexible and scalable way to handle configuration settings.
This new configuration file will load environment variables from .env files based on the TUX_ENV variable. It also loads settings from a YAML file and provides a Config class to access these settings. This change was made to centralize configuration management and improve code readability.
feat(moderation): add dm_sent parameter to handle_case_response method to handle DM status
fix(moderation): update all moderation actions to use new send_dm and handle_case_response methods
feat(moderation): add DM status to embed description in handle_case_response method
fix(unjail.py): ensure jail role is removed even if no previous roles are found
docs(permissions.md): update file paths for Sys Admin and Bot Owner from config.json to config/settings.yml for better organization
docs(permissions.md): clarify Server Owner role description for better understanding