Skip to content

Commit f6f0894

Browse files
authored
Update README.md
1 parent 132764d commit f6f0894

File tree

1 file changed

+83
-0
lines changed

1 file changed

+83
-0
lines changed

README.md

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,89 @@ ansible-argument-spec-generator --validate-only
265265
ansible-argument-spec-generator -vvv --role myrole
266266
```
267267

268+
## Contributing
269+
270+
We welcome contributions! Here's how you can help improve the Ansible Argument Specs Generator:
271+
272+
### Development Setup
273+
274+
1. **Clone the repository:**
275+
```bash
276+
git clone https://github.com/djdanielsson/ansible_arg_spec_generator.git
277+
cd ansible_arg_spec_generator
278+
```
279+
280+
2. **Set up development environment:**
281+
```bash
282+
# Install Python 3.8+
283+
python -m venv venv
284+
source venv/bin/activate # On Windows: venv\Scripts\activate
285+
pip install -e ".[dev]"
286+
```
287+
288+
3. **Run tests:**
289+
```bash
290+
# Run all tests
291+
pytest
292+
293+
# Run with coverage
294+
pytest --cov=generate_argument_specs --cov-report=html
295+
296+
# Run specific test categories
297+
pytest -k "test_basic"
298+
```
299+
300+
4. **Code formatting:**
301+
```bash
302+
# Format code with Black
303+
black .
304+
305+
# Check formatting
306+
black --check .
307+
```
308+
309+
### Development Guidelines
310+
311+
- **Code Style:** Follow PEP 8 guidelines
312+
- **Formatting:** Use Black for consistent formatting
313+
- **Testing:** Write tests for new features and bug fixes
314+
- **Documentation:** Update README and docstrings for changes
315+
- **Commits:** Use clear, descriptive commit messages
316+
317+
### Testing
318+
319+
The project includes comprehensive tests covering:
320+
- Core functionality
321+
- Edge cases
322+
- Integration tests
323+
- CI/CD workflows
324+
325+
Run the full test suite:
326+
```bash
327+
pytest tests/ -v
328+
```
329+
330+
### Pull Requests
331+
332+
1. Fork the repository
333+
2. Create a feature branch: `git checkout -b feature/your-feature`
334+
3. Make your changes and add tests
335+
4. Ensure all tests pass: `pytest`
336+
5. Format code: `black .`
337+
6. Commit your changes: `git commit -m "Add your feature"`
338+
7. Push to your fork: `git push origin feature/your-feature`
339+
8. Create a Pull Request
340+
341+
### Bug Reports and Feature Requests
342+
343+
- **Bug Reports:** Use GitHub Issues with detailed reproduction steps
344+
- **Feature Requests:** Describe the proposed feature and its use case
345+
- **Questions:** Check existing issues or create a discussion
346+
347+
### Code of Conduct
348+
349+
This project follows a code of conduct to ensure a welcoming environment for all contributors.
350+
268351
## License
269352

270353
MIT

0 commit comments

Comments
 (0)