Thank you for considering contributing to the Discord Bot project! Contributions are what make the open-source community a fantastic place to learn, inspire, and create. We welcome contributions of all kinds, from reporting issues to suggesting features or contributing code.
- Getting Started
- Prerequisites
- Setting Up Your Environment
- Contributing Code
- Submitting a Pull Request
- Code of Conduct
-
Fork the repository and clone it locally:
git clone https://github.com/The-DevSec-Blueprint/discord-bot.git cd discord-bot -
Create a new branch for your changes:
git checkout -b feature/my-feature
Ensure you have the following installed on your local machine:
- Docker
- Python 3.12
- Terraform CLI
You may also need:
- A text editor or IDE (e.g., VSCode, PyCharm)
- Linter tools: Black and Pylint
- Linter for Terraform files: Use
terraform fmtandterraform validate
-
Set up a Python virtual environment:
python3.12 -m venv venv source venv/bin/activate # On Windows, use `venv\Scripts\activate` pip install -r requirements.txt
-
Install and configure Docker. Ensure Docker is running on your system.
-
Set up Terraform Cloud:
-
Update the organization name in the Terraform configurations (
provider.tf) to match your local or test environment. -
Initialize and validate Terraform:
terraform init terraform validate
-
-
Lint and format Python code:
-
Use Black for formatting:
black . -
Use Pylint for linting:
pylint path/to/your/files
-
-
Lint Terraform files:
-
Format Terraform files:
terraform fmt
-
Validate Terraform configuration:
terraform validate
-
-
Write clean and tested code. Follow the project structure and adhere to Python best practices.
-
Run linters:
- Format Python code using Black.
- Lint Python code using Pylint and resolve any issues.
- Format Terraform Code
-
Test your changes: Make sure they work locally and be ready to provide proof.
-
Document your changes: Update README or related documentation if necessary.
-
Push your changes to your fork:
git push origin feature/my-feature
-
Open a pull request on the main repository, providing:
- A clear title and description of your changes.
- References to any relevant issues.
-
Be responsive to feedback and update your pull request as necessary.
This project adheres to a Code of Conduct. By participating, you agree to uphold this code and contribute to a positive and inclusive environment.
Thank you for contributing to Discord Bot! 🚀