You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
OpenStack MCP Server is a project that integrates various OpenStack functionalities with the Model Context Protocol (MCP), enabling LLM-powered management of OpenStack resources.
9
+
10
+
How to Contribute
11
+
=================
12
+
13
+
First, thank you for reading this document to contribute to our OpenStack MCP Server project. The following content explains the guidelines for contributing to our project, how to set up the development environment, and coding style guidelines.
14
+
15
+
PR Guidelines
16
+
=============
17
+
18
+
Issue Report
19
+
------------
20
+
21
+
Before submitting code for new features (and this also applies to some complex bug fixes), please first raise a **Feature request** or **Bug report**.
22
+
23
+
Review Process
24
+
--------------
25
+
26
+
- This project currently uses main and develop branches as the base. PRs to the main branch are restricted to the develop branch.
27
+
- All patches must be first merged into the develop branch and require approval from at least 2 code reviewers to be merged into develop.
28
+
29
+
Commit Message
30
+
--------------
31
+
32
+
We use the `Conventional Commits <https://www.conventionalcommits.org/en/v1.0.0/>`_ convention for writing commit messages.
33
+
34
+
Format::
35
+
36
+
<type>[optional scope]: <description>
37
+
[optional body]
38
+
[optional footer(s)]
39
+
40
+
**Example**::
41
+
42
+
feat(nova): implement server management tools
43
+
44
+
Add Nova server listing and detail retrieval functionality
45
+
for MCP clients with proper error handling and OpenStack SDK integration.
46
+
47
+
- Add get_nova_servers tool
48
+
- Add get_server_details tool
49
+
- Implement server status filtering
50
+
- Add comprehensive error handling
51
+
52
+
Closes #123
53
+
54
+
Development Environment
55
+
=======================
56
+
57
+
The following content is a guide for contributors to set up a development environment in their local environment.
58
+
59
+
Prerequisites
60
+
=============
61
+
62
+
- This project uses uv to manage Python packages. Please set up an environment where you can use uv in your local environment for development environment setup. `Reference <https://docs.astral.sh/uv/getting-started/installation/>`_
63
+
- We use ``python3.10`` as the default version. This is to ensure compatibility with other OpenStack projects.
64
+
65
+
UV Package Build
66
+
----------------
67
+
68
+
.. code-block:: bash
69
+
70
+
uv sync --all-groups
71
+
72
+
Pre-commit
73
+
----------
74
+
75
+
Code style is managed uniformly through ruff. We recommend setting up pre-commit hooks so that auto-formatting is applied at the commit stage.
76
+
77
+
.. code-block:: bash
78
+
79
+
pre-commit install
80
+
81
+
Testing
82
+
=======
83
+
84
+
Unit Tests
85
+
----------
86
+
87
+
All patches related to feature additions must implement unit test code. This project uses Pytest as the testing library, and if the project has been built successfully, you can run tests with the following command:
0 commit comments