Skip to content
Snippets Groups Projects
Commit fe796742 authored by Arnaud Charleroy's avatar Arnaud Charleroy
Browse files

Add contributing documentation

parent 0dedb6fc
No related branches found
No related tags found
No related merge requests found
## Fix Proposal
Please describe the proposed fix for the issue below. Include any relevant code snippets, commands, or steps to apply the fix.
### Problem Statement
Briefly summarize the problem statement or issue that this fix addresses.
### Proposed Solution
Detail the solution you propose to resolve the issue. Explain why this solution works and how it addresses the problem.
### Impact Analysis
Discuss the potential impact of this fix. Consider how it affects existing functionality, performance, and any external integrations.
### Test Plan
Outline the steps to test this fix to ensure it resolves the issue without introducing new problems. Include any automated tests that could be used.
### Additional Context
Provide any additional context or considerations that should be taken into account during the review and implementation of this fix.
......@@ -4,7 +4,7 @@ Clearly describe the change you are proposing in the title of your MR.
## Description
Provide a detailed description of the change you are proposing. Explain the motivation behind the change and how it improves the project. If this MR fixes a ticket, mention the ticket number.
Provide a detailed description of the change you are proposing. Explain the motivation behind the change and how it improves the project.
## Related Issues
......@@ -14,7 +14,7 @@ Link related issues that this MR closes or addresses.
- [ ] Have you followed the project's contribution guidelines?
- [ ] Have you checked to ensure there are no conflicts with existing code?
- [ ] Have you compiled and tested this code?
- [ ] Have you tested this code by running the docker compose command?
- [ ] Have you included documentation, if necessary?
## Screenshots (if applicable)
......@@ -23,4 +23,16 @@ Include screenshots to demonstrate the change visually.
## Additional Context
Add any other context about the problem here.
\ No newline at end of file
Add any other context about the problem here.
### Proposed Solution
Detail the solution you propose to resolve the issue. Explain why this solution works and how it addresses the problem.
### Impact Analysis
Discuss the potential impact of this fix. Consider how it affects existing functionality, performance, and any external integrations.
### Test Plan
Outline the steps to test this fix to ensure it resolves the issue without introducing new problems. Include any automated tests that could be used.
# Contributing to opensilex-docker-compose
Thank you for your interest in contributing to opensilex-docker-compose! We appreciate all contributions, whether they're code improvements, documentation updates, bug reports, feature requests, or anything else. Here's how you can help:
## Guidelines
### Questions Before Contributing
If you have a question about the project, consider opening an issue first to discuss it. This ensures that others can weigh in and provides a centralized place for discussion.
### Ground Rules
- Be welcoming to newcomers and encourage diverse points of view and experiences.
- Keep discussions constructive and positive.
- Communicate openly and honestly.
### Your First Contribution
Unsure where to begin? You can start by looking through the `Issues` tab to find tasks labeled as `good first issue`.
### Reporting Bugs
Report bugs by opening an issue with ``bug template``. Please provide details like the error message, environment, and steps to reproduce the problem.
### Suggesting Enhancements
Enhancement suggestions are tracked as GitLab issues. Create an issue to propose a new feature or improvement.
### Merge Request Process
1. Fork the Project
2. Create a branch (`git checkout -b branch-name`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin branch-name`)
5. Open a Merge Request
#### Note: Always write a clear log message for your commits. One-line messages are fine for small changes, but larger changes should look like this:
```
Short (50 chars or less) summary of changes
More detailed explanatory text, if necessary. Wrap it to about 72 characters or so.
Further paragraphs come after blank lines.
- Bullet points are okay, too
- Explain the problem the change addresses and why it's needed
- Explain the change you've made
- Mention any dependencies you've changed or added
- Explain users of older environments or database schema changes
- Explain places you believe the code will affect
- Explain other effects of this MR
## Setup
Ensure you have Docker and Docker Compose installed on your machine. Refer to the official Docker documentation for installation instructions.
### Local Setup
Follow the setup instructions in the [README.md](README.md) to get the project running locally.
### Making Changes
- Create a named branch for your changes (`git checkout -b my-feature-branch`)
- Make commits of logical units of work; no half-done work.
- Use a descriptive commit message.
```sh
git commit -m "Adds feature X"
```
### Building and Testing
After making changes, ensure your code runs successfully with
```bash
docker compose --env-file opensilex.env build --build-arg UID=$(id -u) --build-arg GID=$(id -g)
docker compose --env-file opensilex.env up start_opensilex_stack -d
```
and passes any existing tests.
## Submitting Changes
Open a Merge Request with a clear `title` and `description`. Explain what you did and why.
## Our Standards
- **Have fun!** 🎉
```
Remember, the goal of the project is to make it easy for anyone to contribute. Let's keep things friendly and professional!
---
Feel free to modify this template to fit your project's specifics, such as specific setup instructions, testing frameworks, or additional guidelines you'd like contributors to follow.
---
## Additional Notes
Contributions are what make open-source projects thrive. Thank you for being interested in contributing to opensilex-docker-compose!
## Guide to Contributing
To contribute to opensilex-docker-compose, follow these steps:
### Step 1: Fork the Project
Fork this repository to your GitLab account.
### Step 2: Clone the Repository
Clone your forked repository to your local machine:
```sh
git clone https://forgemia.inra.fr/OpenSILEX/opensilex-docker-compose.git
cd opensilex-docker-compose
```
### Step 3: Make Changes
Make your changes in a new git branch:
```sh
git checkout -b my-feature-branch
```
### Step 4: Build and Test Locally
Ensure your changes don't break the build. If there are tests, run them:
```bash
docker compose --env-file opensilex.env build --build-arg UID=$(id -u) --build-arg GID=$(id -g)
```
### Step 5: Commit Changes
Commit your changes:
```sh
git commit -m "Your detailed description of your changes."
```
### Step 6: Push Changes
Push your changes to GitLab:
```sh
git push origin my-feature-branch
```
### Step 7: Open a Merge Request
Create a merge request against the main branch.
### Our Standards
- **Do not** rebase your branch off `main`.
- **Include screenshots of the UI and save them in the GitLab repository.
### Additional Resources
- Docker Documentation
- Docker Best Practices
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment